ps_2_x 지침
이 섹션에는 픽셀 셰이더 버전 2_x 지침에 대한 참조 정보가 포함되어 있습니다.
표에 표시된 것처럼 몇 가지 유형의 픽셀 셰이더 명령이 있습니다. 오른쪽 열은 다음을 의미합니다.
- 명령 슬롯 - 각 명령에서 사용되는 명령 슬롯 수입니다.
- 설치 - 픽셀 셰이더에는 버전 명령이 있어야 하며 첫 번째 명령이어야 합니다.
- 산술 - 이러한 지침은 셰이더에서 수학 연산을 제공합니다.
- 질감 - 이러한 지침은 텍스처 데이터를 로드 및 샘플링하고 텍스처 좌표를 수정하는 데 사용됩니다.
- 흐름 제어 - 이러한 지침은 명령 실행에 대한 정적 및 동적 흐름 제어를 제공합니다.
- 새 기능 - 이러한 지침은 이 버전의 새로운 기능입니다.
명령 집합
이름 | 묘사 | 명령 슬롯 | 설치 | 산술 | 텍스처 | 흐름 제어 | 새로운 |
---|---|---|---|---|---|---|---|
복근 - ps | 절대값 | 1 | x | ||||
추가 - ps | 두 개의 벡터 추가 | 1 | x | ||||
중단 - ps | 담당자를 중단... endrep 블록 | 1 | x | x | |||
break_comp - ps | 담당자를 조건부로 중단... 비교를 사용하는 endrep 블록 | 3 | x | x | |||
중단 - ps | 담당자를 중단... 조건자 기반의 endrep 블록 | 3 | x | x | |||
호출 - ps | 서브루틴 호출 | 2 | x | x | |||
callnz bool - ps | 부울 레지스터가 0이 아닌 경우 서브루틴 호출 | 3 | x | x | |||
callnz pred - ps | 조건자 레지스터가 0이 아닌 경우 서브루틴 호출 | 3 | x | x | |||
cmp - ps | 원본과 0 비교 | 1 | x | ||||
crs - ps | 교차 제품 | 2 | x | ||||
dcl_samplerType(sm2, sm3 - ps asm) | 샘플러의 텍스처 차원 선언 | 0 | x | ||||
dcl - (sm2, sm3 - ps asm) | 꼭짓점 셰이더 출력 레지스터와 픽셀 셰이더 입력 레지스터 간의 연결을 선언합니다. | 0 | x | ||||
def - ps | 상수 정의 | 0 | x | ||||
defb - ps | 부울 상수 정의 | 0 | x | x | |||
반항 - ps | 정수 상수 정의 | 0 | x | x | |||
dp2add - ps | 2D 점 제품 및 추가 | 2 | x | ||||
dp3 - ps | 3D 점 제품 | 1 | x | ||||
dp4 - ps | 4D 점 제품 | 1 | x | ||||
dsx - ps | x 방향의 변경 속도 | 2 | x | x | |||
dsy - ps | y 방향의 변경 속도 | 2 | x | x | |||
기타 - ps | 다른 블록 시작 | 1 | x | x | |||
endif - ps | if 종료... else 블록 | 1 | x | x | |||
엔드립 - ps | 반복 블록의 끝 | 2 | x | x | |||
exp - ps | 전체 전체 자릿수 2x | 1 | x | ||||
frc - ps | 소수 구성 요소 | 1 | x | ||||
bool이면 - ps | if 블록 시작 | 3 | x | x | |||
if_comp - ps | 비교를 사용하여 if 블록 시작 | 3 | x | x | |||
사전 경우 - ps | 조건자를 사용하여 if 블록 시작 | 3 | x | x | |||
레이블 - ps | 레이블 | 0 | x | x | |||
로그 - ps | 전체 전체 전체 자릿수 log 5(x) | 1 | x | ||||
lrp - ps | 선형 보간 | 2 | x | ||||
m3x2 - ps | 3x2 곱하기 | 2 | x | ||||
m3x3 - ps | 3x3 곱하기 | 3 | x | ||||
m3x4 - ps | 3x4 곱하기 | 4 | x | ||||
m4x3 - ps | 4x3 곱하기 | 3 | x | ||||
m4x4 - ps | 4x4 곱하기 | 4 | x | ||||
미친 - ps | 곱하기 및 추가 | 1 | x | ||||
max - ps | 최대 | 1 | x | ||||
분 - ps | 최소 | 1 | x | ||||
mov - ps | 움직이다 | 1 | x | ||||
mul - ps | 곱하다 | 1 | x | ||||
nop - ps | 작업 없음 | 1 | x | ||||
nrm - ps | 정규화 | 3 | x | ||||
pow - ps | xy | 3 | x | ||||
ps | 버전 | 0 | x | ||||
rcp - ps | 상호 | 1 | x | ||||
담당자 - ps | 반복하다 | 3 | x | x | |||
ret - ps | 서브루틴의 끝 | 1 | x | x | |||
rsq - ps | 역 제곱근 | 1 | x | ||||
setp_comp | 조건자 레지스터 설정 | 1 | x | x | |||
sincos - ps | 사인 및 코사인 | 8 | x | ||||
sub - ps | 빼다 | 1 | x | ||||
texkill - ps | 픽셀 렌더링 종료 | 참고 1 참조 | x | ||||
텍스트 - ps_2_0 이상 | 텍스처 샘플 | 참고 2 참조 | x | ||||
texldb - ps | w 구성 요소의 세부 수준 바이어스로 질감 샘플링 | 참고 3 참조 | x | ||||
texldd - ps | 사용자가 제공한 그라데이션을 사용한 텍스처 샘플링 | 3 | x | x | |||
texldp - ps | w 구성 요소별 투사 분할을 사용한 텍스처 샘플링 | 참고 4 참조 | x |
노트:
- D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT 설정되면 슬롯 = 2; 그렇지 않으면 슬롯 = 1입니다.
- D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT 설정되고 텍스처가 큐브 맵이면 슬롯 = 4; 그렇지 않으면 슬롯 = 1입니다.
- D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT 설정되면 슬롯 = 6; 그렇지 않으면 슬롯 = 1입니다.
-
D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT 설정되지 않은 경우 슬롯 = 1; 그렇지 않으면:
- D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT 설정되고 텍스처가 큐브 맵이면 슬롯 = 4입니다.
- D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT 설정되고 텍스처가 큐브 맵이 아니면 슬롯 = 3입니다.
관련 항목