如何查看子线程中的GC Alloc

如何查看子线程中的GC Alloc

1)如何查看子线程中的GC Alloc
2)Build时,提示安卓NDK异常
3)如何获得ParticleSystem产生的三角形数量
4)关于图片通道的问题
5)GPUSkinning导致模型动画不平滑


这是第193篇UWA技术知识分享的推送。今天我们继续为大家精选了若干和开发、优化相关的问题,建议阅读时间10分钟,认真读完必有收获。

UWA 问答社区:answer.uwa4d.com
UWA QQ群2:793972859(原群已满员)

Mono

Q:我把一些大计算量的东西放到了子线程中,现在想看下有没有GC Alloc,但是没找到像Profiler.BeginSample/Profiler.EndSample这样的方法,看不到子线程中的GC Alloc,只能看到时间开销。请问要怎么才能看到子线程中的GC Alloc呢?

A:直接通过UWA线上深度测评服务中的Mono详细堆内存分析即可查看子线程中的堆内存分配情况。《UWA 新功能 | 多线程模式下也能定位堆内存问题了!》

该回答由UWA提供,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/5e575ef386a3954891983a38


Build

Q:使用Unity 2019.3版本Build时,提示安卓NDK异常,报错如下,大家有遇到过吗?该如何解决呢?

A:这是Unity 2019.3的一个bugIssue Tracker
Mac版已修复,但是Windows版本2019.3.1f1未修复,导致Android打包失败,并且Google官网上的NDK版本也不匹配,现在有一个曲线救国的办法:


我们将C:\Program Files\Unity\Hub\Editor\2019.3.0f6\Editor\Data\PlaybackEngines\AndroidPlayer\NDK\android-ndk-r19(Unity安装目录下的NDK目录)下的内容拷贝到上级“NDK”文件夹下,再将勾选选中,此警告就会消失。

感谢郑骁@UWA问答社区提供了回答,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/5e51167cfd2e373ffa7eac6d


ParticleSystem

Q:希望获得项目中每一个特效在发射时产生的三角形数量。使用编辑器Stats窗口人工操作不仅耗时,而且峰值也难以捕捉,基本不考虑。

有没有代码或者其它可以自动化的方法,获得一个ParticleSystem当前全部粒子的三角形数量,或者获得一个摄像机内的三角形数量?

A:粒子系统有个属性ParticleCount,通过它能获取到当前粒子数量N,然后再获取每个粒子的三角形数M,通过ParticleSystemRenderer.renderMode这个属性,如果是Mesh,那么得到这个Mesh的三角形数,如果是Billboard可以简单地认为三角形数为2;通过粒子数量乘以三角形数(N*M)应该可以得到总的三角形数。楼主可以试验一下是否有用。

感谢李星@UWA问答社区提供了回答,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/5e59c69086a3954891983a93


Texture

Q:为什么png格式的图片在PS里面没有Alpha通道,但图片导入Unity后显示都有Alpha通道?

A:png没有Alpha,只有transparency。Unity把图片的transparency读出来显示为Alpha。

感谢fubbi1000@UWA问答社区提供了回答,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/5db98288743afa3d3cc906ff


Animation

Q:GPUSkinning导致模型动画不平滑,我参照
https://github.com/chengkehan/GPUSkinning 实现的GPUSkinning,发现模型动画不是很平滑,特别是当动画播放速度调慢后很明显一卡一卡的,正常 1.0 的速度看不出太大的问题。骨骼烘焙贴图格式为ARGBHalf的,大家遇到过类似的问题吗?

A:采样的帧率是不是小了。默认是不会在两帧之间进行插值的,所以当帧率小了,速度慢了看上去就是一卡一卡的。

感谢jim@UWA问答社区提供了回答,欢迎大家转至社区交流:
https://answer.uwa4d.com/question/5e5a859986a3954891983aa1


今天的分享就到这里。当然,生有涯而知无涯。在漫漫的开发周期中,您看到的这些问题也许都只是冰山一角,我们早已在UWA问答网站上准备了更多的技术话题等你一起来探索和分享。欢迎热爱进步的你加入,也许你的方法恰能解别人的燃眉之急;而他山之“石”,也能攻你之“玉”。

官网:www.uwa4d.com
官方技术博客:blog.uwa4d.com
官方问答社区:answer.uwa4d.com
UWA学堂:edu.uwa4d.com
官方技术QQ群:793972859(原群已满员)