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]);