texld - ps_1_4
원본 레지스터의 콘텐츠를 텍스처 좌표로 사용하여 샘플링된 색 데이터(RGBA)로 대상 레지스터를 로드합니다. 샘플링된 텍스처는 대상 레지스터 번호와 관련된 텍스처입니다.
texld dst, src |
---|
레지스터
값 | 설명 | vₙ | cₙ | tₙ | rₙ | 픽셀 셰이더 버전 |
---|---|---|---|---|---|---|
dst | 대상 레지스터 | x | 1_4 | |||
src | 원본 레지스터 | x | 1_4 단계 1 | |||
x | x | 1_4 단계 |
r(n)을 원본 레지스터로 사용하는 경우 셰이더의 이전 단계에서 처음 세 성분(XYZ)을 초기화해야 합니다.
레지스터에 대한 자세한 내용은 ps_1_1__ps_1_2__ps_1_3__ps_1_4 레지스터를 참조하세요.
설명
이 명령은 대상 레지스터 번호와 관련된 텍스처 단계에서 텍스처를 샘플링합니다. 텍스처는 원본 레지스터의 텍스처 좌표 데이터를 사용하여 샘플링됩니다.
texld 및 texcrd 명령에 대한 구문은 텍스처 레지스터 한정자를 사용하여 투영 분할에 대한 지원을 노출합니다. 픽셀 셰이더 버전 1.4의 경우 D3DTTFF_PROJECTED 텍스처 변환 플래그는 항상 무시됩니다.
texld 사용 규칙:
- 동일한 .xyz 또는 .xyw 한정자는 texcrd 또는 texld 명령 내에서 개별 t(n) 레지스터의 모든 읽기에 적용되어야 합니다. .xyw가 t(n) 레지스터 읽기에서 사용되는 경우 .xyw_dw를 사용하여 동일한 t(n) 레지스터의 다른 읽기와 혼합될 수 있습니다.
- _dz 원본 한정자는 r(n) 원본 레지스터가 있는 texld에서만 유효합니다(따라서 2단계에만 해당).
- _dz 원본 한정자는 셰이더당 두 번 이상 사용할 수 없습니다.
픽셀 셰이더 버전 | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
texld | x |
예제
texld 명령은 사용되는 원본 텍스처 좌표 데이터의 성분에 대한 일부 컨트롤을 제공합니다. texld에 대해 허용되는 전체 구문 집합은 다음과 같으며 모든 유효한 원본 레지스터 한정자, 선택자 및 쓰기 마스크 조합을 포함합니다.
texld r(m), t(n).xyz
// Uses xyz from t(n) to sample 1D, 2D, or 3D texture
texld r(m), t(n)
// Same as previous
texld r(m), t(n).xyw
// Uses xyw (skipping z) from t(n) to sample 1D, 2D or 3D texture
texld r(m), t(n)_dw.xyw
// Samples 1D or 2D texture at x/w, y/w from t(n). The result
// is undefined for a cube-map lookup.
texld r(m), r(n).xyz
// Samples 1D, 2D, or 3D texture at xyz from r(m)
// This is possible in the second phase of the shader
texld r(m), r(n)
// Same as previous
texld r(m), r(n)_dz.xyz
// Samples 1D or 2D texture at x/z, y/z from r(m)
// Possible only in second phase
// The result is undefined for a cube-map lookup
texld r(n), r(n)_dz
// Same as previous
관련 항목