问题
在Unity中场景显示的亮度都是正常的,使用LayaAir3D工具导出Sprite3D后运行场景场景变暗,效果很是不对。在和美术沟通时得知,美术使用了Lighting面板。
Sprite3D选项的导出,相比场景(Scene)的导出,没有了光照贴图的导出
参考文檔3.3.3
解决
灯光效果问题
使用代码设置Lighting面板里的 ambientColor
//设置场景环境光 scene.ambientColor = new Laya.Vector3(0.6, 0, 0);
雾化效果问题
使用代码设置 雾 的效果
//雾化代码 scene.enableFog = true; //设置雾化的颜色 scene.fogColor = new Laya.Vector3(0,0,0.6); //设置雾化的起始位置,相对于相机的距离 scene.fogStart = 10; //设置雾化最浓处的距离。 scene.fogRange = 40;
经过上方处理,雾化效果已经添加到场景中,但是3d对象的雾化(在远处时3D对象看起来像是蒙了一层雾)
此时可以考虑是否是材质的shader问题。一般建议使用BlinnPhongMaterial材质,若觉得对象亮度过高可以修改亮度(Intensity)降低数值。
官方文档-BlinnPhong材质