![[Unity优化] unity性能优化,第1张 [Unity优化] unity性能优化,第1张](/aiimages/%5BUnity%E4%BC%98%E5%8C%96%5D+unity%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96.png)
2)不再使用图集转而使用UITexture来使用。请问UWA有什么建议呢?
使用图集的主要缺点在于内存较大,且管理不便;而使用UITexture的主要缺点在于产生的Draw Call较多(每个UITexture都会产生一个Draw Call且无法拼合),影响运行效率。因此,如果同时出现在屏幕上的图标不多,即UITexture所产生的Draw Call数量不大时,可以考虑直接使用;但如果图标数量较多,且目前项目的Draw Call已经较高,那么我们依然建议继续使用图集,按照一定的规则拆分为若干组,从而将 Draw Call控制在较低的范围内。
Q:粒子系统的Prewarm主要用来做什么的,这个怎么优化呢?
ParticleSystemPrewarm的出现表示当前加载、激活或者首次渲染的粒子系统开启了"Prewarm"选项,而开启该选项的粒子系统在加载后会立即执行一次完整的模拟。以“火焰”为例,Prewarm开启时,加载后第一帧即能看到“大火”,而不是从“火苗”开始逐渐变大。但Prewarm的 *** 作通常都有一定的耗时,建议在可以不用的情况下,将其关闭。
Q:我们为了降低像素填充就限制了最大分辨率,但是发现限制之后NGUI的字体显示就变得模糊了。是否可以避免NGUI字体模糊呢?下图是我们在小米5上测试得到的结果:低分辨率下文字就模糊了。
从开发团队提供的上看,小米5上的低分辨率用的是983x552,相当于将原来的画面的四分之一分辨率。此时,降低分辨率的做法可以理解为把983x552的纹理拉伸后贴到1920x1080的屏幕上,而“贴”的过程还会涉及到重新采样,因此造成模糊是正常的,而不仅仅是文本。只是文本的边缘对比度较高,拉伸后变糊的现象会更加明显。
我们建议尝试通过RenderTexture来控制不同内容的分辨率,对于UI部分尽量不要把分辨率降得太低。
Q:打包AssetBundle的时候,我发现切换场景时,即使打同一个场景的AssetBundle,它们的Hash值都是不一样的,可能是什么原因造成的呢?
在不同的场景下打包同一个资源或场景时,如果出现AssetBundle的差异,目前很可能是Shader Stripping造成的,其原理可见文档: >
这个首先需要看一下你的UI的那张图是不是真的不清晰分辨率是不是真的不够,如果源图很清晰那就看看这张图导入的时候的压缩比,适当调高可以提高清晰度。此外,似乎要看看用在UI什么地方了,或许需要具体看一看。
都是个人见解,如果不正确希望得到指正,多谢。
帧动画的制作重点在美工方面,做完导入后编程方面对它的控制很少,改变播放速度,和另一贴图或纯色混合(比如实现渐隐效果)大概就这些。而骨骼动画导入后,在编程上可以将多个动画片段进行混合或过渡,如
animationBlend("FallDown", 0, 02);
animationBlend("Jump", 0, 02);
就是将角色的下落和跳起动画混合,是它看上去既有跳起又有下落的姿态。
单纯的骨骼的动画在unity3D的场景中是什么也没有,但你在hierarchy中能看到骨骼的层次结构(基于fk的正向动力学图)添加模型是没用的
问题可能出在你1仅仅输出骨骼和动画,但没输出蒙皮2unity3D只支持fbx2009版本插件,选的却不是
建议在输出前先塌陷蒙了皮的模型,将关键贞动画输出WHY本质上unity3D只支持关键侦动画,只不过他同时保留了骨骼3DSMAX的BIPE是包含了FK和IK的,在unity3D里统统变成了FK
"纹理放到同一路径~用的时候会自动生成材质"//不是这样的,无论怎样你都的重新赋予材质,原因是unity3D的shader跟其他3D软件的shader不兼容(如果兼容那才是怪事)
"动画就要自己设定播放帧数"//unity3D不仅能设定播放帧数,而且能全方位的修改动画我们的动画在别的软件里已经作好了,不一定还要"自己设定播放帧数",多此一举
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)