PortableCompressedTexture2D
Предоставляет сжатую текстуру для диска и/или видеопамяти в переносимом виде.
Предоставляет сжатую текстуру для диска и/или видеопамяти в переносимом виде.
Этот класс позволяет хранить сжатые текстуры как автономные (не импортируемые) ресурсы. Для 2D-использования (сжатые на диске, несжатые в VRAM) рекомендуются режимы с потерями и без потерь. Для 3D-использования (сжатые в VRAM) это зависит от целевой платформы. Если вы собираетесь использовать только настольные компьютеры, рекомендуются S3TC или BPTC. Только для мобильных устройств рекомендуется ETC2. Для портативных автономных 3D-текстур, которые работают как на настольных компьютерах, так и на мобильных устройствах, рекомендуется Basis Universal (хотя он имеет небольшую стоимость качества и более длительное время сжатия в качестве компромисса). Этот ресурс предназначен для создания из кода.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
PortableCompressedTexture2DКонструктор
public PortableCompressedTexture2D();Свойства3
KeepCompressedBufferСвойство
public bool KeepCompressedBuffer { get; set; }Если true, то при запуске в редакторе эта текстура будет хранить сжатые исходные данные в памяти, что позволит данным сохраняться после загрузки. В противном случае сжатые исходные данные теряются после загрузки, и текстуру нельзя будет сохранить повторно.
Примечание: Для корректной работы этого свойства его необходимо установить перед PortableCompressedTexture2D.CreateFromImage.
SizeOverrideСвойство
public Vector2 SizeOverride { get; set; }Позволяет изменить размер текстуры (только для 2D).
_DataСвойство
public byte[] _Data { get; set; }Методы9
CreateFromImagevoid
public void CreateFromImage(Image image, PortableCompressedTexture2D.CompressionMode compressionMode, bool normalMap = false, float lossyQuality = 0.8f);Инициализирует сжатую текстуру из базового изображения. Необходимо указать режим сжатия.
normal_map рекомендуется для обеспечения оптимального качества, если это изображение будет использоваться как карта нормалей.
Если запрашивается сжатие с потерями, можно указать настройку качества. Это соответствует качеству сжатия WebP с потерями.
| Имя | Тип | По умолчанию |
|---|---|---|
image | Image | — |
compressionMode | PortableCompressedTexture2D.CompressionMode | — |
normalMap | bool | false |
lossyQuality | float | 0.8f |
GetCompressionModePortableCompressedTexture2D.CompressionMode
public PortableCompressedTexture2D.CompressionMode GetCompressionMode();Возвращает используемый режим сжатия (действителен после инициализации).
PortableCompressedTexture2D.CompressionModeGetSizeOverrideVector2
public Vector2 GetSizeOverride();Vector2IsKeepingAllCompressedBuffersbool
public static bool IsKeepingAllCompressedBuffers();Возвращает true, если флаг переопределен для всех текстур этого типа.
boolIsKeepingCompressedBufferbool
public bool IsKeepingCompressedBuffer();boolSetBasisuCompressorParamsvoid
public void SetBasisuCompressorParams(int uastcLevel, float rdoQualityLoss);Устанавливает параметры компрессора для сжатия Basis Universal. См. также настройки в ResourceImporterTexture.
Примечание: Для корректной работы этот метод необходимо вызвать перед PortableCompressedTexture2D.CreateFromImage.
| Имя | Тип | По умолчанию |
|---|---|---|
uastcLevel | int | — |
rdoQualityLoss | float | — |
SetKeepAllCompressedBuffersvoid
public static void SetKeepAllCompressedBuffers(bool keep);Если keep имеет значение true, то этот флаг переопределяется глобально для всех текстур этого типа. В основном это используется редактором.
| Имя | Тип | По умолчанию |
|---|---|---|
keep | bool | — |
SetKeepCompressedBuffervoid
public void SetKeepCompressedBuffer(bool keep);| Имя | Тип | По умолчанию |
|---|---|---|
keep | bool | — |
SetSizeOverridevoid
public void SetSizeOverride(Vector2 size);| Имя | Тип | По умолчанию |
|---|---|---|
size | Vector2 | — |