Cg入门3:数据类型和swizzle操作

来源:互联网 发布:申通面单打印软件 编辑:程序博客网 时间:2024/06/14 16:52
知识点:
1.向量
2.Swizzle操作
3.矩阵
4.数组
5.结构体



结构体定义:

结构体使用:


比如:float4  f3=float4(0,1,1) ; 
swizzle:使用“.”来取值操作。可以用xyzw,也可以用rgba,但是xyzw和rgba不能同时使用。如:f3.xyrg   这样就错了

特性1:利用swizzle取f3中的y值f3.y
特性2:如果是取x,y 那么就是f3.xy
特性3:如果想用f3来赋值float4 f4 ,由于f3没有w值,就不能用f4 = f3.xyzw ,就可以用f4 = f3.xyzz 最后一位可以是xyz随意一个,也可以是x,y,z 任意组合的一个四阶向量,比如:f3.xxxx、f3.yyxx
特性4:swizzle.xyzw 取值顺序可以颠倒,f3.zyx 取值为(1,1,0)

注意事项:
1.只有向量可以使用swizzle操作

cg语言:数据结构、数组、宏定义等基本和C语言无差别
0 0
原创粉丝点击