h5跟传统网站有啥区别,太原网站建设斯飞网络,公司网站制作平台,不动产登记门户网站建设方案性能标准
推荐耗时#xff1a;
性能提现到玩家直观感受#xff0c;就是帧率#xff0c;为了达到要求的帧率#xff0c;就要控制CPU的耗时#xff0c;不同类型的游戏#xff0c;对帧率要求不一样。下面是推荐耗时#xff1a; 推荐内存#xff1a;
避免游戏闪退的重点…性能标准
推荐耗时
性能提现到玩家直观感受就是帧率为了达到要求的帧率就要控制CPU的耗时不同类型的游戏对帧率要求不一样。下面是推荐耗时 推荐内存
避免游戏闪退的重点在于控制PSS内存(实际物理内存Proportional set size)峰值。而PSS内存的大头又在于Reserved Total中的资源内存和Mono堆内存。对于使用Lua的项目来说还应关注Lua内存。
只有当PSS内存峰值控制在硬件总内存的0.5-0.6倍以下的时候闪退风险才较低。举例而言对于2G的设备而言PSS内存应控制在1G以下为最佳3G的设备则应控制在1.5G以下。
而对于大多数项目而言PSS内存大约高于Reserved Total 200MB-300MB左右故2G设备的Reserved Total应控制在700MB以下、3G设备则控制在1G以下。 渲染模块推荐值
随着游戏对画质效果的要求越来越高越来越多的项目遇到的性能瓶颈会来自于GPU的压力GPU的压力会受到帧率分辨率三角形面片数后处理Shader复杂度Overdraw等多方面的影响因此我们对于不同分档的机型需要做一些对应的调整在不同档位的机型上要做较为细致的区分从而达到越高端的机型画质表现越好而在低端机型上又能保证一定的流畅性。下表中可以当做一个模板对于不同的游戏类型的需求可以再进一步调整其中绿色的数值如果能达到的话会更优。 推荐工具
Unity Profiler
建议真机调试、快捷键A(把当前帧的数据自适应到窗口)、F(Timeline 下选中一个快速聚焦到合适窗口)
Profiler Modules 可以按需加减Frame 默认记录300帧的数据可以在Preference-Analysis-Profiler中更改最高是2000高了会增加profile的消耗 Rendering 的数据影响其中的很大原因是 摄像机视角的改变
Unity Frame Debugger
查看当前帧画面的渲染流程,它可以列出所有的绘制调用,并能够按照顺序逐步执行每个调用。查看Draw Call的调用次数,并通过顶点/索引数量来间接衡量场景的渲染代价。还能够检查Batch是否正常合批,以及检查不合批的原因。还可以访问着色器属性以获得关于材质和着色器的更多信息,也可以得到被对象使用的数据的引用。 Mali Offline Compiler
Documentation – Arm Developer 官方文档
a. 该工具主要用来计算Shader的复杂度结合分档的高中低数值来判断Shader是否过于复杂。
b. 它是一个命令行工具,提供静态分析GPU着色器。它主要可以用于验证着色器的语法、识别性能瓶颈、衡量任何变化对性能的影响。
选中shader编译成文件后选择其中的片元着色器或顶点着色器代码用mali命令行分析 c. 从Unity编辑器中获得FRAGMENT Shader。 从它的报告中我们能得到一些优化的建议:
尽量不要使用if、discard语句减低相关运算量,减少反三角函数等复杂函数的使用避免类型转换减少使用32位的高精度浮点数,不过position和depth最好还是用332位避免触发spilling等等
Xcode FrameDebugger
它只支持metal 型号的机器测试即iPhone在Edit Scheme 中选中GPU为metal既可以截取对应帧的信息和Unity Frame Debugger类似但功能更全一些 开启后在真机上运行时通过下方工具栏截取