学习龙书11(Introduction to 3D Game Programming with DirectX 11)的时候,环境选择有两个:
1 使用VS2010和DXSDK2010 June的版本。
这样做的好处是和书中一样的环境,基本不用改什么东西。
2 使用vs2010之后的版本以及使用Windows 8.x SDK,这样做有很多改动,具体可以参照如下网站:
https://alexjadczak.wordpress.com/2014/05/18/updating-directx-11-to-windows-8-0-sdk/
https://alexjadczak.wordpress.com/2014/05/26/directx-and-the-windows-8-0-sdk-part-2/
里面有很详细的介绍,因为在Windows8.x SDK里面已经集成了DXSDK的很多功能,以后也是种趋势。
因此如果时间充裕,可以考虑脱离以前的DX框架。无法使用CreateTexture,但是会有代替的函数,
特别注意!!!!千万不要用VS2010以后的版本混合DXSDK2010 June使用,会有很多坑让你踩。当然啦,你有时间可以去踩踩,也方便交流。
坑1:需要使用新的VS版本编译出来的Effects11.lib,这个可以在网上搜索就好。
坑2:无尽的warning,因为有很多宏的重定义,对于有强迫症的人来说不能忍(比如我)
坑3:传统LIB的问题,因为书中使用了DXTrace这个函数,此函数已经被弃用,混合使用的话,需要在Link->Input里面加入legacy_stdio_definitions.lib
暂时发现这么多,因为刚开始学习,碰到坑会影响心情的。所以尽量不要混合使用啊!