DirectX Graphics 레퍼런스 이펙트 레퍼런스 인터페이스 ID3DXEffectCompiler CompileShader   [목차열람] [주소복사] [슬롯비우기]
ID3DXEffectCompiler::CompileShader 메서드
 
Microsoft DirectX 9.0

ID3DXEffectCompiler::CompileShader 메서드


1 개 또는 복수의 기능을 포함한 이펙트로부터 셰이더를 컴파일 한다.

구문

HRESULT CompileShader(      

    D3DXHANDLE hFunction,     DWORD Target,     DWORD Flags,     LPD3DXBUFFER *ppShader,     LPD3DXBUFFER *ppErrorMsgs,     LPD3DXSHADER_CONSTANTTABLE *ppConstantTable );

파라미터

hFunction
[in] 컴파일 하는 함수에 대한 일의의 식별자. NULL 를 지정할 수 없다. 「핸들」을 참조할것.
Target
[in] 컴파일 타겟을 식별한다. 컴파일 타겟은, DWORD 에 encode 된 셰이더 버전이다. encode 된 버전 번호를 생성하려면 ,D3DVS_VERSION 매크로를 사용한다. 현재 이 메서드가 지원 하고 있는 것은, 정점 셰이더의 컴파일 뿐이다.
Flags
[in] 컴파일 옵션. 더 자세한 정보는, 「D3DXSHADER 」를 참조할것.
ppShader
[out, retval] 컴파일 된 셰이더를 포함한 버퍼. 컴파일러 셰이더는 DWORD 의 배열이다. 버퍼에의 액세스의 더 자세한 정보는, 「ID3DXBuffer 」를 참조할것.
ppErrorMsgs
[out, retval] 발생한 최초의 compile error 메시지를 반드시 포함한 버퍼. 이것에는, 이펙트의 compile error와 상위 레벨 언어의 compile error가 포함된다. 버퍼에의 액세스의 더 자세한 정보는, 「ID3DXBuffer 」를 참조할것.
ppConstantTable
[out, retval] 정수 테이블의 포인터. 정수 테이블의 정수의 더 자세한 정보는, 「D3DXSHADER_CONSTANTTABLE 」를 참조할것. 또, 정수 테이블에는,D3DXGetShaderConstantTable 를 사용해 액세스 할 수도 있다.

반환값

성공했을 경우는,S_OK 를 돌려준다.

인수가 무효인 경우는,D3DERR_INVALIDCALL 를 돌려준다.

실패했을 경우는,E_FAIL 를 돌려준다.



주의

이 메서드는, C 와 같은 언어로 기술한 함수로부터 셰이더를 컴파일 한다. 더 자세한 정보는, 「상위 레벨 셰이더 언어」를 참조할것.

참조

D3DXSHADER_CONSTANTINFO ,D3DXSHADER_CONSTANTTABLE ,D3DXGetShaderConstantTable


© 2002 Microsoft Corporation. All rights reserved.
↑TOP