D3DXCreateEffectFromFile 함수

ASCII 또는 이진 효과 설명에서 효과를 만듭니다.

구문

HRESULT D3DXCreateEffectFromFile(
  _In_        LPDIRECT3DDEVICE9 pDevice,
  _In_        LPCTSTR           pSrcFile,
  _In_  const D3DXMACRO         *pDefines,
  _In_        LPD3DXINCLUDE     pInclude,
  _In_        DWORD             Flags,
  _In_        LPD3DXEFFECTPOOL  pPool,
  _Out_       LPD3DXEFFECT      *ppEffect,
  _Out_       LPD3DXBUFFER      *ppCompilationErrors
);

매개 변수

pDevice [in]

형식: LPDIRECT3DDEVICE9

효과를 만들 디바이스에 대한 포인터입니다. IDirect3DDevice9를 참조하세요.

pSrcFile [in]

형식: LPCTSTR

파일 이름에 대한 포인터입니다. 이 매개 변수는 유니코드 및 ANSI 문자열을 모두 지원합니다. 설명 부분을 참조하세요.

pDefines [in]

형식: const D3DXMACRO*

전처리기 매크로 정의의 선택적 NULL 종료 배열입니다. D3DXMACRO를 참조하세요.

pInclude [in]

형식: LPD3DXINCLUDE

#include 지시문을 처리하는 데 사용할 선택적 인터페이스 포인터 ID3DXInclude입니다. 이 값이 NULL이면 파일에서 컴파일할 때 #includes 적용되거나 리소스 또는 메모리에서 컴파일될 때 오류가 발생합니다.

Flags [in]

형식: DWORD

pSrcFile에 텍스트 효과가 포함된 경우 플래그는 D3DXSHADER 플래그D3DXFX 플래그의 조합일 수 있습니다. 그렇지 않으면 pSrcFile에 이진 효과가 포함되고 적용되는 유일한 플래그는 D3DXFX 플래그입니다. 이제 Direct3D 10 HLSL 컴파일러가 기본값입니다. 자세한 내용은 효과 컴파일러 도구를 참조하세요.

pPool [in]

형식: LPD3DXEFFECTPOOL

공유 매개 변수에 사용할 ID3DXEffectPool 개체에 대한 포인터입니다. 이 값이 NULL이면 매개 변수가 공유되지 않습니다.

ppEffect [out]

형식: LPD3DXEFFECT*

컴파일된 효과를 포함하는 버퍼에 대한 포인터를 반환합니다. ID3DXEffect를 참조하세요.

ppCompilationErrors [out]

형식: LPD3DXBUFFER*

컴파일 오류 목록이 포함된 버퍼에 대한 포인터를 반환합니다. ID3DXBuffer를 참조하세요.

반환 값

형식: HRESULT

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

설명

컴파일러 설정에 유니코드가 필요한 경우 데이터 형식 LPCTSTR이 LPCWSTR로 확인됩니다. 그렇지 않으면 LPCTSTR 데이터 형식이 LPCSTR로 확인됩니다.

컴파일러 설정은 함수 버전도 결정합니다. 유니코드가 정의되면 함수 호출이 D3DXCreateEffectFromFileW로 확인됩니다. 그렇지 않으면 ANSI 문자열이 사용되므로 함수 호출이 D3DXCreateEffectFromFileA로 확인됩니다.

요구 사항

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

추가 정보

효과 함수

D3DXCompileShader

D3DXCompileShaderFromResource