다음을 통해 공유


D3DXFillTextureTX 함수

컴파일된 HLSL(상위 수준 셰이더 언어) 함수를 사용하여 텍스처의 각 Mipmap 수준의 각 텍셀을 채웁니다.

구문

HRESULT D3DXFillTextureTX(
  _Inout_ LPDIRECT3DTEXTURE9  pTexture,
  _In_    LPD3DXTEXTURESHADER pTextureShader
);

매개 변수

pTexture [in, out]

형식: LPDIRECT3DTEXTURE9

채울 텍스처를 나타내는 IDirect3DTexture9 개체에 대한 포인터입니다.

pTextureShader [in]

형식: LPD3DXTEXTURESHADER

ID3DXTextureShader 텍스처 셰이더 개체에 대한 포인터입니다.

반환 값

형식: HRESULT

함수가 성공하면 반환 값이 D3D_OK. 함수가 실패하면 반환 값은 D3DERR_NOTAVAILABLE, D3DERR_INVALIDCALL 중 하나일 수 있습니다.

설명

텍스처 대상은 다음 의미 체계를 포함하는 HLSL 함수여야 합니다.

  • 하나의 입력 매개 변수는 POSITION 의미 체계를 사용해야 합니다.
  • 하나의 입력 매개 변수는 PSIZE 의미 체계를 사용해야 합니다.
  • 함수는 COLOR 의미 체계를 사용하는 매개 변수를 반환해야 합니다.

다음은 이러한 HLSL 함수의 예입니다.

float4 TextureGradientFill(
  float2 vTexCoord : POSITION, 
  float2 vTexelSize : PSIZE) : COLOR 
  {
    float r,g, b, xSq,ySq, a;
    xSq = 2.f*vTexCoord.x-1.f; xSq *= xSq;
    ySq = 2.f*vTexCoord.y-1.f; ySq *= ySq;
    a = sqrt(xSq+ySq);
    if (a > 1.0f) {
        a = 1.0f-(a-1.0f);
    }
    else if (a < 0.2f) {
        a = 0.2f;
    }
    r = 1-vTexCoord.x;
    g = 1-vTexCoord.y;
    b = vTexCoord.x;
    return float4(r, g, b, a);
    
  };

입력 매개 변수는 임의의 순서로 되어 있을 수 있지만 두 입력 의미 체계를 모두 나타내야 합니다.

요구 사항

요구 사항
헤더
D3dx9tex.h
라이브러리
D3dx9.lib

추가 정보

D3DX 9의 텍스처 함수

D3DXFillCubeTextureTX

D3DXFillVolumeTextureTX