다음을 통해 공유


D3DX11PreprocessShaderFromResource 함수

참고

D3DX(D3DX 9, D3DX 10 및 D3DX 11) 유틸리티 라이브러리는 Windows 8 사용되지 않으며 Windows 스토어 앱에서는 지원되지 않습니다.

참고

이 함수를 사용하는 대신 D3DPreprocess API를 사용하는 것이 좋습니다.

컴파일하지 않고 리소스에서 셰이더를 만듭니다.

구문

HRESULT D3DX11PreprocessShaderFromResource(
  _In_        HMODULE            hModule,
  _In_        LPCTSTR            pResourceName,
  _In_        LPCTSTR            pSrcFileName,
  _In_  const D3D11_SHADER_MACRO *pDefines,
  _In_        LPD3D10INCLUDE     pInclude,
  _In_        ID3DX11ThreadPump  *pPump,
  _Out_       ID3D10Blob         **ppShaderText,
  _Out_       ID3D10Blob         **ppErrorMsgs,
  _Out_       HRESULT            *pHResult
);

매개 변수

hModule [in]

형식: HMODULE

셰이더를 포함하는 리소스 모듈에 대한 핸들입니다. HMODULE은 GetModuleHandle 함수를 사용하여 가져올 수 있습니다.

pResourceName [in]

형식: LPCTSTR

셰이더를 포함하는 측면 hModule에 있는 리소스의 이름입니다. 컴파일러 설정에 유니코드가 필요한 경우 데이터 형식 LPCTSTR이 LPCWSTR로 확인됩니다. 그렇지 않으면 데이터 형식이 LPCSTR로 확인됩니다.

pSrcFileName [in]

형식: LPCTSTR

선택 사항입니다. 오류 메시지에만 사용되는 효과 파일 이름입니다. NULL일 수 있습니다.

pDefines [in]

형식: const D3D11_SHADER_MACRO*

셰이더 매크로의 NULL로 끝나는 배열입니다. 매크로를 지정하지 않고 NULL 로 설정합니다.

pInclude [in]

형식: LPD3D10INCLUDE

포함 인터페이스에 대한 포인터입니다. 이 를 NULL 로 설정하여 포함 파일이 없음을 지정합니다.

pPump [in]

형식: ID3DX11ThreadPump*

스레드 펌프 인터페이스에 대한 포인터입니다( ID3DX11ThreadPump 인터페이스 참조). NULL을 사용하여 이 함수가 완료될 때까지 반환하지 않도록 지정합니다.

ppShaderText [out]

형식: ID3D10Blob**

컴파일되지 않은 셰이더를 포함하는 메모리에 대한 포인터입니다.

ppErrorMsgs [out]

형식: ID3D10Blob**

발생한 경우 효과 생성 오류가 포함된 메모리에 대한 포인터의 주소입니다.

pHResult [out]

형식: HRESULT*

반환 값에 대한 포인터입니다. NULL일 수 있습니다. pPumpNULL이 아닌 경우 비동기 실행이 완료될 때까지 pHResult는 유효한 메모리 위치여야 합니다.

반환 값

형식: HRESULT

반환 값은 Direct3D 11 반환 코드에 나열된 값 중 하나입니다.

요구 사항

요구 사항
헤더
D3DX11async.h
라이브러리
D3DX11.lib

추가 정보

D3DX 함수