1. 事情原由是這樣的。 在製做AR的底層SDK時,須要跟硬件適配反畸變。數組
因爲曲面光學模型,很差用簡單的公式描述畸變。效率
因此決定把uv畸變來實現。硬件
2. 爲了效率最高,決定直接寫入屏幕緩衝。數據
3.在攝像機後效裏,沒法傳入大量數組,因此將數據轉爲texture,而後shader中對它採樣,再分解爲能夠用數據。底層
4. 要注意,屏幕的頂點只有5個,上下左右中。 因此不要在頂點shader計算。模型
5. 咱們傳入的是uv數據,因此在像素階段的uv改變爲真正的UV。 因此要傳入足夠的uv數量,由於有畸變,不能本身計算插值。像素
因此,若是目標是1920X1080,則要傳入這麼大的texture,而後採樣的uv能夠跟屏幕像素對應。