updateMipmaps | 如果 true ,则 Unity 将使用 Mipmap 层级 0 作为源重新计算 Mipmap 层级。默认值为 true 。 |
makeNoLongerReadable | 如果 true ,则 Unity 将在上传到 GPU 后删除 CPU 内存中的纹理,并将 isReadable 设置为 false 。默认值为 false 。 |
将你在 CPU 纹理中进行的更改复制到 GPU。
对于大多数类型的纹理,Unity 都可以在 CPU 和 GPU 内存中存储一份纹理副本。
CPU 副本是可选的。如果存在 CPU 副本,你可以比 GPU 副本更灵活地读取和写入 CPU 副本,例如使用 GetPixels。但是,若要渲染更新后的纹理,你必须使用 Apply
将其从 CPU 复制到 GPU。
如果你将 makeNoLongerReadable
设置为 true
,则 Unity 将在上传到 GPU 后删除 CPU 中的纹理副本。
通常情况下,只有在已更新 Mipmap 层级(例如,使用 SetPixels)时,才会将 updateMipmaps
设置为 false
。Apply
是一个昂贵的操作,因为它会复制纹理中的所有像素,即使你只更改了部分像素,因此在你调用它之前尽可能多地更改像素。