다음을 통해 공유


PFND3D10DDI_CREATESAMPLER 콜백 함수(d3d10umddi.h)

CreateSampler 함수는 샘플러를 만듭니다.

구문

PFND3D10DDI_CREATESAMPLER Pfnd3d10ddiCreatesampler;

void Pfnd3d10ddiCreatesampler(
  D3D10DDI_HDEVICE unnamedParam1,
  const D3D10_DDI_SAMPLER_DESC *unnamedParam2,
  D3D10DDI_HSAMPLER unnamedParam3,
  D3D10DDI_HRTSAMPLER unnamedParam4
)
{...}

매개 변수

unnamedParam1

hDevice [in]

디스플레이 디바이스(그래픽 컨텍스트)에 대한 핸들입니다.

unnamedParam2

pSamplerDesc [in]

사용자 모드 표시 드라이버가 샘플러를 만드는 데 사용하는 매개 변수를 설명하는 D3D10_DDI_SAMPLER_DESC 구조체에 대한 포인터입니다.

unnamedParam3

hSampler [in]

샘플러에 대한 드라이버의 개인 데이터에 대한 핸들입니다. 드라이버는 드라이버의 CalcPrivateSamplerSize 함수 호출에서 Microsoft Direct3D 런타임이 프라이빗 데이터에 할당해야 하는 메모리 영역의 크기(바이트)를 반환합니다. 핸들은 실제로 드라이버가 요청한 메모리 영역에 대한 포인터일 뿐입니다. 드라이버는 이 메모리 영역을 사용하여 샘플러 개체와 관련된 내부 데이터 구조를 저장합니다.

unnamedParam4

hRTSampler [in]

드라이버가 Direct3D 런타임으로 다시 호출할 때마다 사용해야 하는 샘플러에 대한 핸들입니다.

반환 값

없음

설명

드라이버는 pfnSetErrorCb 콜백 함수를 사용하여 오류 코드를 설정할 수 있습니다.

드라이버는 pfnSetErrorCb 함수에 대한 호출에서 E_OUTOFMEMORY(드라이버가 메모리가 부족하면) 또는 D3DDDIERR_DEVICEREMOVED(디바이스가 제거된 경우)를 전달할 수 있습니다. Direct3D 런타임은 다른 오류가 중요한지 확인합니다. 드라이버가 D3DDDIERR_DEVICEREMOVED 포함한 오류를 전달하면 Direct3D 런타임에서 핸들이 유효하지 않은 것으로 확인됩니다. 따라서 런타임은 DestroySampler 함수를 호출하여 hSampler 매개 변수가 지정하는 핸들을 삭제하지 않습니다.

사용자 모드 표시 드라이버는 한 번에 디바이스에 4,096개 이상의 고유한 샘플러 개체 인스턴스를 만들 필요가 없습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
대상 플랫폼 데스크톱
머리글 d3d10umddi.h(D3d10umddi.h 포함)

추가 정보

CalcPrivateSamplerSize

D3D10DDI_DEVICEFUNCS

D3D10_DDI_SAMPLER_DESC

DestroySampler

pfnSetErrorCb