DirectX 11渲染对象从里到外

时间:2017-09-08 08:56:25

标签: c++ directx hlsl

我有很多努力想要遵循Frank Luna的DirectX 11 3D编程书,我目前正在阅读第7章第2节。我已经导入了Skull模型文件,我已经开始渲染它了。奇怪的是,当我渲染它时,它似乎是在正面朝上渲染背面。我很确定这就是正在发生的事情。但我提出这个问题是为了帮助和指导我可能出错的地方。我会编辑这篇文章,包含我的代码,如果需要帮我弄清楚我哪里出错了,非常感谢! (照片附后)

Photo - Facing the Skull, Slightly to the Left

Photo - Above the Skull, Facing Downwards

编辑:我在我的代码中为第一个绘制调用循环后设置了一个断点,并且它没有显示前面那些后面的任何面,所以在这个框架上解决了问题,但是当我继续下一帧时,这是问题开始的时候。

2 个答案:

答案 0 :(得分:0)

这些问题有时与CullModeD3D11_RASTERIZER_DESC的设置有关。尝试从D3D11_CULL_BACK更改为D3D11_CULL_FRONT,反之亦然。另请查看FrontCounterClockwise的{​​{1}}选项。

答案 1 :(得分:0)

我弄清楚是什么导致了我的悲伤。我一直在使用DirectXToolKits SpriteFont和SpriteBatch类来使用DrawString函数在屏幕的左上角显示一个FPS计数器,它一定是乱搞ID3D11DeviceContext :: DrawIndexed调用。谢谢你的所有投入和头脑风暴!!