文章分类 - Unity
摘要:在屏幕上渲染物体,引擎需要发出一个绘制调用来访问图形API(iOS系统中为OpenGL ES)。每个绘制调用需要进行大量的工作来访问图形API,从而导致了CPU方面显著的性能开销。 Unity在运行时可以将一些物体进行合并,从而用一个绘制调用来渲染他们。这一操作,我们称之为“批处理”。一般来说...
阅读全文
posted @ 2014-04-22 14:16
Game Developer
摘要:优化的常规技巧1、剖析你的游戏。不要花费时间来优化那些晦涩的代码或者缩减图形文件的大小,除非这是你游戏的瓶颈。第一次剖析你的游戏将会使你发现你游戏的瓶颈。Apple's Shark是一个很好的用来剖析基于OpenGL的程序的工具。2、再次剖析你的游戏。优化之后不要忘记再剖析一次你的游戏,这样可以检查...
阅读全文
posted @ 2014-04-22 14:06
Game Developer
摘要:最近研究U3D开发,个人认为,精通一种新的技术,最快最好的方法就是看它的document,而且个人习惯不喜欢看中文的资料,原汁原味的东西是最正确的,一翻译过来很多东西就都不那么准确了。于是通读了unity的官方manuel,最后面几章都是精华,里面给了非常非常多的官方的优化建议,尤其是做移动平台的开...
阅读全文
posted @ 2014-04-22 11:36
Game Developer
摘要:总体来说:合并,合并,合并!如果你比较关心游戏的速度,请合并模型!合并材质!合并贴图! 模型的优化 现在的图形显卡可以很好的支持很多的多边形,但是他们他们还是有一些瓶颈的。所以如果你有一个有100个三角形的Mesh,它渲染起来所需要花费的运算跟1500个面数的物体是没有多大差别的。因此最佳的渲染设置...
阅读全文
posted @ 2014-04-22 11:10
Game Developer
摘要:1、顶点性能 一般来说,如果您想在iPhone 3GS或更新的设备上每帧渲染不超过40,000可见点,那么对于一些配备MBX GPU的旧设备(比如,原始的iPhone,如iPhone 3g和iPod Touch第1和第2代)来说,你应该保证每帧的渲染顶点在10000以下。2、光照性能 像素的动态光照...
阅读全文
posted @ 2014-04-22 10:34
Game Developer
摘要:1、在使用数组或ArrayList对象时应当注意length=myArray.Length;for(int i=0;i<length;i++){}避免for(int i=0;i<myArray.Length;i++){}2、如果没有必要每帧都处理,则可以每隔几帧处理一次void Update(){ ...
阅读全文
posted @ 2014-04-22 10:19
Game Developer
摘要:在最近,使用U3D开发的游戏核心部分功能即将完成,中间由于各种历史原因,导致项目存在比较大的问题,这些问题在最后,恐怕只能通过一次彻底的重构来解决。 现在的游戏跑起来会有接近130-170个左右的DrawCall,游戏运行起来明显感觉到卡,而经过一天的优化,DrawCall成功缩减到30-70...
阅读全文
posted @ 2014-04-16 20:45
Game Developer
摘要:Unity(或者说基本所有图形引擎)生成一帧画面的处理过程大致可以这样简化描述:引擎首先经过简单的可见性测试,确定摄像机可以看到的物体,然后把这些物体的顶点(包括本地位置、法线、UV等),索引(顶点如何组成三角形),变换(就是物体的位置、旋转、缩放、以及摄像机位置等),相关光源,纹理,渲染方式(...
阅读全文
posted @ 2014-04-16 18:23
Game Developer

浙公网安备 33010602011771号