Gather(DirectX HLSL 텍스처 개체)
텍스처를 샘플링할 때 쌍선형 보간에 사용되는 4개의 샘플(빨간색 성분만)을 가져옵니다.
<템플릿 형식>4 Object.Gather( sampler_state S, float2|3|4 Location [, int2 Offset] );
매개 변수
항목 | 설명 | ||||||||
---|---|---|---|---|---|---|---|---|---|
Object |
다음 texture-object 형식이 지원됩니다. Texture2D, Texture2DArray, TextureCube, TextureCubeArray. |
||||||||
S |
[in] 샘플러 상태입니다. 상태 할당을 포함하는 효과 파일에 선언된 개체입니다. |
||||||||
Location |
[in] 텍스처 좌표입니다. 인수 형식은 텍스처-개체 형식에 따라 달라집니다.
|
||||||||
Offset |
[in] 모든 텍스처 개체 형식에 사용할 수 있는 선택적 텍스처 좌표 오프셋입니다. 오프셋은 샘플링 전에 위치에 적용됩니다. 인수 형식은 텍스처 개체 형식에 따라 다릅니다. 셰이더 모델 5.0 이상을 대상으로 하는 셰이더의 경우 각 오프셋 값의 최하위 6비트가 부호 있는 값으로 간주되어 [-32..31] 범위를 생성합니다. 이전 셰이더 모델 셰이더의 경우 오프셋은 -8에서 7 사이의 즉치 정수여야 합니다.
|
반환 값
텍스처의 템플릿 형식과 형식이 동일한 빨간색 데이터의 4-성분이 있는 4-성분 벡터입니다.
최소 셰이더 모델
이 함수는 다음 셰이더 모델에서 지원됩니다.
vs_4_0 | vs_4_1 | ps_4_0 | ps_4_1 | gs_4_0 | gs_4_1 |
---|---|---|---|---|---|
x | x | x |
- TextureCubeArray는 셰이더 모델 4.1 이상에서 사용할 수 있습니다.
- 셰이더 모델 4.1은 Direct3D 10.1 이상에서 사용할 수 있습니다.
예제
Texture2D<int1> Tex2d;
Texture2DArray<int2> Tex2dArray;
TextureCube<int3> TexCube;
TextureCubeArray<float2> TexCubeArray;
SamplerState s;
int4 main (float4 f : SV_Position) : SV_Target
{
int2 iOffset = int2(2,3);
int4 i1 = Tex2d.Gather(s, f.xy);
int4 i2 = Tex2d.Gather(s, f.xy, iOffset);
int4 i3 = Tex2dArray.Gather(s, f.xyz);
int4 i4 = Tex2dArray.Gather(s, f.xyz, iOffset);
int4 i5 = TexCube.Gather(s, f.xyzw);
float4 f6 = TexCubeArray.Gather(s, f.xyzw);
return i1+i2+i3+i4+i5+int4(f6);
}