可能开发iphone的同学不多,但里面讲到的一些优化思路同样也能适用于pc开发,大家可以借鉴。本人翻译水平有限,欢迎指正呵呵!


Unity iPhone开发入门 (一)

为iPhone开发
为iPhone这样的硬件设备开发游戏,需要一种不同的方法(相对家用PC市场)。该设备的硬件标准,不是快速或强大的计算机专用的视频卡。正因为如此,您得以新的思路去开发游戏。Unity的iPhone版本将有一些不同的功能。



遮挡筛选

Unity iPhone包含支持遮挡筛选,这能完美的挤压高性能对于复杂场景和太多的物体。若要了解更多关于如何遮挡筛选工作,请访问遮挡筛选功能页面。


. Net 1.1中(没有泛型)

Unity 的iPhone目前只支援 .Net 1.1。这意味着没有泛型或其他的.NET 2.0的高级功能。当您启动现有的项目,使用泛型,将收到编译错误。您不得使用泛型或其他 .NET 2.0功能。


强制类型的JavaScript
Unity iPhone的JavaScript中动态变量是不可用的。这类似增加#pragma到您的脚本,但是它是默认的。这将极大地提高性能在iPhone上。当您启动一个现有的Unity项目,其中使用了动态类型,您会收到编译错误。您可以轻松地解决这些动态类型问题,依靠给你的错误提示或利用类型推理。


地形引擎

地形引擎不支持苹果的iPhone 。地形引擎是建立与运行在现代的PC GPU上,不能缩水到iPhone上面
。使用自订的低多边形和遮挡筛选是建立地形在iPhone上的最佳方法。


没有OggVorbis音频解压缩

Ogg动态解算的代价是很昂贵的对于iPhone的处理器,所以被禁用鸟。当编译iPhone程序时
,您将收到编译错误如果您有任何项目的音频文件设置为使用OggVorbis压缩。你可以在置入设置中选择使用这些文件的非压缩音频方式。背景音乐可以使用MP3或m4a压缩音频文件。谘询文件AudioClip更多信息使用的音频压缩在iPhone 中。


PVRTC不支持DXT纹理压缩

Unity iPhone不支持DXT纹理。置入设置中,选择PVRTC纹理压缩这是iPhone上原生支持的方式。它可以压缩纹理,减少内存占用和程序打包体积。(貌似这个显示加速芯片跟当年的DC类似,都是一个公司出的)。