我是 GLSL 的新手,正在编写一个小型应用程序,该应用程序将显示 3d 模型并具有一些用户输入来旋转、缩放等。模型相当大(例如 600 万个顶点,1500 万个面)。现在,我正在使用逐顶点着色,并且在我的个人电脑上性能还可以。但我可能需要使用更大的模型(有 10-1500 万个顶点)。
我的问题与每个顶点和每个片段着色之间的性能比较有关。从大量资源以及搜索网络中,我得出结论,每个片段着色具有更好的输出,尤其是对于镜面高光,但是它的性能较低,因为它对多边形的每个像素而不是每个顶点进行计算(与每个顶点着色一样)。
也许我的想法完全错误,但是如果顶点数很大,我是否应该期望每个片段着色运行得更快,例如在我的情况下(6-10 百万个顶点)?每个片段着色的性能是否取决于被绘制到屏幕上的像素数,而每个顶点着色则不是?