GLSL三種基本類型
**attribute:**
1)只在頂點著色器中使用。
2)一般用于表示頂點坐標、紋理坐標等。
3)使用bindAttributeLocation來設置變量在著色器程序中參數列表的索引。
4)使用glVertexAttribPointer來設置attribute的數值。
**uniform:**
1)uniform是由外部程序傳遞給頂點著色器和片元著色器的變量。
2)當頂點著色器和片元著色器聲明了一個完全一樣的unifrom變量,則兩者都可以訪問到數據,但不能修改,相當于只讀全局變量。
3)一般情況下用于表示材質數據。
**varing:**
1)用于頂點著色器和片元著色器之間傳遞的變量。
2)由頂點著色器賦值,片元著色器只讀。
3)二者的聲明必須完全一直,外部程序不能使用該變量。