Version: 2021.1
public void Compress (bool highQuality);

描述

Compress texture at runtime to DXT/BCn or ETC formats.

Use this to compress textures at runtime. Compressed textures use less graphics memory and are faster to render. For more information on texture compression, see Texture compression.

The format that Unity compresses the texture to depends on the platform, and the properties of the texture.

texture will be in DXT1 (BC1) format if the original texture had no alpha channel, and in DXT5 (BC3) format if it had alpha channel. If the original texture was R8, the compressed format will be BC4. If the original texture was RG16, the compressed format will be BC5.

On Android, iOS and tvOS, this will compress the texture to the ETC/EAC family of formats.

Passing true for highQuality parameter will dither the source texture during compression, which helps to reduce compression artifacts but is slightly slower. This parameter is ignored for ETC compression.

如果显卡不支持压缩或纹理已经是压缩格式, 则 Compress 不执行任何操作。

In the Editor scripts, you probably want to use EditorUtility.CompressTexture, which will compress using slower, but higher quality compression. It can also compress into other compressed formats.

您还可以使用 LoadRawTextureData 函数将预先压缩的数据加载到纹理中。

另请参阅:SetPixelsEditorUtility.CompressTextureLoadRawTextureData