width | 纹理的新宽度。 |
height | 纹理的新高度。 |
format | 纹理的新格式。 |
hasMipMap | 纹理是否为完整的 mipmap 链保留内存。 |
bool true
如果重新初始化成功。
重新初始化一个 Texture2D,使您可以替换该纹理的 width
、height
、textureformat
和 graphicsformat
数据。
此操作还会清除与纹理相关联的 CPU 和 GPU 中的像素数据。
此函数与 Texture 构造函数非常相似,只是它作用于已存在的 Texture 对象,而不是创建新的对象。
无法重新初始化 Crunched 纹理,因此如果将 Crunched 纹理传递给此方法,它将返回 false
。有关压缩和 crunched 纹理的更多信息,请参阅 纹理格式。
调用 Apply 将更改的像素上传到显卡。
Texture.isReadable 必须为 true
。Texture2D.Reinitialize
不会自动更新 特殊纹理属性 {TextureName}_TexelSize
和 {TextureName}_HDR
,这些属性由 Unity 在使用该纹理的着色器和材质上自动设置。在使用 Texture2D.Reinitialize
后,如果您需要这些属性,则应更新材质或着色器上的 {TextureName}_TexelSize
和 {TextureName}_HDR
。