Share via


WavePrefixProduct 함수

이 레인보다 작은 인덱스를 가진 이 웨이브의 활성 레인에 있는 모든 값의 곱을 반환합니다.

구문

<type> WavePrefixProduct(
   <type> value
);

매개 변수

value

곱할 값입니다.

반환 값

모든 값의 곱입니다.

설명

이 루틴의 작업 순서는 보장할 수 없습니다. 따라서 실질적으로 [precise] 플래그는 무시됩니다.

접두사 곱에 현재 레인 값을 곱하여 후위 곱을 계산할 수 있습니다.

인덱스가 가장 낮은 활성 레인은 접두사 곱으로 항상 1을 받습니다.

이 함수는 셰이더 모델 6.0부터 모든 셰이더 단계에서 지원됩니다.

예제

uint numToMultiply = 2;
uint prefixProduct = WavePrefixProduct( numToMultiply );

웨이브 크기가 8이고 레인 0과 4를 제외한 모든 레인이 활성 상태인 컴퓨터에서는 WavePrefixProduct에서 다음 값이 반환됩니다.

레인 인덱스 상태 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

추가 정보

셰이더 모델 6 개요

셰이더 모델 6