天天看點

GetPixels函數獲得的資料和紋理的對應

GetPixels函數獲得的資料和紋理的對應

在PS中畫了4x4像素的圖來測試獲得的數組資料。

除了上面的藍色和綠色用來區分方向,其他點都是紅色的。

GetPixels函數獲得的資料和紋理的對應

左上角的alpha是1,然後藍色少0.0625,綠色再少0.0625

放在Unity中

GetPixels函數獲得的資料和紋理的對應
GetPixels函數獲得的資料和紋理的對應

我把Format改成了RGBA32

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class pointtest : MonoBehaviour
{
    // Start is called before the first frame update
    SpriteRenderer render;
    void Start()
    {
         render = GetComponent<SpriteRenderer>();

        Color[] col = render.sprite.texture.GetPixels();
        for (int i = 0; i < col.Length; i++)
        {
            Debug.Log(col[i].ToString());
        }
    }

}

           

得到的資料

GetPixels函數獲得的資料和紋理的對應

是以GetPixels得到的紋理就是左下角第一個點是0,0點。