U3d Shader语法教程3:Cg/HLSL 数值类型篇

类型 精度
float 最高精度浮点值,32位存储
half 中等精度浮点值,16位存储 ,范围: -60000 ~ +60000
fixed 最低精度浮点值,11位存储,范围:-2.0 ~ +2.0

定义变量

float4 f4;
float3 f3;
float2 f2;
float4 f;

half4 h4;
half3 h3;
half2 h2;
half h;

fixed4 i4;
fixed3 i3;
fixed2 i2;
fixed i;

使用变量

float4 f4;
f4.x += 0.1f;
f4.y += 0.1f;
f4.z += 0.1f;
f4.w += 0.1f;
                
f4.xy += 0.1f;//等价于 f4.x += 0.1f;   f4.y += 0.1f;
依次类推
f4.xyz += 0.1f;
f4.xyzw += 0.1f;

rgba 对应 xyzw  所以也可以这样写
f4.r += 0.1f;
f4.g += 0.1f;
f4.b += 0.1f;
f4.a += 0.1f;

f4.rg += 0.1f;
f4.rgb += 0.1f;
f4.rgba += 0.1f;


float3 f3   对应  xyz 或者 rgb
loat2 f2   对应  xy 或者 rg

一般为了便于阅读,颜色使用rgba访问    坐标则使用 xyzw
float4 color;
color.r += 0.5;

float2 pos;
pos.x += 10;

你可能感兴趣的:(U3d Shader语法教程3:Cg/HLSL 数值类型篇)