Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

PortableCompressedTexture2D

Hérite de : Texture2D < Texture < Resource < RefCounted < Object

Fournit une texture compressée pour le disque et/ou la VRAM d'une manière qui est portable.

Description

This class allows storing compressed textures as self contained (not imported) resources.

For 2D usage (compressed on disk, uncompressed on VRAM), the lossy and lossless modes are recommended. For 3D usage (compressed on VRAM) it depends on the target platform.

If you intend to only use desktop, S3TC or BPTC are recommended. For only mobile, ETC2 is recommended.

For portable, self contained 3D textures that work on both desktop and mobile, Basis Universal is recommended (although it has a small quality cost and longer compression time as a tradeoff).

This resource is intended to be created from code.

Propriétés

bool

keep_compressed_buffer

false

bool

resource_local_to_scene

false (overrides Resource)

Vector2

size_override

Vector2(0, 0)

Méthodes

void

create_from_image(image: Image, compression_mode: CompressionMode, normal_map: bool = false, lossy_quality: float = 0.8)

CompressionMode

get_compression_mode() const

bool

is_keeping_all_compressed_buffers() static

void

set_basisu_compressor_params(uastc_level: int, rdo_quality_loss: float)

void

set_keep_all_compressed_buffers(keep: bool) static


Énumérations

enum CompressionMode: 🔗

CompressionMode COMPRESSION_MODE_LOSSLESS = 0

There is currently no description for this enum. Please help us by contributing one!

CompressionMode COMPRESSION_MODE_LOSSY = 1

There is currently no description for this enum. Please help us by contributing one!

CompressionMode COMPRESSION_MODE_BASIS_UNIVERSAL = 2

There is currently no description for this enum. Please help us by contributing one!

CompressionMode COMPRESSION_MODE_S3TC = 3

There is currently no description for this enum. Please help us by contributing one!

CompressionMode COMPRESSION_MODE_ETC2 = 4

There is currently no description for this enum. Please help us by contributing one!

CompressionMode COMPRESSION_MODE_BPTC = 5

There is currently no description for this enum. Please help us by contributing one!

CompressionMode COMPRESSION_MODE_ASTC = 6

There is currently no description for this enum. Please help us by contributing one!


Descriptions des propriétés

bool keep_compressed_buffer = false 🔗

  • void set_keep_compressed_buffer(value: bool)

  • bool is_keeping_compressed_buffer()

If true, when running in the editor, this texture will keep the source-compressed data in memory, allowing the data to persist after loading. Otherwise, the source-compressed data is lost after loading and the texture can't be re-saved.

Note: This property must be set before create_from_image() for this to work.


Vector2 size_override = Vector2(0, 0) 🔗

Allows overriding the texture's size (for 2D only).


Descriptions des méthodes

void create_from_image(image: Image, compression_mode: CompressionMode, normal_map: bool = false, lossy_quality: float = 0.8) 🔗

Initialise la texture compressée à partir d'une image de base. Le mode de compression doit être fourni.

normal_map est recommandé pour assurer une qualité optimale si cette image sera utilisée comme normal map.

Si une compression avec perte est demandée, le réglage de la qualité peut être fourni en option. Cela est associé à la qualité de compression de Lossy WebP.


CompressionMode get_compression_mode() const 🔗

Renvoie le mode de compression utilisé (valide après l'initialisation).


bool is_keeping_all_compressed_buffers() static 🔗

Returns true if the flag is overridden for all textures of this type.


void set_basisu_compressor_params(uastc_level: int, rdo_quality_loss: float) 🔗

Sets the compressor parameters for Basis Universal compression. See also the settings in ResourceImporterTexture.

Note: This method must be called before create_from_image() for this to work.


void set_keep_all_compressed_buffers(keep: bool) static 🔗

If keep is true, overrides the flag globally for all textures of this type. This is used primarily by the editor.