【问题标题】:What components are included in DirectX?DirectX 中包含哪些组件?
【发布时间】:2014-04-29 09:55:06
【问题描述】:

对于哪些组件属于 DirectX,哪些组件已弃用或属于哪些版本,存在不同的想法。
我找不到任何明确显示的站点,而 Microsoft 站点也无济于事。我找到的最准确的答案是:

DirectX 版本号,如 9.0c,仅指核心组件的版本,如 Direct3D、DirectInput 或 DirectSound。此数字不包括 DirectX SDK 中发布的各种可选组件的版本,例如 D3DX、XACT、XINPUT 等。

(http://msdn.microsoft.com/en-us/library/windows/desktop/ee416805(v=vs.85).aspx)

但似乎它们只是命名示例,并且 DirectX SDK 不存在用于较新的 DirectX。

所以我的问题是:什么组件(包括所有可选/非可选组件)包含在哪个 DirectX 版本中?我对 DirectX 11.0 特别感兴趣。

【问题讨论】:

  • 你能说得更具体点吗?这是从开发人员的角度还是最终用户的角度?换句话说,您的问题是“如果客户的机器有 DX11,他们有什么保证?”还是“针对 DX11 的 SDK 中包含哪些开发库和组件?”
  • @MooseBoys 属于 DirectX 的每个组件(更像是开发者视角)

标签: directx


【解决方案1】:

您可能会发现这个blog post 信息丰富...

基本上,从 Windows XP SP2 开始,“DirectX”的部分内容与操作系统融合在一起,随着时间的推移,这些组件已被更新和/或弃用,或者只是“按原样”继续用于 appcompat。人们认为“DirectX”的其他东西实际上只是旧版 Direct SDK 中附带的可选库或 DLL(参见“Not So Direct Setup”)。

“DirectX 11.0”本质上是 Windows 7 中附带的内容,其中大部分内容还通过 Windows Update 作为更新在 Windows Vista 上提供。

更新:“DirectX 11.0”是 Direct3D 11.0、Direct2D/DirectWrite 1.0 和 DXGI 1.1。

DirectSound7 及以下、DirectInput7 及以下、DirectPlay、DirectDraw、Direct3D 8 及以下、托管 DirectX 1.1、DirectAnimation 和 DirectMusic 性能层已弃用。 DirectPlay 是 Windows 8.1 中的一项可选功能,默认情况下处于禁用状态。从 Windows Vista 开始,从操作系统中删除了 Direct3D 保留模式、DirectPlay 语音和 DirectX VB 6.0 支持,并且根本不可用。编写 Win32 桌面应用程序的专业音频开发人员(主要用于 MIDI)仍支持 DirectMusic“核心”API。视频编辑 Win32 桌面应用程序支持 DirectShow,但其他情况下建议使用 Media Foundation。

对于 Windows 应用商店应用和 Windows Phone 应用,不支持 DirectInput、DirectSound、XINPUT 1.3 及更低版本、Direct3D 10 及更低版本、D3DX、XACT 和 DirectMusic "Core"。这些应用程序支持 Direct3D 11.1、DXGI 1.2 和 Direct2D 1.1 或更高版本、XInput 1.4 和 XAudio 2.8。

【讨论】:

  • 您的链接显示组件,谢谢:)。如果链接出现问题,您能否将信息添加到您的答案中(对于 DX 11.0)?
【解决方案2】:

来自wikipedia

Microsoft 鼓励使用这些 DirectX 组件:

  • Direct3D (D3D):用于绘制 3D 图形。 DXGI:用于枚举适配器和监视器以及管理 Direct3D 10 及更高版本的交换链。
  • Direct2D:用于 2D 图形。
  • DirectWrite:用于字体。
  • DirectCompute:用于 GPU 计算。
  • DirectSound3D (DS3D):用于播放 3D 声音。
  • DirectX 媒体:包括用于 2D/3D[39] 网络动画的 DirectAnimation、用于多媒体播放和流媒体的 DirectShow、用于网络交互的 DirectX 转换,以及 - 用于更高级别 3D 图形的 Direct3D 保留模式。 DirectShow 包含用于音频信号处理的 DirectX 插件和用于加速视频播放的 DirectX 视频加速。 DirectX 诊断 (DxDiag):一种工具,用于诊断与 DirectX 相关的组件(例如音频、视频和输入驱动程序)并生成报告。
  • DirectX 媒体对象:支持编码器、解码器和效果等流媒体对象。
  • DirectSetup:用于安装 DirectX 组件,以及检测当前 DirectX 版本。

Microsoft 已弃用但仍支持这些 DirectX 组件:

  • DirectDraw:用于绘制 2D 图形(光栅图形)。已弃用,取而代之的是 Direct2D,但仍被许多游戏用作媒体应用程序中的视频渲染器。
  • DirectInput:用于连接输入设备,包括键盘、鼠标、游戏杆或其他游戏控制器。在版本 8 之后弃用,支持用于 Xbox 360 控制器的 XInput 或用于键盘和鼠标输入的标准 WM_INPUT 窗口消息处理。
  • DirectPlay:用于通过局域网或广域网进行通信。在版本 8 之后弃用,支持 Windows Live 和 Xbox Live 游戏。
  • DirectSound:用于播放和录制波形声音。已弃用以支持当前的音频库,包括 XAudio2(低级音频库)和 XACT3(高级音频 API)。
  • DirectMusic:用于播放在 DirectMusic Producer 中创作的音轨。自 DirectX 8 起已弃用,支持 XAudio2 和 XACT3。 DirectX 功能以 COM 样式对象和接口的形式提供。此外,虽然不是 DirectX 组件本身,但托管对象已构建在 DirectX 的某些部分之上,例如托管 Direct3D[40] 和 Direct3D 9 之上的 XNA 图形库[41]。

【讨论】:

  • DirectX Media 似乎也已弃用,没有 XInput,XAudio2 仅在已弃用的 DirectSound 的描述中 - 所以维基百科信息不完整。我害怕使用这个来源:/
  • 这只是一个概述,你需要这个做什么?
  • 为学生研究项目比较不同版本的 DirectX 和其他技术。在最坏的情况下,我可以使用 wiki 文章,但我更喜欢更准确的解决方案。
猜你喜欢
  • 1970-01-01
  • 2021-07-06
  • 2012-06-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多