Opengl es2.0 学习笔记(四)shader语法 GLSL



一、变量

GLSL的变量命名方式与C语言类似。变量的名称可以使用字母,数字以及下划线,但变量名不能以数字开头,还有变量名不能以gl_作为前缀,这个是GLSL保留的前缀,用于GLSL的内部变量。当然还有一些GLSL保留的名称是不能够作为变量的名称的。


二、基本类型

除了布尔型,整型,浮点型基本类型外,GLSL还引入了一些在着色器中经常用到的类型作为基本类型。这些基本类型都可以作为结构体内部的类型。如下表:

类型描述
void跟C语言的void类似,表示空类型。作为函数的返回类型,表示这个函数不返回值。
bool布尔类型,可以是true 和false,以及可以产生布尔型的表达式。
int整型 代表至少包含16位的有符号的整数。可以是十进制的,十六进制的,八进制的。
float浮点型
bvec2包含2个布尔成分的向量
bvec3包含3个布尔成分的向量
bvec4包含4个布尔成分的向量
ivec2包含2个整型成分的向量
ivec3包含3个整型成分的向量
ivec4包含4个整型成分的向量
mat2 或者 mat2x22×2的浮点数矩阵类型
mat3或者mat3x33×3的浮点数矩阵类型
mat4x44×4的浮点矩阵
mat2x32列3行的浮点矩阵(OpenGL的矩阵是列主顺序的)
mat2x42列4行的浮点矩阵
mat3x23列2行的浮点矩阵
mat3x43列4行的浮点矩阵
mat4x24列2行的浮点矩阵
mat4x34列3行的浮点矩阵
sampler1D用于内建的纹理函数中引用指定的1D纹理的句柄。只可以作为一致变量或者函数参数使用
sampler2D二维纹理句柄
sampler3D三维纹理句柄
samplerCubecube map纹理句柄
sampler1DShadow一维深度纹理句柄
sampler2DShadow二维深度纹理句柄

三、结构体

结构体可以组合基本类型和数组来形成用户自定义的类型。在定义一个结构体的同时,你可以定义一个结构体实例。或者后面再定义。

四、数组

五、修饰符

六、内置变量

七、操作符

八、数组访问

九、构造函数

十、成分选择

十一、控制流

十二、函数

内置函数列表:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程小鱼酱

用心写好每一篇博客

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值