opengl GLSL基本语法 学习 随笔二

1、首先介绍一下GLSL的数据类型,如果你学过c++,那么一定不会陌生。

float double int uint bool型几个数据类型;基本上从字面上就能理解这几个数据类型的含义。

2、变量的使用与c++也是一样,先声明,再定义使用。包括全局变量与局部变量均与c++相同。

3、变量可在声明时直接初始化。例如:

int i,o = 5;
如果是float 类型可在后面加上f或F,如果是double类型可在后面加上LF。

4、GLSL几乎不允许类型隐式转换,例如:

int i = false;
这种写法是错的.

5、可以隐式转换的类型包括转换之后的类型有:

目的类型         源类型

uint                  int

float                 int,uint

double             int,uint,float

6、对于需要类型转换的类型可用强制类型转换。

float i = 10.0;
int g = int(i);
7、在矩阵类型中mat4*3表示4列3行的矩阵,GLSL中列优先。

(
    1,2,3,4,5,6,7,8,9,
);
表示1 4 7

       2 5 8

       3 6 9.

8、调用向量或数组中的一个元素时,可使用[]或.的形式,例如:

float i = color.r;
int t = v.y;

float i = color[0];
int t = v[1];
上述两种表述方式都可以。

9、GLSL中的几种表述方式:

position (x,y,z,w);

color (r,g,b,a);

texture coordinates(s,t,p,q);

10、GLSL还提供一种特殊的赋值方式:

vec3 = color.rrr;

vec4 t = color.abgr;

vec4 q = m[4];
这两种方式都可以,并且说明了GLSL的表述方式;其中最后一句表示m的第四列赋值给q。

11、array,matrices和vectors都拥有一个共同的方法,length();


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
NEHE的OPENGL教程 第42课 多视窗口… NEHE的OPENGL教程 第42课 多视窗口… NeHe的OPENGL中文教程:第41课 体… NeHe的OPENGL中文教程:第40课 绳… NeHe的OPENGL中文教程:第39课 物… NeHe的OPENGL中文教程:第39课 物… NeHe的OPENGL中文教程:第38课 从… NeHe的OPENGL中文教程:第37课 卡… 愚人节十大IT假新闻:Opera浏览器… NeHe的OPENGL中文教程:第36课 放… NeHe的OPENGL中文教程:第35课 AVI… NeHe的OPENGL中文教程:第35课 AVI… NeHe的OPENGL中文教程:第34课 从… NeHe的OPENGL中文教程:第33课 加… NeHe的OPENGL中文教程:第32课 Alp… NeHe的OPENGL中文教程:第32课 Alp… NeHe的OPENGL中文教程:第32课 Alp… NeHe的OPENGL中文教程:第31课 模… NEHE的OPENGL中文教程:第30课 碰… NEHE的OPENGL中文教程:第30课 碰… NeHe的OPENGL中文教程:第29课 Bli… NeHe的OPENGL中文教程:第28课 贝… NeHe的OPENGL中文教程:第27课 影… NeHe的OPENGL中文教程:第26课剪裁… NeHe的OPENGL中文教程:第25课 变… NeHe的OPENGL中文教程:第24课 TAG… NeHe的OPENGL中文教程:第23课 球… NeHe的OPENGL中文教程:第22课 凸… NeHe的OPENGL中文教程:第22课 凸… NeHe的OPENGL中文教程:第21课 反… NeHe的OPENGL中文教程:第21课 反… NeHe的OPENGL中文教程:第20课 蒙… NeHe的OPENGL中文教程:第19课 粒… NeHe的OPENGL中文教程:第18课 … NeHe的OPENGL中文教程:第17课 2D… NeHe的OPENGL中文教程:第16课 雾 NeHe的OPENGL中文教程:第15课 图… NeHe的OPENGL中文教程:第14课 图… NeHe的OPENGL中文教程:第13课 位… NeHe的OPENGL中文教程:第12课 显… NeHe的OPENGL中文教程:第11课 飘… NeHe的OPENGL中文教程:第十课 漫… NeHe的OPENGL中文教程:第九课 漂… NeHe的OPENGL中文教程:第八课 Alp… NeHe的OPENGL中文教程:第七课 纹… NeHe的OPENGL中文教程:第七课 纹… NeHe的OPENGL中文教程:第六课 纹… NeHe的OPENGL中文教程:第五课 向3… NeHe的OPENGL中文教程:第四课 旋… NeHe的OPENGL中文教程:第三课 着… NeHe的OPENGL中文教程:第课 多… NeHe的OPENGL中文教程:第一课 新… NeHe的OPENGL中文教程:第一课 新… DirectX与OpenGL方面的经典电子书… VC++ 6.0下OpengGL配置以及glut配… 怎样开始学习OpenGL
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值