iPad 2的GPU的性能的方式比iPad 1,我想在我的应用程序切换,并添加一些额外的漂亮的图形微妙的,当我知道了GPU可以处理的更好.
因此,我希望能够检测到iPad 1和2(及更高版本)之间的区别,理想情况下尽可能使用能力检测.有很多不相关的东西我可以打开(相机的存在等),但理想情况下我想找到一些东西,也许是OpenGL功能,可以更直接地区分GPU.
这个Apple页面没有列出对iPad 1 vs 2有用的任何内容,本文 讨论了基准测试和GPU拱形差异,但没有指出任何看起来像我可以直接查询的东西(例如纹理单元的数量或其他).
任何人都对如何做到这一点有任何想法,或者我错过了一些明显的东西?谢谢.
Bra*_*son 10
您可以查询的一个区别是最大纹理大小.在iPad 2和iPhone 4S上,最大纹理尺寸是4096 x 4096,在所有其他iOS设备上它是2048 x 2048.在我看来,一个安全的假设是,未来更强大的iOS设备也将具有最大纹理尺寸至少这么大.
要查询最大纹理大小,首先创建OpenGL ES上下文,然后将其设置为当前上下文并运行以下查询:
GLint maxTextureSize;
glGetIntegerv(GL_MAX_TEXTURE_SIZE, &maxTextureSize);
Run Code Online (Sandbox Code Playgroud)
在我的iPhone 4上,这将在maxTextureSize中返回2048,但在我的iPad 2和iPhone 4S上,这将返回4096的值.
您还可以测试iPad 2支持的一些新扩展的存在,例如EXT_shadow_samplers(更多内容记录在" iOS中的新功能:iOS 5.0 "中),但这些测试仅适用于iOS 5.0.仍然在iOS 4.x上的Stragglers将没有这些功能注册.
| 归档时间: |
|
| 查看次数: |
2180 次 |
| 最近记录: |