glsl例子

1.函數(shù)

precision lowp float;? //不指定精度會(huì)報(bào)錯(cuò)

vec4 color2(){

? ? vec4 v4 =? vec4(1.0,0.0,0.0,1.0);

? ? return v4;

}

void main(){

? ? if(true) {

? ? ? ? gl_FragColor=? color2();

? ? }else{

?? ? ? ? gl_FragColor=? vec4(1.0,1.0,1.0,1.0);

? ? }

}

2.結(jié)構(gòu)體

struct myVec4{

? ? float fl;

? ? vec4 v4;

}; //注意結(jié)構(gòu)體有分號(hào)

void main(){

? ? myVec4 myV= myVec4(2.0,vec4(1.0,1.0,1.0,1.0));

? ? gl_FragColor=? myV.v4;

}

3.for循環(huán)

? int temp =0;

? ? for(int i=0; i<2; i++) {

? ? ? ? temp++;

? ? }

if(temp==2) {

?? ? ? ? gl_FragColor=? myV.v4;

? ? }

4.數(shù)組

? floatc[4];?數(shù)組不能在聲明時(shí)被一次性地初始化,而必須顯式地對(duì)每個(gè)元素進(jìn)行初始化

? ? c[0] =1.0; ?

? ? c[1] =1.0;

? ? c[2] =1.0;

? ? c[3] =1.0;

? ? ?gl_FragColor=vec4(c[0],c[1],c[2],c[3]);

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容