Unity 材质丢失的问题

从assetbundle加载材质到app中 该材质原来未在app生成的工程中  解决在app加载assetbunlde材质丢失

参考这个帖子 http://www.youkexueyuan.com/exp_show/1187.html

需要将材质文件shader重新关联一下  注意: 如果单单把gameobject创建出来之后 find meshrender的方法直接对上边的材质重新关联shader 发现有些材质还是会丢失  而把assetbunlde文件中的材质文件全部关联一下才能真正起作用  在这个unity的大坑里躺了好几天  mark一下

备注另一个发现 直接把bundle中shader加载一遍 warmupshader 然后把材质全加载出来重新关联shader 

最后从bundle中创建物体 给物体的材质重新赋值 结果粉红色 但是新建一个方块给方块材质赋同一值 方块显示是正常的

解决:将赋值的逻辑延迟一帧执行 结果正常了 猜想是物体从bundle创建出来之后那一帧bundle里有一个强制的错误材质关联 所以无法正常修改材质引用   这个应该也是unity的bug 又一次躺坑

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值