本篇在讲什么 本篇记录GLSL中的一些类型和定义方式 本篇适合什么 适合初学OpenGL的小白 本篇需要什么 对C++语法有简单认知 对OpenGL有简单认知 最好是有OpenGL超级宝典蓝宝书 依赖Visual Studio编辑器 本篇的特色 具有全流程的图文教学 重实践,轻理论,快速上手 提供全流程的源码内容 |
★提高阅读体验★ ♠ 一级标题♥ 二级标题♣ 三级标题♦ 四级标题 |
类型 | 定义 |
---|---|
bool | 布尔值,true或者false |
float | IEEE-754格式的32位浮点数 |
double | IEEE-754格式的64位浮点数 |
int | 32位二补数有符号整数 |
unsigned int | 32位无符号整数 |
大小 | 标量类型 | ||||
标量 | bool | float | double | int | unsigned int |
2元向量 | bvec2 | vec2 | dvec2 | ivec2 | uvec2 |
3元向量 | bvec3 | vec3 | dvec3 | ivec3 | uvec3 |
4元向量 | bvec4 | vec4 | dvec4 | ivec4 | uvec4 |
2x2矩阵 | —— | mat2 | dmat2 | —— | —— |
2x3矩阵 | —— | mat2x3 | dmat2x3 | —— | —— |
2x4矩阵 | —— | mat2x4 | dmat2x4 | —— | —— |
3x2矩阵 | —— | mat3x2 | dmat3x2 | —— | —— |
3x3矩阵 | —— | mat3 | dmat3 | —— | —— |
3x4矩阵 | —— | mat3x4 | dmat3x4 | —— | —— |
4x2矩阵 | —— | mat4x2 | dmat4x2 | —— | —— |
4x3矩阵 | —— | mat4x3 | dmat4x3 | —— | —— |
4x4矩阵 | —— | mat4 | dmat4 | —— | —— |
数组存在两种生命方式
float foo[5]
ivec2 bar[13]
dmat3 baz[29)
float[5] foo
ivec2[13] bar
dmat3[29) baz
数组的赋值也有两种方式
float[6] var = float[6](1.0,2.0,3.0,4.0,5.0,6.0);
float var[6] = { 1.0,2.0,3.0,4.0,5.0,6.0};
GLSL中没有多维数组,但可以数组内套数组
float a[10];
float b[10][2];
float c[10][2][5];
https://github.com/KingSun5
若是觉得博主的文章写的不错,不妨关注一下博主,点赞一下博文,另博主能力有限,若文中有出现什么错误的地方,欢迎各位评论指摘。