Version: 2021.3
  • C#


Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.




public Color[] GetPixels();


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. The colors are represented by Color structs.

When you call this function, Unity converts the data to a float color representation.

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.

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 texture. If this function fails, Unity throws an exception.


public Color[] GetPixels(int x, int y, int blockWidth, int blockHeight);


x X coordinate of the block origin.
y Y coordinate of the block origin.
blockWidth Width of the block.
blockHeight Height of the block.


Color[] Copy of the block of pixels requested.


Get a block of pixel colors.

This function is an extended version of GetPixels. It does not return the whole Texture, only the blockWidth by blockHeight region starting at x,y. The block is limited by the size of the Texture. The size of the returned array is blockWidth*blockHeight.

Note: For depth data based WebCamTexture instances, this method returns an array of the depth values via Color.r property. See Also: WebCamTexture.isDepth.