当前位置:首页 > 社会

【厚积薄发】MemoryProfiler中Graphics/No Name内存怎么排查

这是第410篇UWA技术知识分享的推送,精选了UWA社区的热门话题,涵盖了UWA问答、社区帖子等技术知识点,助力大家更全面地掌握和学习。UWA社区主页:community.uwa4d.com本期目录:MemoryProfiler中Graphics/No Name内存怎么排查通过代码加载出来的Mesh,释放的时候该怎么处理动态解析顶点数据加载出来的Mesh还需要做对象池吗MeshCollider重刷Bound怎么做MemoryQ:移动端项目,发现某个场景里内存上升很快、但切场景又能回落回去。在Memory Profiler里看发现是Graphics下面的 ,怎么排查?Unity版本是2022.3.37。A:这个我们之前也遇到过,可以看下这个场景是不是用了发射Mesh的粒子?应该是临时生成的网格都造成了内存占用,虽然没有引用,但要在下次场景切换RUUA的时候才自动卸载。该回答由UWA提供,欢迎大家转至社区交流:https://answer.uwa4d.com/question/673af015682c7e5cd61bf994MemoryQ1:请问以下这样的一个通过代码加载出来的Mesh,释放的时候该怎么处理呢?我现在刷新一下LOD内存就涨一次,一直不释放:我是直接Destroy的GameObject,我的Mesh和贴图都是读取的本地二进制里的数据解析出来的,请问怎么处理呢?A1:把Mesh和Texture分别都Destroy。Q2:这个材质呢?我所有的Mesh都是用的一个Material。A2:一样,所有New出来的Asset都需要Destroy,你需要管理什么时候不用再Destroy。Q3:没有顺序要求吗? 是Texture、Material、Mesh、GameObject这样的依次删除?A3:没有顺序要求。你要管理好使用状况,别还在用就被Destroy就行了。感谢清泉石上流@UWA问答社区提供了回答,欢迎大家转至社区交流:https://answer.uwa4d.com/question/673aed03682c7e5cd61bf992MemoryQ:如果我要做对象池,比如做Mesh的对象池,由于我的Mesh都是动态解析顶点数据加载出来的,对于这种情况做对象池还有意义么?比如我放一个Mesh到对象池里,下次取出来用的时候我肯定要重刷所有顶点的,这个和重新new一个Mesh出来是不是差不多了,请问这个要怎么解决呢?A:Mesh不需要对象池,GameObject这种如果频繁生成销毁可以做对象池。对象池要求你塞进去的东西和拿出来的是同样的才有意义。不用的Mesh你可以放到一个列表里面来删除,就是过一段时间还没人用再删,防止摄像机移动回来又要加载。感谢jump晃悠@UWA问答社区提供了回答,欢迎大家转至社区交流:https://answer.uwa4d.com/question/673aeda5682c7e5cd61bf993PhysicsQ:请问MeshCollider重刷Bound怎么做?不想使用.sharedMesh赋值的方式,我使用SetMinMax但没生效。针对以上问题,有经验的朋友欢迎转至社区交流:https://answer.uwa4d.com/question/673aef223d306f3e9d594d93封面图来源于网络今天的分享就到这里。生有涯而知无涯,在漫漫的开发周期中,我们遇到的问题只是冰山一角,UWA社区愿伴你同行,一起探索分享。欢迎更多的开发者加入UWA社区。UWA官网:www.uwa4d.comUWA社区:community.uwa4d.comUWA学堂:edu.uwa4d.com点击下方名片关注我们,将我设为星标,及时接收小编每日推送哦,性能优化不迷路~近期精彩回顾

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“号”用户上传并发布,本平台仅提供信息存储服务。

分享到: