版本:Unity 6 (6000.0)
语言英语
  • C#

Texture.isReadable

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交内容,但我们会阅读用户提供的每个建议的更改,并在适用的情况下进行更新。

关闭

提交失败

由于某种原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

public bool isReadable;

描述

Unity 是否在 CPU 可寻址内存中存储此纹理像素数据的额外副本。

这是在 CPU 上读取、写入和操作像素数据的方法(例如 Texture2D.GetPixelsImageConversion.EncodeToPNG)所必需的。对于在 GPU 上执行所有操作的方法(例如 Graphics.CopyTextureGraphics.Blit)来说,这不是必需的。

默认情况下,对于您导入到项目的纹理资源,此值为 false。要切换此设置,请使用 纹理导入设置 中的 **启用读/写** 设置,或设置 TextureImporter.isReadable

默认情况下,当您从脚本创建纹理时,此值为 true

注意: 可读纹理比不可读纹理占用更多内存。您应该只在需要时才使纹理可读,并在完成对 CPU 上数据的操作后将纹理设置为不可读。

要在运行时使纹理不可读,请调用您纹理类型对应的 Apply 方法(例如 Texture2D.ApplyCubemap.Apply),并将 makeNoLongerReadable 参数设置为 true