目录
Spine动画打包成AssetBundle资源到安卓平台时,材质丢失。
如果真的特别需要在u3d编辑器中显示为正常,可以手动在编辑器中的右边Inspector面板重新选择一下材质球的shader或者手动拖这个材质球到 物体的属性面板里面。
Spine动画打包成AssetBundle资源到安卓平台时,材质丢失。
网上的解决方案都是:
解决方法如下:
Edit——>Project Setting——>Graphics
在Always Included Shaders中 是Unity默认打包的材质球类型 ,将你所用到的材质球类型也添加进去,重新打包。就可以读取到? 这个只能解决(82%的用户)
————————————————
真实情况是: u3d编辑器Android平台模式
就算加入了Graphics 强制绑定shader 还是会在u3d编辑器中显示粉色,但是查看物体的属性面板发现材质和shader并没有丢失,是因为[u3d编辑器Android平台模式]中会有显示错误,导出到手机安卓上运行是正常的 材质并没有丢失!!!
如果真的特别需要在u3d编辑器中显示为正常,可以手动在编辑器中的右边Inspector面板重新选择一下材质球的shader或者手动拖这个材质球到 物体的属性面板里面。
附加:代码强制赋值材质球里shader的方法
void Start(){//AB包的方式------------------------AssetBundle ab = AssetBundle.LoadFromFile("Assets/AssetBundles/kkk/jjj");Material m = ab.LoadAsset<Material>("Doi_Material");m.shader = Shader.Find("Spine/Skeleton");gameObject.GetComponent<MeshRenderer>().material = m;//已经强制绑定了Shader到U3D编辑器的方式----------------Material m= GetComponent<Material>();m.shader = Shader.Find("Spine/Skeleton");//Find 那个在编辑器模式里面呈现紫色的材质球的shadergameObject.GetComponent<MeshRenderer>().material = m;}
如果觉得《Unity骚操作:Spine动画打包成AssetBundle资源到安卓平台时 材质丢失的问题解决方案》对你有帮助,请点赞、收藏,并留下你的观点哦!