다음을 통해 공유


D3DX10PreprocessShaderFromResource 함수

참고

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

 

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

구문

HRESULT D3DX10PreprocessShaderFromResource(
  _In_        HMODULE            hModule,
  _In_        LPCTSTR            pResourceName,
  _In_        LPCTSTR            pSrcFileName,
  _In_  const D3D_SHADER_MACRO *pDefines,
  _In_        LPD3D10INCLUDE     pInclude,
  _In_        ID3DX10ThreadPump  *pPump,
  _Out_       ID3D10Blob         **ppShaderText,
  _Out_       ID3D10Blob         **ppErrorMsgs
);

매개 변수

hModule [in]

형식: HMODULE

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

pResourceName [in]

형식: LPCTSTR

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

pSrcFileName [in]

형식: LPCTSTR

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

pDefines [in]

형식: const D3D_SHADER_MACRO*

셰이더 매크로의 NULL 종료 배열( D3D_SHADER_MACRO 참조) 을 NULL 로 설정하여 매크로를 지정하지 않습니다.

pInclude [in]

형식: LPD3D10INCLUDE

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

pPump [in]

형식: ID3DX10ThreadPump*

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

ppShaderText [out]

형식: ID3D10Blob**

컴파일되지 않은 셰이더를 포함하는 메모리에 대한 포인터( ID3D10Blob 인터페이스 참조).

ppErrorMsgs [out]

형식: ID3D10Blob**

발생한 경우 효과 생성 오류가 포함된 메모리에 대한 포인터의 주소( ID3D10Blob 인터페이스 참조)입니다.

반환 값

형식: HRESULT

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

요구 사항

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

추가 정보

범용 함수