:github_url: hide .. _class_PortableCompressedTexture2D: PortableCompressedTexture2D =========================== **Eredita:** :ref:`Texture2D` **<** :ref:`Texture` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` Fornisce una texture compressa per disco e/o VRAM in modo che sia portabile. .. rst-class:: classref-introduction-group 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. .. rst-class:: classref-reftable-group Proprietà ------------------ .. table:: :widths: auto +-------------------------------+--------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`keep_compressed_buffer` | ``false`` | +-------------------------------+--------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+ | :ref:`bool` | resource_local_to_scene | ``false`` (overrides :ref:`Resource`) | +-------------------------------+--------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`size_override` | ``Vector2(0, 0)`` | +-------------------------------+--------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group Metodi ------------ .. table:: :widths: auto +--------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`create_from_image`\ (\ image\: :ref:`Image`, compression_mode\: :ref:`CompressionMode`, normal_map\: :ref:`bool` = false, lossy_quality\: :ref:`float` = 0.8\ ) | +--------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`CompressionMode` | :ref:`get_compression_mode`\ (\ ) |const| | +--------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Format` | :ref:`get_format`\ (\ ) |const| | +--------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_keeping_all_compressed_buffers`\ (\ ) |static| | +--------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_basisu_compressor_params`\ (\ uastc_level\: :ref:`int`, rdo_quality_loss\: :ref:`float`\ ) | +--------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_keep_all_compressed_buffers`\ (\ keep\: :ref:`bool`\ ) |static| | +--------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Enumerazioni ------------------------ .. _enum_PortableCompressedTexture2D_CompressionMode: .. rst-class:: classref-enumeration enum **CompressionMode**: :ref:`🔗` .. _class_PortableCompressedTexture2D_constant_COMPRESSION_MODE_LOSSLESS: .. rst-class:: classref-enumeration-constant :ref:`CompressionMode` **COMPRESSION_MODE_LOSSLESS** = ``0`` .. container:: contribute There is currently no description for this enum. Please help us by `contributing one `__! .. _class_PortableCompressedTexture2D_constant_COMPRESSION_MODE_LOSSY: .. rst-class:: classref-enumeration-constant :ref:`CompressionMode` **COMPRESSION_MODE_LOSSY** = ``1`` .. container:: contribute There is currently no description for this enum. Please help us by `contributing one `__! .. _class_PortableCompressedTexture2D_constant_COMPRESSION_MODE_BASIS_UNIVERSAL: .. rst-class:: classref-enumeration-constant :ref:`CompressionMode` **COMPRESSION_MODE_BASIS_UNIVERSAL** = ``2`` .. container:: contribute There is currently no description for this enum. Please help us by `contributing one `__! .. _class_PortableCompressedTexture2D_constant_COMPRESSION_MODE_S3TC: .. rst-class:: classref-enumeration-constant :ref:`CompressionMode` **COMPRESSION_MODE_S3TC** = ``3`` .. container:: contribute There is currently no description for this enum. Please help us by `contributing one `__! .. _class_PortableCompressedTexture2D_constant_COMPRESSION_MODE_ETC2: .. rst-class:: classref-enumeration-constant :ref:`CompressionMode` **COMPRESSION_MODE_ETC2** = ``4`` .. container:: contribute There is currently no description for this enum. Please help us by `contributing one `__! .. _class_PortableCompressedTexture2D_constant_COMPRESSION_MODE_BPTC: .. rst-class:: classref-enumeration-constant :ref:`CompressionMode` **COMPRESSION_MODE_BPTC** = ``5`` .. container:: contribute There is currently no description for this enum. Please help us by `contributing one `__! .. _class_PortableCompressedTexture2D_constant_COMPRESSION_MODE_ASTC: .. rst-class:: classref-enumeration-constant :ref:`CompressionMode` **COMPRESSION_MODE_ASTC** = ``6`` .. container:: contribute There is currently no description for this enum. Please help us by `contributing one `__! .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Descrizioni delle proprietà ------------------------------------------------------ .. _class_PortableCompressedTexture2D_property_keep_compressed_buffer: .. rst-class:: classref-property :ref:`bool` **keep_compressed_buffer** = ``false`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_keep_compressed_buffer**\ (\ value\: :ref:`bool`\ ) - :ref:`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 :ref:`create_from_image()` for this to work. .. rst-class:: classref-item-separator ---- .. _class_PortableCompressedTexture2D_property_size_override: .. rst-class:: classref-property :ref:`Vector2` **size_override** = ``Vector2(0, 0)`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_size_override**\ (\ value\: :ref:`Vector2`\ ) - :ref:`Vector2` **get_size_override**\ (\ ) Allows overriding the texture's size (for 2D only). .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Descrizioni dei metodi -------------------------------------------- .. _class_PortableCompressedTexture2D_method_create_from_image: .. rst-class:: classref-method |void| **create_from_image**\ (\ image\: :ref:`Image`, compression_mode\: :ref:`CompressionMode`, normal_map\: :ref:`bool` = false, lossy_quality\: :ref:`float` = 0.8\ ) :ref:`🔗` 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. .. rst-class:: classref-item-separator ---- .. _class_PortableCompressedTexture2D_method_get_compression_mode: .. rst-class:: classref-method :ref:`CompressionMode` **get_compression_mode**\ (\ ) |const| :ref:`🔗` Restituisce la modalità di compressione utilizzata (valida dopo l'inizializzazione). .. rst-class:: classref-item-separator ---- .. _class_PortableCompressedTexture2D_method_get_format: .. rst-class:: classref-method :ref:`Format` **get_format**\ (\ ) |const| :ref:`🔗` Restituisce il formato immagine utilizzato (valido dopo l'inizializzazione). .. rst-class:: classref-item-separator ---- .. _class_PortableCompressedTexture2D_method_is_keeping_all_compressed_buffers: .. rst-class:: classref-method :ref:`bool` **is_keeping_all_compressed_buffers**\ (\ ) |static| :ref:`🔗` Returns ``true`` if the flag is overridden for all textures of this type. .. rst-class:: classref-item-separator ---- .. _class_PortableCompressedTexture2D_method_set_basisu_compressor_params: .. rst-class:: classref-method |void| **set_basisu_compressor_params**\ (\ uastc_level\: :ref:`int`, rdo_quality_loss\: :ref:`float`\ ) :ref:`🔗` Sets the compressor parameters for Basis Universal compression. See also the settings in :ref:`ResourceImporterTexture`. \ **Note:** This method must be called before :ref:`create_from_image()` for this to work. .. rst-class:: classref-item-separator ---- .. _class_PortableCompressedTexture2D_method_set_keep_all_compressed_buffers: .. rst-class:: classref-method |void| **set_keep_all_compressed_buffers**\ (\ keep\: :ref:`bool`\ ) |static| :ref:`🔗` If ``keep`` is ``true``, overrides the flag globally for all textures of this type. This is used primarily by the editor. .. |virtual| replace:: :abbr:`virtual (Questo metodo dovrebbe solitamente essere sovrascritto dall'utente per aver un effetto.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (Questo metodo non ha effetti collaterali. Non modifica alcuna variabile appartenente all'istanza.)` .. |vararg| replace:: :abbr:`vararg (Questo metodo accetta qualsiasi numero di argomenti oltre a quelli descritti qui.)` .. |constructor| replace:: :abbr:`constructor (Questo metodo è utilizzato per creare un tipo.)` .. |static| replace:: :abbr:`static (Questo metodo non necessita di alcun'istanza per essere chiamato, quindi può essere chiamato direttamente usando il nome della classe.)` .. |operator| replace:: :abbr:`operator (Questo metodo descrive un operatore valido da usare con questo tipo come operando di sinistra.)` .. |bitfield| replace:: :abbr:`BitField (Questo valore è un intero composto da una maschera di bit dei seguenti flag.)` .. |void| replace:: :abbr:`void (Nessun valore restituito.)`