目录
主要参考的 Frank Luna 的官方解释 ,附加一些自己的整理
官方文档
Direct3D 11 Book Demos with Windows 10 and Visual Studio 2015
中文的也有如何使用VS2015编译运行DX11版本龙书配套源码
还有一些很有用的
https://blogs.msdn.microsoft.com/chuckw/2012/05/07/hlsl-fxc-and-d3dcompile/ (hisl fx d3dcomile)
https://blogs.msdn.microsoft.com/chuckw/2013/08/20/living-without-d3dx/ (d3dx到 d3d 的对应)
https://alexjadczak.wordpress.com/2014/10/21/directx-and-the-windows-8-0-sdk-part-3/
整理
- 按照官方文档,整理好Common文件夹
主要是这几个标出来的代码文件和lib要按照文档中给出的方式添加到Common文件夹中
- 按照文档中的方式
添加头文件引用
添加库引用
删除不需要的lib依赖,主要删除dxdx11.lib和dxerr.lib,注意保留dxd11.lib
Common中记得把一开始新加进来的源码文件 都add 进来,不然会报unresolved extension symbol 错误,link不成功
之后可能会报一些错需要用到的链接
directx 11学习笔记 介绍章Box Demo在VS2015的问题
Tips:
VS2015 调试shader
最重要的,D3DX11CompileFromFile 已经deprecated,换成
HRESULT hr = /*D3DX11CompileFromFile*/D3DCompileFromFile(L"FX/color.fx", 0, 0, 0, "fx_5_0", shaderFlags,
0, &compiledShader, &compilationMsgs);
注意第六个参数,第六个参数都是 D3DCOMPILE_ENABLE_STRICTNESS | D3DCOMPILE_DEBUG | D3DCOMPILE_SKIP_OPTIMIZATION,这里千万不能忘记 D3DCOMPILE_DEBUG,否则后面调试Shader,会出现错误,无法找到可用源。
主要参考:
关于VS2015调试DX11的HLSL着色器代码的方法与步骤(基本流程)
D3D11之HLSL常见问题和调试方法总结(提到了FX文件如果编译不了,如何设置hlsl编译器配置)
https://blog.youkuaiyun.com/qq_29523119/article/details/53614721(提到了参数设置)