x | 要获得像素的 x 坐标。范围为 0 至(纹理宽度 - 1)。 |
y | 要获得像素的 y 坐标。范围为 0 至(纹理高度 - 1)。 |
mip | 要采样的mipmap级别。范围为 0 至纹理的 纹理.mipmapCount。默认值为 0 。 |
face | 要采样的 立方体贴图面。 |
Color 颜色
获取坐标(x
、y
)处的像素颜色。
此方法从 CPU 内存中的纹理获取像素数据。 纹理.isReadable 必须为 true
。
面的左下角为 (0, 0)。如果像素坐标超出纹理的尺寸,Unity 将对其进行钳制或重复,具体取决于纹理的 纹理环绕模式。GetPixel
可能比其他一些纹理方法效率低,因为它将纹理使用的格式转换为 颜色。 GetPixel
还需要解压压缩纹理,并使用内存存储解压区域。若要更快地获取像素数据,请改用 GetPixelData。
如果需要获得一大块像素,使用 GetPixels 可能会更快。
无法对使用 Crunch 纹理压缩的纹理使用 GetPixel
。
其他资源: GetPixels、SetPixel。
using UnityEngine;
public class Example : MonoBehaviour { public Cubemap texture;
void Start() { // prints the color of the pixel at (0,0) of the +X face Debug.Log(texture.GetPixel(CubemapFace.PositiveX, 0, 0)); } }