miplevel | The mip level to read pixel data from. The default is 0 . |
Color[] An array that contains a copy of the requested pixel colors, represented by Color structs.
Retrieves a copy of the the pixel color data for a given mip level. The colors are represented by Color structs.
A single call to this function is usually faster than multiple calls to GetPixel, especially for large textures. If a lower-precision representation is acceptable, GetPixels32 is faster and uses less memory because it does not perform integer-to-float conversions.
For this function to succeed, Texture.isReadable must be true
and the data must not be Crunch compressed. GetPixels32 supports Crunch compressed textures.
The returned array is a flattened 2D array, where the data appears row by row: the pixels are laid out left to right, bottom to top. The dimensions of the array are width * height
of the mip level.
using UnityEngine;
public class Texture3DExample : MonoBehaviour { public Texture3D source; public Texture3D destination;
void Start() { // Get a copy of the color data from the source Texture3D, in high-precision float format. // Each element in the array represents the color data for an individual pixel. int sourceMipLevel = 0; Color[] pixels = source.GetPixels(sourceMipLevel);
// If required, manipulate the pixels before applying them to the destination texture. // This example code reverses the array, which rotates the image 180 degrees. System.Array.Reverse(pixels, 0, pixels.Length);
// Set the pixels of the destination Texture3D. int destinationMipLevel = 0; destination.SetPixels(pixels, destinationMipLevel);
// Apply changes to the destination Texture3D, which uploads its data to the GPU. destination.Apply(); } }
See Also: SetPixel, SetPixels, SetPixels32, GetPixel, GetPixelBilinear, GetPixels32, GetPixelData, Apply functions.