Version: 2021.3
public Color GetPixel (int x, int y, int mipLevel= 0);

参数

x X coordinate of the pixel to set.
y Y coordinate of the pixel to set.
mipLevel Mip level to sample, must be in the range [0, mipCount[.

返回

Color Pixel color sampled.

描述

返回坐标 (x, y) 上的像素颜色。

If the pixel coordinates are out of bounds (larger than width/height or smaller than 0), they will be clamped or repeated based on the texture's wrap mode.

纹理坐标从左下角开始。

如果您从纹理读取大像素块, 使用 GetPixels32GetPixels 可能更快,它返回整块像素颜色。

Texture.isReadable must be true. GetPixel is not available on Textures using Crunch texture compression.

另请参阅:GetPixels32GetPixelsSetPixelGetPixelBilinear

// Sets the y coordinate of the transform to follow the heightmap
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public Texture2D heightmap; public Vector3 size = new Vector3(100, 10, 100);

void Update() { int x = Mathf.FloorToInt(transform.position.x / size.x * heightmap.width); int z = Mathf.FloorToInt(transform.position.z / size.z * heightmap.height); Vector3 pos = transform.position; pos.y = heightmap.GetPixel(x, z).grayscale * size.y; transform.position = pos; } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961