是否有 iOS 硬件(当前和过去)列表以及 OpenGL ES 2.0 应用程序中可用纹理采样器的数量?我对立方体贴图采样器的数量特别感兴趣(有区别吗?)。
我知道我可以在运行时确定它,但我手头没有每台设备。
最佳答案
不,真的,有 OpenGL ES chapter in Apple's iOS Device Compatibility Reference 。
它列出了最新几个主要 iOS 版本支持的设备的大多数有趣的功能限制,包括纹理单元的数量(MAX_TEXTURE_IMAGE_UNITS
、MAX_COMBINED_TEXTURE_IMAGE_UNITS
或 MAX_VERTEX_TEXTURE_IMAGE_UNITS
取决于您想要如何使用它们)。请注意,此数字可能会根据您使用的 EAGLContext
API 版本而变化。
立方体贴图使用单个纹理单元,一个纹理单元对应一个 GLSL sampler2D
或 samplerCube
,因此单元的数量就是采样器的数量。
使用Device Compatibility Reference帮助规划你的渲染器设计,但永远不要对应用程序中特定设备的假设进行硬编码 - 否则你会被 iOS 设备 future 的幽灵所困扰。如果您需要根据设备功能改变应用的行为,您仍然应该在运行时测试这些功能。
关于ios - iOS 硬件上的(立方体贴图)纹理采样器数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20308230/