1、GLSL中的( 结构体 )可以包含不同类型的数据,其语法格式与 C 语言是一样的。
如果没有C语言的基础,可以先通过以下的链接进行学习:
例子:
struct Test
{
float A;
int B;
vec4 vc;
mat4 mt;
};
Test t;
t.vc = vec4( 1.0,2.0,3.0,1.0 );
t.A = 2.0;
分析:
(1)通过struct关键字定义了结构体Test。
(2)结构体中包含了不同类型的成员,
分别有浮点型的A,整型的B,向量vc以及矩阵mt
(3)然后,通过结构体Test定义了结构体变量t。
(4)通过 t 调用成员vc并进行赋值,赋值类型是vec4,
并通过小括号包含4个浮点数。
(5)通过 t 调用成员A并赋值为2.0。
不要停留在理论规则上面,快动起来吧!
大家可以通过下方的按钮下载代码与实践训练。
(通过真实的开发环境,进行代码的编程训练)