将 float4 声明从 dx9 更新为 dx11
Updating float4 declaration from dx9 to dx11
提供了一个着色器,我正在尝试更新它以与最新的 Unity 5(大概是 dx11)兼容。我不明白 dx9 的 float4 基本实例化是如何工作的。有人可以帮助我理解以下语法,然后提供等效的 dx11 语法吗?
我知道 float4 通常使用 x,y,z,w 或 xyz,y 作为参数,但是单个 float 参数有什么作用? float4(0.01) 生成 {.01,0,0,0} 还是 float4(.01) 生成 {.01,.01,.01,.01}?
来自着色器的原始代码:
float4 Multiply19 = float4( 0.01 ) * float4( 0 );
它应该创建一个新的 float4,所有成员 (xyzw) 都设置为 0.01,然后将所有乘以 0,有效地使 Multiply19 成为 (0, 0, 0, 0) float4。
提供了一个着色器,我正在尝试更新它以与最新的 Unity 5(大概是 dx11)兼容。我不明白 dx9 的 float4 基本实例化是如何工作的。有人可以帮助我理解以下语法,然后提供等效的 dx11 语法吗?
我知道 float4 通常使用 x,y,z,w 或 xyz,y 作为参数,但是单个 float 参数有什么作用? float4(0.01) 生成 {.01,0,0,0} 还是 float4(.01) 生成 {.01,.01,.01,.01}?
来自着色器的原始代码:
float4 Multiply19 = float4( 0.01 ) * float4( 0 );
它应该创建一个新的 float4,所有成员 (xyzw) 都设置为 0.01,然后将所有乘以 0,有效地使 Multiply19 成为 (0, 0, 0, 0) float4。