DirectX Graphics 레퍼런스 이펙트 레퍼런스 함수 D3DXCreateEffect [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
이펙트의 ASCII 기술 또는 바이너리 기술로부터 이펙트를 생성 한다.
구문
HRESULT D3DXCreateEffect(
LPDIRECT3DDEVICE9 pDevice, LPCVOID pSrcData, UINT SrcDataLen, CONST D3DXMACRO* pDefines, LPD3DXINCLUDE pInclude, DWORD Flags, LPD3DXEFFECTPOOL pPool, LPD3DXBUFFER* ppEffect, LPD3DXBUFFER *ppCompilationErrors );
파라미터
- pDevice
- [in] 이펙트를 생성 하는 장치의 포인터. 「IDirect3DDevice9 」를 참조할것.
- pSrcData
- [in] 이펙트의 기술이 저장 된 버퍼의 포인터.
- SrcDataLen
- [in] 이펙트 데이터의 길이 (바이트 단위).
- pDefines
- [in] 프리프로세서 정의의 포인터. 「D3DXMACRO 」를 참조할것.
- pInclude
- [in] 옵션의 인터페이스 포인터 ID3DXInclude . #include 의사 명령의 처리에 사용한다. 이 값에 NULL 를 지정 하면, #includes 는 파일로부터 컴파일 하는 경우는 유효하지만, 리소스나 메모리로부터 컴파일 하는 경우는 에러가 된다.
- Flags
- [in] D3DXSHADER 로 식별되는 컴파일 옵션.
- pPool
- [in] 공유 인수로 사용하는 ID3DXEffectPool 개체의 포인터. 이 값에 NULL 를 지정 하면, 인수는 공유되지 않는다.
- ppEffect
- [out] 컴파일 된 이펙트가 저장 된 버퍼를 돌려준다.
- ppCompilationErrors
- [out] compile error의 일람이 저장 된 버퍼를 돌려준다.
반환값
성공했을 경우는,D3D_OK 를 돌려준다.
실패했을 경우는, 다음의 몇개의 값을 돌려준다.
D3DERR_INVALIDCALL 메서드의 호출이 무효이다. 예를 들어, 메서드의 인수에 무효인 값이 설정되어 있는 경우 등이다. D3DXERR_INVALIDDATA 데이터가 무효이다. E_OUTOFMEMORY Microsoft® Direct3D® 가 호출을 완료하기 위한 충분한 메모리를 할당할 수가 없었다.
함수의 정보
헤더 d3dx9effect.h 임포트 라이브러리 d3dx9.lib 최저한의 operating system Windows 98
참조
D3DXCompileShader ,D3DXCompileShaderFromResource