WavePrefixProduct 函数
返回此波中活动通道中索引小于此通道的所有值的乘积。
语法
<type> WavePrefixProduct(
<type> value
);
参数
value
要相乘的值。
返回值
所有值的乘积。
备注
无法保证此例程上的操作顺序。 因此,实际上,忽略其中[精确]标志。
可以通过将前缀乘积乘以当前通道的值来计算后缀产品。
请注意,索引最低的活动通道将始终收到其前缀乘积的 1。
在所有着色器阶段中,着色器模型 6.0 都支持此函数。
示例
uint numToMultiply = 2;
uint prefixProduct = WavePrefixProduct( numToMultiply );
在波形大小为 8 且所有通道处于活动状态(通道 0 和 4 除外)的计算机上,将从 WavePrefixProduct 返回以下值。
通道索引 | status | prefixProduct |
---|---|---|
0 | 非活跃 | 不适用 |
1 | 活动 | = 1 |
2 | 活动 | = 1*2 |
3 | 活动 | = 1*2*2 |
4 | 非活跃 | 不适用 |
5 | 活动 | = 1*2*2*2 |
6 | 活动 | = 1*2*2*2*2 |
7 | 活动 | = 1*2*2*2*2*2 |