Version: 2020.2
LanguageEnglish
  • C#

Texture2D.Compress

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

public void Compress(bool highQuality);

Description

Compress texture into DXT format.

Use this to compress textures generated at runtime. Compressed textures use less graphics memory and are faster to render.

After compression, texture will be in DXT1 format if the original texture had no alpha channel, and in DXT5 format if it had alpha channel.

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

If the graphics card does not support compression or the texture is already in compressed format, then Compress will do nothing.

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

You can also load already precompressed data into a texture using LoadRawTextureData function.

See Also: SetPixels, EditorUtility.CompressTexture, LoadRawTextureData.