在 OpenGL 中,哪一个会带来更好的性能。改变剔除的面或旋转我的对象?
场景如下:
我计算矩阵以输入我的着色器,这将在某个剔除位置(前)绘制纹理 A。当我从前面看到物体时,我可以看到它,但从后面我看不到,这是我想要的行为。现在我想在后面添加“一些东西”,比如说纹理 B,这样当从后面看到对象时,这个其他纹理将出现在与纹理 A 相同的位置和方向,但现在使用纹理 B。
我认为除了构建一个有 2 个面的立方体之外,我还可以简单地在我之前的对象上“重绘”。如果我要旋转对象,我想我可以假设 OpenGL 不会简单地覆盖纹理 A,因为它不会通过面部剔除测试。这需要一个额外的矩阵乘法来将 mi 对象镜像到它自己的轴上。但是,如果我只是更改剔除属性并尝试绘制它怎么办?从前面传递文本但从后面传递它不会产生相同的效果吗?
这两个选项哪个更好?
(PD:我在 iPhone 上这样做,所以每一点性能都与旧设备非常相关。)
谢谢你。