Объявление
public void SetPixels(Color[] colors, CubemapFace face, int miplevel);public void SetPixels(Color[] colors, CubemapFace face);
Параметры
colors | Пиксельные данные для лица Cubemap. |
face | Лицо, к которому должны быть применены новые данные. |
miplevel | Уровень MIP-карты для лица. |
Описание
Задает цвета пикселей грани кубической карты.
Этот метод берет массив цветов и изменяет цвета пикселей всей поверхности кубической карты. Вызовите Apply, чтобы фактически загрузить измененные пиксели на видеокарту.
Массив colors
— это сглаженный двумерный массив, в котором пиксели располагаются справа налево и сверху вниз (т. е. ряд за рядом). Размер массива должен быть не меньше ширины на высоту используемого мип-уровня. Уровень MIP по умолчанию равен нулю (базовая текстура), и в этом случае размер равен размеру текстуры. В общем случае размер мип-уровня равен mipSize=max(1,width>>miplevel)
.
Этот метод работает только с RGBA32
, ARGB32
, RGB24
и Форматы текстур Alpha8
. Для других форматов SetPixels
игнорируется.
SetPixels
создает исключение в случае сбоя.
Смотрите так же: GetPixels, SetPixelData, Apply, mipmapCount.
// копируем текстуру на +X грань кубической карты
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour
{
public Cubemap c;
public Texture2D t;
private Color[] CubeMapColors;
void Example()
{
CubeMapColors = t.GetPixels();
c.SetPixels(CubeMapColors, CubemapFace.PositiveX);
c.Apply();
}
}