**
一.基础导出篇。
1.导出场景(Scene):
导出 ".ls"文件,场景中的“对象”的顺序为,“Main Camera”,“Directional Light”,
“Game Object”。位置调换会出现加载错误。
2.导出预设(Prefab):
取消勾选 ”批量导出一级节点“选项,可导出单个” .lh"文件。一般程序中大多时用该方法导出模型,可以根据需求删减“灯光”,“摄像机”等物体。
3.场景预览:调整摄像机位置,使其照到相应的物体后点击预览,即可在浏览器中查看基础效果,按F12查看报错信息,
如果是“*reading ‘length*”错误后检查模型没有问题,导出到程序检查,不要过于纠结预览中的该问题。
二.错误列表:
1.“*reading ‘length*’错误--------预览错误:
![在这里插入图片描述](https://img-blog.csdnimg.cn/6841a61f957541fa912ba2b066f73cd2.png#pic_center)
原因:
(1):unity场景中“摄像机”,“灯光”,“物体”位置顺序不正确。
(2):-模型问题,删除部分模型可以解决,尤其是你改动过,或者经过大量复制之后的模型,有一定概率的原因已经达到一个限度,也可能在小程序加载中正常。
2.”*Uncaught TypeError: bn[a[((a[((intermediate value)(intermediate value) >> 2)] + 24) >> 2)]] is not a function*“--------------预览错误
原因:
(1):模型问题,例如,-丢失碰撞物体,
3.加载错误
(1):可能是分配的内存不足:在如下代码中修改数值,到32 甚至64.
this._defaultPhysicsMemory=64;
三.速度优化:
1.场景中模型块过大: --使用区块化模型,通过在场景中复制进行搭建,而不是在3Dmax或者maya中直接导出整体的模型。这样导出的包体更小,下载,渲染速度更快(主要)。
--使用laya中自带的”文件压缩“,可以减少图片的大小,提高部分下载和加载速度。
--减少”Game Object“的层级,使程序遍历的时候花费更少时间。
--在模型贴图方面,尽量使用PBR材质,将多个模型贴图整合到一张(后续如果想要单独增加通用的法线贴图等坑你会比较麻烦,因为laya材质没有单独的法线重复选项),
可能有些同学在unity中贴图是比较喜欢使用基础纹理贴图,模型多时会大大增加加载成本。
--单体模型较大,可能导致模型加载不全的情况,尽量将模型分割到可加载的上限(6W以内),或者使用法线贴图。
--降低laya材质的“render Queue”的数值,“Geometry”比“From Shader”要快1/3。
四.laya材质:
1.laya不支持unity的所有材质类型,只能使用laya自带的材质。
BlinPhone:主要调整“intensity”属性,控制预览中的效果。调整“intensity”的数值来控制模型的预览亮度,同时降低unity中“太阳光”的强度,
调整对应的“Specular”颜色,其他保持默认(比较适用室内场景不要产生过暗的地方)。
Effect:
PBR:金属的质感表现不出来,预览效果显示金属为黑色。
unlit:不受光材质。
2.laya金属材质表现不明显,使用PBR材质表现出来效果也不理想。
五.laya灯光:
1.laya中灯光只支持相同类型的灯光一盏,比如添加两个”平行光“并不会有叠加的效果,
其他的相同类型的灯光也不会相互叠加,不同类型可以叠加(laya 2.4)。
|