DirectX/10.0/Direct3D/设置 DirectX
在编写任何图形代码之前,我们需要拥有相应的工具。第一个工具是一个编译器,它最好集成在一个友好的 IDE 中。我使用的是 Visual Studio 2010,并且将提供相应的项目文件。网上还有其他几个可用的编译器,其中一些甚至可以免费获取。你可以根据自己的喜好选择合适的编译器。
您需要的第二个工具是 DirectX SDK。它可以从微软网站免费下载。下载并安装 SDK 后,您将拥有编译 DirectX 程序所需的必要文件。您还会注意到它附带了示例、工具和文档。文档非常好,它还包含一些非常简单的示例,位于 DirectX 10 教程部分,这些教程也适用于 DirectX 11。附带的工具也很有用,我们将会经常使用 DDS 纹理工具。示例浏览器还提供了一些简单的示例,以实现您可能想要实现的某些效果。示例通常也会演示最新 SDK 的一些新功能。
安装完这两个工具后,您就可以设置您的 IDE 来使用 DirectX 11 SDK。请注意,一些 IDE 需要先安装才能安装 DirectX SDK。
首先,您需要创建一个空的 Win32 项目,因此选择文件 -> 新建 -> 项目。然后从选项中选择 Win32 项目。为项目命名(我命名为 Engine)并指定一个位置,然后单击“确定”。单击“下一步”,您将看到另一个菜单。在“附加选项”下,选中“空项目”框并单击“完成”,然后单击“下一步”。现在您应该已经设置了一个基本的空的 Win32 项目。
现在从菜单中单击“视图”,然后选择“属性管理器”。
接下来,单击屏幕左侧属性管理器窗口中项目名称左侧的箭头。这将显示您拥有的解决方案配置。
选择“调试 | Win32”文件夹,然后双击“Microsoft.Cpp.Win32.user”。
在弹出的窗口中,从左侧菜单中选择“VC++ 目录”。这将显示项目使用的目录。现在从目录列表中选择“包含目录”,然后单击左侧出现的向下箭头。从弹出的选项中选择“编辑”。
单击顶部的文件夹图标(如果您将鼠标悬停在它上面,则称为新行),然后单击右侧出现的“...”。
导航到 DirectX SDK 包含文件夹,不同版本具有不同的名称,但在我的系统中,它是:C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include
接下来,单击“选择文件夹”,然后单击“确定”。
库目录也是必需的,因此现在从目录列表中选择“库目录”,然后单击左侧出现的向下箭头。从弹出的选项中选择“编辑”。
单击顶部的文件夹图标(如果您将鼠标悬停在它上面,则称为新行),然后单击右侧出现的“...”。
导航到 DirectX SDK 库文件夹,不同版本具有不同的名称,但在我的系统中,它是:C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86
接下来,单击“选择文件夹”,然后单击“确定”。
最后,单击“属性页”窗口右下角的“应用”按钮。
现在单击“确定”关闭窗口,您的设置将完成。从菜单中单击“视图”,然后单击“解决方案资源管理器”返回您的代码。现在所有 DirectX 项目都应该能够正常编译,并且“无法打开包含文件: 'd3d11.h': 没有此类文件或目录”的错误应该消失。还要注意,这些设置将自动应用于“发布 | Win32”解决方案配置,因此您无需在其中设置它们。同样,它应该对所有新项目永久有效,并且永远不需要再次设置。
从菜单中单击“工具”。
从列表底部选择“选项”。
从左侧列表中单击“项目和解决方案”。
从展开的列表中单击“VC++ 目录”。
在右侧的“显示目录”下,选择下拉选择“包含文件”。
现在将包含目录的位置添加到列表顶部。在我的设置中,它是以下内容,但可能与您的设置不同(发布的月份等),请务必仔细检查。
C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include
添加完包含目录后,您还需要添加库目录。在右侧的“显示目录”下,选择下拉选择“库文件”。
在我的设置中,它是以下内容,但可能与您的设置不同(发布的月份等),请务必仔细检查。
C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86
在 Visual Studio 中设置了这两个目录后,您现在应该能够编译 DirectX 11 代码而不会出现任何问题。