스크립트에서만 3D 텍스처를 생성할 수 있습니다. 다음은 X, Y, Z 축이 각각 빨간색, 녹색, 파란색 컬러 값에 해당하는 3D 텍스처를 생성하는 코드 예제입니다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Example : MonoBehaviour
{
Texture3D texture;
void Start ()
{
texture = CreateTexture3D (256);
}
Texture3D CreateTexture3D (int size)
{
Color[] colorArray = new Color[size * size * size];
texture = new Texture3D (size, size, size, TextureFormat.RGBA32, true);
float r = 1.0f / (size - 1.0f);
for (int x = 0; x < size; x++) {
for (int y = 0; y < size; y++) {
for (int z = 0; z < size; z++) {
Color c = new Color (x * r, y * r, z * r, 1.0f);
colorArray[x + (y * size) + (z * size * size)] = c;
}
}
}
texture.SetPixels (colorArray);
texture.Apply ();
return texture;
}
}