镶嵌后的三角形数

时间:2016-04-21 14:58:39

标签: graphics directx

我已经实现了几种Level of Detail技术来对它们进行比较。由于其中两个使用曲面细分,我想知道最终渲染网格有多少个三角形。我发现有人为此创建了一个函数,但只有在曲面细分因子不变且完全相同时才会起作用。由于我的实现根据与相机的距离决定了Hull着色器中的因素,因此他的解决方案对我不起作用。

在我看来,如果我知道域着色器运行了多少次,那么我会知道我有多少个三角形?有没有办法计算?或者还有其他方法吗?

(我使用的是DirectX,但我觉得OpenGL的方法大致相同,这就是为什么我有两个标签)

1 个答案:

答案 0 :(得分:0)

我使用D3D11_QUERY_PIPELINE_STATISTICS类型的ID3D11Query解决了它。结构D3D11_QUERY_DATA_PIPELINE_STATISTICS用于结果,它有很多有用的信息,如渲染基元的数量和着色器的调用等。