Unity中Renderer.material有坑
发布时间
阅读量:
阅读量
在Unity引擎中,可以通过material和sharedMaterial两种方式来获取Renderer组件所使用的材质。多个Renderer对象可以共享同一个材质实例,此时sharedMaterial将指向该材质。一旦对这个材质进行修改,所有使用它的Renderer都会同步发生变化。而通过material方式访问时,根据官方文档的说明:
对material属性进行修改只会作用于当前对象。
如果该材质被其他Renderer使用,则会自动克隆共享的材质实例,并从此时起使用新的克隆体。
注意:
此操作会自动创建材质实例并使其专属于当前Renderer。开发者需要自行在游戏对象销毁时一并销毁这些材质实例。Resources.UnloadUnusedAssets同样具备销毁材质的功能,但通常仅在加载新关卡时才会触发。
该函数的作用是自动实例化材质,以确保每个Renderer拥有独立的材质副本。当游戏对象被销毁时,开发者需手动处理这些材质的释放工作。[Resources.UnloadUnusedAssets](https://docs.unity3d.com/ScriptReference/Resources.Unl
全部评论 (0)
还没有任何评论哟~
