GLSL学习

GLSL对变量的要求十分严格

错:int myvar = 12.0 * 3;

对:int myvar = int(12.0) * 3;

对分号的使用也十分严格,如果缺少一个着色器,则不会编译该着色器

vec类

vec2 v=vec2(0.5);

//可以使用v.x = 0.5和v.y = 0.5来访问它们,并且可以对变量使用所有算术运算符

vec3 v=vec3(1.0);

//所有值都是浮点值

//如果想使用整数 加ivec

ivec2 i1 = ivec2(1,2);

ivec3 i2 = ivec3(12,13,14);

ivec4 i3 = ivec4(75,76,77,78);

//布尔

bvec2 b2 = bvec2(true, false); // 2个布尔值

bvec3 b3 = bvec3(v1 > 0.5, v2 < 0.2, true); // 动态赋值

bvec4 b4 = bvec4(true); // 所有分量 = true