PortableCompressedTexture2D

Eredita: Texture2D < Texture < Resource < RefCounted < Object

Fornisce una texture compressa per disco e/o VRAM in modo che sia portabile.

Descrizione

Questa classe consente di memorizzare texture compresse come risorse autonome (non importate).

Per l'utilizzo 2D (compresse su disco, non compresse in VRAM), sono consigliate le modalità lossy e lossless. Per l'utilizzo 3D (compresse in VRAM), dipende dalla piattaforma di destinazione.

Se intendi usare solo desktop, sono consigliati S3TC o BPTC. Per i dispositivi mobili, è consigliato ETC2.

Per texture 3D portatili e autonome che funzionano sia su desktop sia su dispositivi mobili, è consigliato Basis Universal (nonostante abbia un piccolo costo di qualità e un tempo di compressione più lungo come compromesso).

Questa risorsa è pensata per essere creata da codice.

Proprietà

bool

keep_compressed_buffer

false

bool

resource_local_to_scene

false (overrides Resource)

Vector2

size_override

Vector2(0, 0)

Metodi

void

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

CompressionMode

get_compression_mode() const

Format

get_format() 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


Enumerazioni

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!


Descrizioni delle proprietà

bool keep_compressed_buffer = false 🔗

  • void set_keep_compressed_buffer(value: bool)

  • bool is_keeping_compressed_buffer()

Quando in esecuzione nell'editor, questa classe manterrà i dati compressi di origine in memoria. Altrimenti, i dati compressi di origine sono persi dopo il caricamento e la risorsa non può essere salvata di nuovo.

Questo flag consente di mantenere i dati compressi in memoria se si intende che persistano dopo il caricamento.

Nota: Questo deve essere impostato prima di chiamare create_from_image() affinché abbia effetto.


Vector2 size_override = Vector2(0, 0) 🔗

Consente di sovrascrivere le dimensioni della texture (solo per 2D).


Descrizioni dei metodi

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

Inizializza la texture compressa da un'immagine di base. Deve essere specificata la modalità di compressione.

normal_map è consigliato per garantire una qualità ottimale se questa immagine sarà utilizzata come mappa normale.

Se è richiesta una compressione con perdita di dati, è possibile fornire facoltativamente l'impostazione della qualità. Questo mappa la qualità di compressione Lossy WebP.


CompressionMode get_compression_mode() const 🔗

Restituisce la modalità di compressione utilizzata (valida dopo l'inizializzazione).


Format get_format() const 🔗

Restituisce il formato immagine utilizzato (valido dopo l'inizializzazione).


bool is_keeping_all_compressed_buffers() static 🔗

Restituisce se il flag è sovrascritto per tutte le texture di questo tipo.


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

Imposta i parametri del compressore per la compressione Basis Universal. Consulta anche le impostazioni in ResourceImporterTexture.

Nota: Ciò deve essere impostato prima di create_from_image() per avere effetto.


void set_keep_all_compressed_buffers(keep: bool) static 🔗

Sovrascrive il flag globalmente per tutte le texture di questo tipo. È utilizzato principalmente dall'editor.