赞
踩
写代码的时候遇到一个需求,需要将一个物体的贴图赋于另一个物体,并将原物体的贴图清掉。直接使用texture =的方式发现是浅拷贝,原物体贴图清掉之后另一个物体贴图也没了,于是换做深拷贝的写法。
使用Graphics.CopyTexture(Texture src, Texture dst)
- RenderTexture texRender1 = 目标.texRender;
- RenderTexture texRender = new RenderTexture(texRender1.width,texRender1.height,24, RenderTextureFormat.ARGB32);
- Graphics.CopyTexture(texRender1, texRender);//这里把texRender1的贴图深拷贝给texRender
- 目标.GetComponent<MeshRenderer>().material.mainTexture = texRender;
完成需求
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。