다음을 통해 공유


원본 레지스터 부호 있는 스케일링

각 채널에서 0.5를 빼고 결과를 2.0으로 조정합니다. bx2라는 이름은 이것이 수행하는 연산인 바이어스와 크기 조정 타임 2에서 유래되었습니다.

Syntax

source register_bx2

등록

원본 레지스터입니다. 레지스터 형식에 대한 자세한 내용은 ps_1_1__ps_1_2__ps_1_3__ps_1_4 레지스터를 참조하세요.

설명

이 작업은 일반적으로 [0.0에서 1.0]에서 [-1.0에서 1.0]으로 데이터를 확장하는 데 사용됩니다. 이 한정자는 산술 명령과 함께 사용하도록 설계되었습니다. 이 한정자는 일반적으로 내적 명령(dp3 - ps)에 대한 입력에 사용됩니다. 0에서 1 범위 밖의 데이터에 _bx2를 사용하면 정의되지 않은 결과가 생성될 수 있습니다.

부호 있는 스케일링 작업은 다음 명령이 실행되기 전에 레지스터에서 읽은 데이터에 적용됩니다. 이 작업은 다음과 같이 네 가지 색상 채널(RGBA) 모두에 적용됩니다.

y = 2(x - 0.5)

레지스터의 콘텐츠는 변경되지 않습니다. 한정자는 레지스터에서 읽은 데이터에만 적용됩니다.

이 한정자는 원본 레지스터 반전과 상호 배타적이므로 동일한 레지스터에 적용할 수 없습니다.

버전 정보:

  • ps_1_0 및 ps_1_1의 경우 texm3x2* 및 texm3x3* 형식의 텍스처 명령에 대해 모든 원본 레지스터에서 _bx2를 사용할 수 있습니다. _bx2는 texreg2ar - ps 또는 texreg2gb - ps와 같은 다른 텍스처 명령에서 사용할 수 없습니다.
  • ps_1_2 및 ps_1_3의 경우 texreg2ar - ps, texreg2gb - ps, texbem - ps 또는 texbeml - ps를 제외한 모든 tex* 명령에 대해 모든 원본 레지스터에서 _bx2를 사용할 수 있습니다.

이 예는 텍스처를 샘플링하고 데이터를 -1에서 +1 범위로 변환하고 내적을 계산합니다.

tex t0                        ; Read a texture color.
dp3_sat r0, t0_bx2, v0_bx2    ; Calculate a dot product.

픽셀 셰이더 원본 레지스터 한정자