Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Объявление

public void SetPixelData(T[] data, int mipLevel, CubemapFace face, int element, int sourceDataStartIndex = 0);

public void SetPixelData(NativeArray data, int mipLevel, CubemapFace face, int element, int sourceDataStartIndex = 0);

Параметры

mipLevel Мип уровень для заполнения.
element Срез массива, в который копируются пиксели.
sourceDataStartIndex Индекс в исходном массиве, с которого начинается копирование (по умолчанию 0).
face Грань кубической карты для заполнения.
data Массив данных для инициализации пикселей текстуры.

Описание

Установите значения пикселей из необработанных предварительно отформатированных данных.

Эта функция заполняет память пикселей текстуры одного уровня MIP, одной грани кубической карты и одного элемента массива необработанными данными. Это полезно, если вы хотите загрузить в текстуру сжатые или другие данные формата текстуры, не относящиеся к цвету.

Вы должны сделать передаваемые данные требуемого размера, чтобы заполнить весь уровень mip текстуры в соответствии с ее шириной, высотой и форматом данных. В противном случае Unity выдает исключение.

Вызовите Apply после установки данных изображения, чтобы загрузить их в GPU.

SetPixelData создает исключение в случае сбоя.

Смотрите так же: SetPixels, GetPixelData, ::Apply.

using UnityEngine; public class ExampleScript : MonoBehaviour { public CubemapArray texture; public void Start() { texture = new CubemapArray(2, 2, TextureFormat.RGB24, true); var data = new byte[] { // mip 0: 2x2 size 255, 0, 0, // red 0, 255, 0, // green 0, 0, 255, // blue 255, 255, 255, // white // mip 1: 1x1 size 255, 255, 0 // yellow }; texture.SetPixelData(data, 0, CubemapFace.PositiveX, 0, 0); texture.SetPixelData(data, 1, CubemapFace.PositiveX, 0, 12); texture.Apply(updateMipmaps: false); } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3