Opengl es OpenGL ES中虚拟纹理与纹理表的效率比较

Opengl es OpenGL ES中虚拟纹理与纹理表的效率比较,opengl-es,performance,textures,Opengl Es,Performance,Textures,一般认为,使用一个大纹理“图像”包含许多小纹理(想想字体表)比将每个纹理分开要快。性能的改善有多大?它会明显更快还是会有轻微的改善 它会明显更快还是会有轻微的改善 这取决于您使用的纹理数量。如果纹理很少,可以使用单独的纹理。如果您正在创建一个包含许多纹理(确实很多)的大世界,那么atlas纹理是一个合适的解决方案 这一切都是因为OpenGL是一个状态机,而状态机上的每一次更改都要付出代价。执行许多glBindTexture()调用代价高昂,因此只需将其与您拥有的纹理数量进行比较即可

一般认为,使用一个大纹理“图像”包含许多小纹理(想想字体表)比将每个纹理分开要快。性能的改善有多大?它会明显更快还是会有轻微的改善

它会明显更快还是会有轻微的改善

这取决于您使用的纹理数量。如果纹理很少,可以使用单独的纹理。如果您正在创建一个包含许多纹理(确实很多)的大世界,那么atlas纹理是一个合适的解决方案

这一切都是因为OpenGL是一个状态机,而状态机上的每一次更改都要付出代价。执行许多
glBindTexture()
调用代价高昂,因此只需将其与您拥有的纹理数量进行比较即可