这是第157篇UWA技术知识分享的推送。今天我们继续为大家精选了若干和开发、优化相关的问题,建议阅读时间10分钟,认真读完必有收获。
UWA 问答社区:answer.uwa4d.com
UWA QQ群2:793972859(原群已满员)
本期目录:
模型中多个材质的渲染顺序
SpriteRenderer的屏幕填充实现
iOS如何导出Log
Shader加载异常
Unity 2018.3.7版本开发中,模型在部分设备上无法显示
在一个模型中,有两个默认材质。这个时候,如果用代码,强行增加一个材质,Unity会采用复制原材质中上一个材质的Mesh作为新材质的Mesh。所以有两个问题:
1)有没有可能为材质球指定Mesh;
2)如何才能让原材质的位置调换但是效果还是显示正确。
也就是让下图中两个材质球调换位置,并且效果显示正确;
第一个材质是颜色贴图材质,第二个材质是特效波动材质。
A:如果你的Mesh没有Submesh,多个材质球就是会渲染多遍,使用的对象就是当前的这个Mesh。如果有Submesh,我在编辑器模式下默认是不让增加材质球数量的,我不知道通过代码是否可行,但是如果可以通过代码添加但不能指认Mesh,是挺奇怪的。
关于顺序,RenderQueue相同的情况下,不透明和透明的排列顺序不同(不透明由近到远,因此可能认为数组顺序应该反着来做,透明的由远及近,按照数组顺序来),对于多材质的Mesh的材质渲染顺