PortableCompressedTexture2D
Наследует: Texture2D < Texture < Resource < RefCounted < Object
Предоставляет сжатую текстуру для диска и/или видеопамяти в переносимом виде.
Описание
Этот класс позволяет хранить сжатые текстуры как автономные (не импортируемые) ресурсы.
Для 2D-использования (сжатые на диске, несжатые в VRAM) рекомендуются режимы с потерями и без потерь. Для 3D-использования (сжатые в VRAM) это зависит от целевой платформы.
Если вы собираетесь использовать только настольные компьютеры, рекомендуются S3TC или BPTC. Только для мобильных устройств рекомендуется ETC2.
Для портативных автономных 3D-текстур, которые работают как на настольных компьютерах, так и на мобильных устройствах, рекомендуется Basis Universal (хотя он имеет небольшую стоимость качества и более длительное время сжатия в качестве компромисса).
Этот ресурс предназначен для создания из кода.
Свойства
|
||
resource_local_to_scene |
|
|
|
Методы
void |
create_from_image(image: Image, compression_mode: CompressionMode, normal_map: bool = false, lossy_quality: float = 0.8) |
get_compression_mode() const |
|
get_format() const |
|
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 |
Перечисления
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!
Описания свойств
bool keep_compressed_buffer = false 🔗
Если true, то при запуске в редакторе эта текстура будет хранить сжатые исходные данные в памяти, что позволит данным сохраняться после загрузки. В противном случае сжатые исходные данные теряются после загрузки, и текстуру нельзя будет сохранить повторно.
Примечание: Для корректной работы этого свойства его необходимо установить перед create_from_image().
Vector2 size_override = Vector2(0, 0) 🔗
Позволяет изменить размер текстуры (только для 2D).
Описания метода
void create_from_image(image: Image, compression_mode: CompressionMode, normal_map: bool = false, lossy_quality: float = 0.8) 🔗
Инициализирует сжатую текстуру из базового изображения. Необходимо указать режим сжатия.
normal_map рекомендуется для обеспечения оптимального качества, если это изображение будет использоваться как карта нормалей.
Если запрашивается сжатие с потерями, можно указать настройку качества. Это соответствует качеству сжатия WebP с потерями.
CompressionMode get_compression_mode() const 🔗
Возвращает используемый режим сжатия (действителен после инициализации).
Возвращает используемый формат изображения (действителен после инициализации).
bool is_keeping_all_compressed_buffers() static 🔗
Возвращает true, если флаг переопределен для всех текстур этого типа.
void set_basisu_compressor_params(uastc_level: int, rdo_quality_loss: float) 🔗
Устанавливает параметры компрессора для сжатия Basis Universal. См. также настройки в ResourceImporterTexture.
Примечание: Для корректной работы этот метод необходимо вызвать перед create_from_image().
void set_keep_all_compressed_buffers(keep: bool) static 🔗
Если keep имеет значение true, то этот флаг переопределяется глобально для всех текстур этого типа. В основном это используется редактором.