DirectX11--教程项目没法编译、运行的解决方法

综述

对于Win10系统的大多数用户来讲,能够直接编译本教程对应的项目并运行。但也有部分用户因为某些缘由可能会出现没法编译的状况。html

DirectX11 With Windows SDK完整目录windows

欢迎加入QQ群: 727623616 能够一块儿探讨DX11,以及有什么问题也能够在这里汇报。api

与当前项目的Windows SDK版本不一致

对于Visual Studio 2017,你能够点击项目-重定解决方案目标,选择你当前拥有的SDK版本便可。数组

若是没有上述选项,你须要全选全部项目,并在项目属性-常规中,将Windows SDK版本改成当前你拥有的SDK版本。函数

存在大量的编译错误

此问题仅针对SDK版本在10.0.162099.0如下,而且是使用VS2017的状况。工具

因为在Visual Studio 2017版本15.5及更高版本所建立的新项目中,新增了编译器的标准符合性模式(/permissive-),而且该选项默认是开启的。该选项用于检测一些非标准C++语言的写法,而且仅支持从10.0.162099.0开始到目前最新版本的Windows SDK。旧版本的Windows SDK在编译时会引起大量的编译错误,须要在项目属性- C/C++ -语言中,将符合模式设为ui

注意: 在低版本的Visual Studio 2017,以及Visual Studio 2015是没有标准符合性模式的设置的,而且默认为debug

具体能够参考 触发-(标准符合性)3d

Debug模式下打开程序出现D3D11CreateDevice Failed

这种状况下Release模式应该仍是能够运行的,如今查看调试输出窗口应该会有以下信息调试

目前已经确认是你电脑的Win10系统没有安装图形工具。首先点击Win-Windows 管理工具-服务

找到服务(本地)中的Windows Update项,若是没有启用,则将它启动。

而后右键Win-设置,搜索:管理可选功能,进去后查看如今可选功能是否包含了图形工具,若没有则添加该功能,安装完成后能够看到:

如今应该能够进行调试了

提示Direct3D Feature Level 11 unsupported

出现这个说明你的显卡不支持特性等级11.0,你能够尝试给特性等级数组添加D3D_FEATURE_LEVEL_10_1D3D_FEATURE_LEVEL_10_0,而后将全部的HLSL编译器使用的着色器模型下调至Shader Model 4.0,还要在全部CreateShaderFromFile函数中下调。

Windows 7系统没法直接运行的解决方法

在编写该项目的时候一开始是只考虑了Win 10 系统,没有考虑向下兼容的,但如今既然要作到兼容(多是部分兼容),还须要在原有的项目基础进行一些额外的配置。

没法定位程序输入点CreateFile2于动态连接库kernel32.dll上

CreateFile2函数仅Windows 8以上的系统支持,该函数在DDSTextureLoader中用到,但咱们能够经过修改_WIN32_WINNT的值来让它使用CreateFileW

在项目属性-C/C++ -预处理器中按下面的方式添加宏:

而后从新编译解决方案/项目便可。

从本教程项目08起都没法看到文字

考虑到不该该只是由于没法看到文字就让程序运行不了,通过修改后,若是你的系统不支持DirectX 11.1,则将不会显示文字。若是你想要在Windows 7系统上看到项目的文字,则须要:

  1. 更新Windows 7系统直到安装了Service Pack 1
  2. 安装KB2670838补丁

缺乏d3dCompiler_47.dll

Windows 7系统一般状况下是缺乏该动态库的,但若是你装了Visual Studio 2015/2017,一般会包含该动态库供使用。为此,你须要从Visual Studio的安装路径中找到运行库对应的版本,如:
Windows SDK 8.1对应C:\Program Files (x86)\Windows Kits\8.1\Redist\D3D,而后再根据x64仍是x86将里面的d3dCompiler_47.dll复制到你的项目,或者C:\Windows\System32中。

缺乏api-ms-win-core-libraryloader-l1-1-0.dll

出现该问题是由于将不合适的d3dCompiler_47.dll拉入到项目或系统环境中,参照上一条进行操做。

DirectX11 With Windows SDK完整目录

欢迎加入QQ群: 727623616 能够一块儿探讨DX11,以及有什么问题也能够在这里汇报。

相关文章
相关标签/搜索