下面是帮助你开始使用 DirectX 和 C++开发图形密集型桌面应用(如游戏)的关键资源。 这不是所有功能或可用资源的综合列表。
入门
下面是一些关键主题。 设置 DirectX 项目、自行适应 Windows 和示例应用程序。
主题 |
描述 |
使用 DirectX 创建第一个 Windows 应用 |
使用此基本教程开始使用 DirectX 应用开发,然后使用路线图继续探索 DirectX。 |
DirectX for Windows 入门 |
查看开始使用 DirectX 和C++开发游戏所要采取的步骤。 |
DirectX 框架 的完整代码 |
获取基本 DirectX 呈现框架的代码。 |
如何使用 Direct3D 11 |
本部分演示如何使用 Microsoft Direct3D 11 API 完成多个常见任务。 |
Direct3D 11 编程指南 |
编程指南包含有关如何使用 Microsoft Direct3D 11 可编程管道为桌面应用程序创建实时 3D 图形的信息。 |
适用于 DirectX 图形 的 工具 |
用于支持 DirectX 开发的工具的文档。 |
Direct3D 11 中的新增功能 |
DirectX 和 Direct3D 最新版本(当前为 11.2)中添加的所有功能的细分。 |
下载 Visual Studio 2013 |
必须具有 Visual Studio Express 2013 for Windows Desktop 才能创建 Windows 应用商店游戏。 有关 Visual Studio 的教程,请参阅 使用 Visual Studio 2012开发 Windows 应用商店应用。 有关 Visual Studio 中的新功能的信息,请参阅 visual Studio 2013 产品亮点。 |
DirectX SDK 在哪里? |
包含有关希望将其 DirectX 项目引入 Microsoft Visual Studio 的开发人员指南。 |
示例应用程序
查看关键 Direct3D 11 概念
主题 |
描述 |
图形管道 |
涵盖基本的 Direct3D 11 图形管道。 |
呈现 |
涵盖 Direct3D 呈现模型、组件、着色器和 API 调用流。 |
资源 |
涵盖 Direct3D“资源”,例如缓冲区和其他 GPU 资源类型。 |
效果 |
涵盖 Direct3D 多着色器实例化和效果。 |
如何:创建交换链 |
如何创建用于将像素绘制到屏幕区域的交换链。 |
如何:创建设备和即时上下文 |
如何创建 Direct3D 设备抽象和用于绘图的即时上下文。 |
如何:创建顶点缓冲区 |
如何创建由 GPU 处理的网格顶点的简单列表。 |
如何:创建索引缓冲区 |
如何创建索引缓冲区,使顶点着色器能够走网格中顶点的顺序。 |
如何:创建常量缓冲区 |
如何在呈现期间在 CPU 和 GPU 之间传递常量(统一)数据。 |
如何:创建纹理 |
如何创建可由 GPU 采样的纹理或其他缓冲区资源。 |
如何:从文件 初始化纹理 |
如何从文件加载纹理并处理它以供着色器管道使用。 |
如何:编译着色器 |
如何编译用于图形应用程序的着色器。 |
图形 API
到 DirectX 11 的端口
主题 |
描述 |
迁移到 Direct3D 11 |
将 DirectX 9 代码库移动到 DirectX 11 的基本指南。 |
游戏 的双重使用编码技术 |
有关在单个应用程序中针对 DirectX 9_* 和 DirectX 11_* 功能级别进行开发的详细博客文章。 |
实现 Direct3D 功能级别 9 的阴影缓冲区 |
有关在 DirectX 功能级别 9_*下实现阴影映射的指导。 |
使用 C++
如果你是 Windows 平台上C++的旧手,则情况可能略有不同。 下面是一些指向主题的指针,可帮助你获取有关差异的句柄。
注意
其中一些主题有助于维护C++/CX 应用程序。 但建议对新应用程序使用 C++/WinRT。 C++/WinRT 是 Windows 运行时 (WinRT) API 的完全标准的现代C++17 语言投影,作为基于标头文件的库实现,旨在为你提供对新式 Windows API 的一流访问。
适用于 Windows C++编程的其他有用库
主题 |
描述 |
标准模板库 C++ |
Windows 运行时类型适用于标准模板库类型。 大多数C++ Windows 应用商店应用使用标准模板库集合和算法,但 ABI 边界除外。 |
并行模式库 |
PPL 提供简化 CPU 上任务并行度和数据并行的算法和类型。 |
C++加速大规模并行度(C++ AMP) |
C++ AMP 提供对支持 DirectX 11 的视频卡上的常规用途数据并行访问 GPU。 |
博客和其他资源