Função WavePrefixProduct
Retorna o produto de todos os valores nas pistas ativas nesta onda com índices menores que essa pista.
Sintaxe
<type> WavePrefixProduct(
<type> value
);
Parâmetros
value
O valor a ser multiplicado.
Valor retornado
O produto de todos os valores.
Comentários
Não é possível garantir a ordem das operações nessa rotina. Portanto, efetivamente, o sinalizador [preciso] é ignorado dentro dele.
Um produto de postfixo pode ser calculado multiplicando o produto de prefixo pelo valor da pista atual.
Observe que a pista ativa com o índice mais baixo sempre receberá um 1 para seu produto de prefixo.
Essa função tem suporte do modelo de sombreador 6.0 em todos os estágios do sombreador.
Exemplos
uint numToMultiply = 2;
uint prefixProduct = WavePrefixProduct( numToMultiply );
Em um computador com um tamanho de onda de 8 e todas as pistas ativas, exceto as faixas 0 e 4, os valores a seguir seriam retornados de WavePrefixProduct.
índice de faixa | status | prefixProduct |
---|---|---|
0 | inativos | N/D |
1 | ativo | = 1 |
2 | ativo | = 1*2 |
3 | ativo | = 1*2*2 |
4 | inativos | n/d |
5 | ativo | = 1*2*2*2 |
6 | ativo | = 1*2*2*2*2 |
7 | ativo | = 1*2*2*2*2*2 |