我试图仅使用一个图形上下文在 DirectX 12 上渲染多个模型,但结果非常奇怪,我不太清楚是什么原因。sponza 模型从外部渲染结果,右边是正确的结果,左边是有问题的。
即使加载的两个网格是相同的,每个模型都有自己的顶点缓冲区、索引缓冲区和 SRV。在创建图形上下文的过程中,只有一个图形上下文,并设置了每个模型的索引和顶点缓冲区,然后我调用drawIndexed()函数进行渲染。创建图形上下文后,我们每帧执行一次图形上下文。但是,如果我们为每个模型创建单独的图形上下文并每帧执行所有图形上下文,则渲染效果很好,但帧速率下降了很多。
提供有关导致奇怪结果的原因的任何提示将对您非常有帮助,或者提供更好的解决方案。非常感谢您。