专业做轮胎的网站,如何在本地发布自己做的网站,shtml怎么做网站,郑州网站建设老牌公司关于优化方法#xff0c;UWA这边有介绍
Unity移动端游戏性能优化简谱之 CPU耗时调优|单帧|动画|调用|unity|实例化_网易订阅 对此#xff0c;我们可以将Shader通过ShaderVariantCollection收集要用到的变体并进行AssetBundle打包。在将该ShaderVariantCollection资源加载进内…关于优化方法UWA这边有介绍
Unity移动端游戏性能优化简谱之 CPU耗时调优|单帧|动画|调用|unity|实例化_网易订阅 对此我们可以将Shader通过ShaderVariantCollection收集要用到的变体并进行AssetBundle打包。在将该ShaderVariantCollection资源加载进内存后通过在游戏前期场景调用ShaderVariantCollection.WarmUp来触发Shader.CreateGPUProgram并将此SVC进行缓存从而避免在游戏运行时触发此API的调用、避免局部的CPU高耗时。 然而即便是已经做过以上操作的项目也常会检测到运行时偶尔的该API耗时峰值说明存在一些“漏网之鱼”。开发者可以结合Profiler的Timeline模式选中触发调用Shader.CreateGPUProgram的帧来查看具体是哪些Shader触发了该API可以参考。 对于漏网之鱼的定位后来还介绍了一种方法我实际了一下记录一下
就是启用 LogShaderCompilation 功能
打开 Unity 编辑器并打开您的项目。在菜单栏中选择 Edit编辑选项。在下拉菜单中选择 Project Settings项目设置。在 Project Settings项目设置窗口中选择 Graphics图形选项卡。在 Graphics图形选项卡中找到 Shader Loading部分。将 LogShaderCompilation当着色器编译时记录日志选项勾选上。 打包在手机上运行后 用logcat抓到日志 关键字 Compiled shader Debug级别的如果你过滤了可能看不到。 看一下日志能看到当时哪个shader 的什么Keywords触发了编译