HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了响应iOS中的RAM可用性大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个质感很重的OpenGL游戏,我想根据设备有多少RAM调整.最高分辨率纹理我可以在iPhone 4或iPad2上正常工作,但较早的设备在加载纹理时会崩溃.我有这些纹理的低分辨率版本,但我需要知道什么时候使用它们.

我目前的策略是检测特定的旧设备(3GS具有低分辨率屏幕; iPad没有摄像头),然后仅加载IPad2及以上版本以及iPhone 4及更高版本的高分辨率纹理 – 我想我需要为iPod touch做点事情但是,我非常喜欢使用功能检测,而不是硬编码设备型号,因为型号检测对于未来对API和硬件的更改是脆弱的.

我正在虑的另一种可能性是首先加载高分辨率纹理,然后在我获得低内存警告的那一刻放弃并替换它们.不过,我不知道我会有机会回应;我已经注意到,在调试控制台上出现任何通知之前,应用程序通常会死机.

如何检测我正在运行的设备是否没有足够的RAM来加载我的纹理的高分辨率版本?

退后一步,还有其他一些适用于OpenGL纹理内存的自适应技术吗?

笔记:

>我已经搜索了SO和有关可用RAM检测的答案,但它们基本上都建议使用内存使用情况,并消除浪费(最小化临时的生命周期以及所有这些).我已经尽可能多地完成了,我没有办法将高分辨率纹理压缩到旧设备中.
> PVRTC不是一个选项.纹理包含要由片段着色器使用的数据,并且必须以无损格式存储.

解决方法

获取设备的总(最大)物理RAM,请使用[NSProcessInfo processInfo] .physicalMemory.

Documentation.

大佬总结

以上是大佬教程为你收集整理的响应iOS中的RAM可用性全部内容,希望文章能够帮你解决响应iOS中的RAM可用性所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。