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

Объявление

public Color[] GetPixels(int arrayElement, int miplevel);

public Color[] GetPixels(int arrayElement);

Параметры

arrayElement Срез массива, из которого считываются данные пикселей.
miplevel MIP-уровень, с которого считываются пиксельные данные. По умолчанию используется 0.

Возвращает

Color[] Массив, содержащий копию запрошенных цветов пикселей.

Описание

Получает копию данных о цвете пикселя для заданного уровня MIP данного фрагмента. Цвета представлены структурами Color.

Один вызов этой функции обычно быстрее, чем несколько вызовов GetPixel, особенно для больших текстур. Если допустимо представление с более низкой точностью, GetPixels32 работает быстрее и использует меньше памяти, поскольку не выполняет преобразования целых чисел в числа с плавающей запятой. Для прямого просмотра данных пикселей используйте GetPixelData.

Для успешного выполнения этой функции Texture.isReadable должно быть true, а данные не должны быть сжаты Crunch. GetPixels32 поддерживает сжатые текстуры Crunch.

Возвращенный массив представляет собой сглаженный двумерный массив, в котором данные отображаются построчно: пиксели располагаются слева направо и снизу вверх. Размеры массива составляют width * height мип-уровня. Если эта функция не работает, Unity выдает исключение.

using UnityEngine; public class Texture2DArrayExample : MonoBehaviour { public Texture2DArray source; public Texture2DArray destination; void Start() { // Получить копию данных о цвете из источника Texture2DArray в высокоточном плавающем формате. // Каждый элемент массива представляет данные о цвете отдельного пикселя. int sourceSlice = 0; int sourceMipLevel = 0; Color[] pixels = source.GetPixels(sourceSlice, sourceMipLevel); // При необходимости поработайте с пикселями, прежде чем применять их к целевому объекту Texture2DArray. // This example code reverses the array, which rotates the image 180 degrees. System.Array.Reverse(pixels, 0, pixels.Length); // Установить пиксели целевого Texture2DArray. int destinationSlice = 0; int destinationMipLevel = 0; destination.SetPixels(pixels, destinationSlice, destinationMipLevel); // Применить изменения к целевому объекту Texture2DArray, который загружает свои данные в графический процессор. destination.Apply(); } }

Смотрите так же: GetPixels32, GetPixelData, SetPixels, Graphics.CopyTexture.

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3