現在マウスポインターの下にあるピクセルの色を取得したい。
私はこのコードを思いつきましたが、Texture2d.GetPixel が浮動小数点数で機能しないため、これは正確な位置を示しません。このコードは色を提供しますが、Texture2D.GetPixel は float を処理できないため、値を整数にキャストする必要があるため、正確なマウス位置の色は提供しません。
Texture2D texture;
public Color ColorBelowMouse;
public Vector3 x;
// Use this for initialization
void Start ()
{
texture=gameObject.GetComponent<GUITexture>().texture as Texture2D;
}
// Update is called once per frame
void Update ()
{
Debug.Log(texture.GetPixel((int) Input.mousePosition.x, (int) Input.mousePosition.y));
ColorBelowMouse=texture.GetPixel( (int) Input.mousePosition.x, (int) Input.mousePosition.y);
}
正確なマウス位置の色を取得する方法を教えてください。
私のアプローチが間違っている場合は、正しいアプローチを教えてください。