之前的实现过这个效果,可惜没有记笔记,所以现在有点遗忘,连多个波纹一起在水面
如果你的游戏兼容多平台,或者当前平台的设备也有硬件差距,比如低端设备就是带不动你的画质,无论如何你如何优化就是带不动。这种情况下,我们可以考虑对画质进行分级,减少一些特性,来提高运行质量。接下来我们来学习一下unity内置的Quality来实现一下质量分级: 有了这个,我们可以在面板上面,根据需求,去控制每个平台的质量,而不需要非得在代码中去设置,并且可以直观的在编辑器中查看设置的质量的效果。 这
批次对渲染的性能影响是比较大的,批次过多会导致cpu提交的次数过多,导致每帧渲染时间过长,所以我们需要对其优化,减少Bathches数量和SetPassCall次数。 批次合并的方法有多种,下面一一列出:手动合批将相同材质的Mesh,合并为一个新的Mesh,这样一次渲染,最方便调节,虽然现在不怎么使用这种方式。就是有点费手,会增加内存和包体大小,而且会增加LightMap中占有的尺寸,以及重新制作
Shader相关优化众所周知,我们在unity里编写Shader使用的HLSL/CG都是高级语言,这是为了可以书写一套Shader兼容多个平台,在unity打包的时候,它会编译成对应平台可以运行的指令,而变体则是,根据宏生成的,而打包运行时,GPU会根据你设置的宏切换这些打包出来的代码,而不是我们书写那种只生成的一个Shader,这也是为了提高运行速度。 如果你要查看实际运行的代码,可以使用Ren
目标既然要优化,肯定要有个目标: pc上一般要求:一秒渲染60帧 移动端:一秒渲染30帧 这应该是最低的要求,如果游戏运行时,游戏帧率有变化,人眼能够明显的感觉到帧率下降。 优化的首要规则是找到性能问题的所在。 一般出现问题不是在cpu就是gpu。profilerunity内置了性能检测工具, 可以在Window->Analysis->Profiler 打开,由于在编辑器内调试准确率有
Copyright © 2005-2023 51CTO.COM 版权所有 京ICP证060544号