我写了一个shader,它使用了纹理数组来优化游戏。它是为安卓平台打造的。 在电脑上测试后,效果有了显著的改进,但是在手机上,帧率只有15fps,原本是50-60fps的,具体取决于设备和场景。

在shader代码中,我是通过模型的UV坐标z轴的值获取纹理索引的。目前结果看起来很不错,但帧率却非常不稳定。在这个问题上,我尝试了使用只有一个通道的RGBA纹理,结果只有两张小纹理的图像,游戏顿顿感很强。但是当我在常规的灯具shader上为物体着色时,游戏的帧率恢复正常。帧率还是很低,并且与或不用这些纹理都没什么两样。