解决unity3d导入模型贴图材质丢失的问题
作者:毛野毛野猫
这篇文章主要介绍了解决unity3d导入模型贴图材质丢失的问题,具有很好的参考价值,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
今天导入了一个模型,但是模型贴图丢失了,而且Inspector面板中处于不能编辑的状态
虽然可以通过重新创建材质来替换,但是这样会生成一个新的prefab,觉得不太好 做出如下更改,将对应材质填入即可
补充:Unity光照贴图丢失的坑
最近项目出版本的时候出现了部分建筑光照贴图不正常的情况,而且仅仅是部分模型,这部分模型都是有多个场景会用到的,所以都是单独出来打包的。
然后以为是模型上面的光照信息丢失了,通过测试,并没有丢失,可以通过获取模型上的MeshFilter打印出来,部分丢失的话,也与光照贴图没有关系,只可能是模型的UV2通道里面烘焙的数据错了,或者是模型通过依赖打包的Unity做了什么操作把依赖的模型的UV2通道删除了,后来问了下群里的小伙伴,有人说可能是
这个选项的锅,然后我把这个选项勾选掉之后光照就正常了,这个选项会把材质中没有用到的UV,Normal等通道自动的在打包的时候剔除,猜测可能是Unity认为被单独打包的模型没有用到UV2,就自动剔除了,没有管这个模型是否会在场景中使用,所以在打包的时候,当场景通过依赖进行合并模型时,这时候加载进来的单独打包的模型实际上他的UV2通道已经被剔除了,所以导致光照丢失。
大家可以在自己的项目中尽量不要勾选这个选项,据说会导致很多问题,还是自己手动剔除好点。
解决方法:
方法1: 取消勾选这个选项,这会导致包体变大60M。
方法2: 在模型导入的时候自动把模型的UV3,UV4,Tangent,等剔除。需要美术在MAX中提前生成UV2通道。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。