DirectX Graphics ·¹ÆÛ·±½º Direct3D extension (D3DX) C/C++ ·¹ÆÛ·±½º ÇÔ¼ö ¼ÎÀÌ´õ ÇÔ¼ö D3DXCompileShader [¸ñÂ÷¿¶÷] [ÁÖ¼Òº¹»ç] [½½·Ôºñ¿ì±â]
|
| Microsoft DirectX 9.0 |
¼ÎÀÌ´õ ÆÄÀÏÀ» ÄÄÆÄÀÏ ÇÑ´Ù.
±¸¹®
HRESULT WINAPI D3DXCompileShader(
LPCTSTR pSrcData, UINT srcDataLen, CONST D3DXMACRO* pDefines, LPD3DXINCLUDE pInclude, LPCTSTR pFunctionName, LPCTSTR pTarget, DWORD Flags, LPD3DXBUFFER* ppShader, LPD3DXBUFFER* ppErrorMsgs, LPD3DXSHADER_CONSTANTTABLE* ppConstantTable );
ÆÄ¶ó¹ÌÅÍ
- pSrcData
- [in] ¼ÎÀÌ´õ¸¦ Æ÷ÇÔÇÑ Ä³¸¯ÅÍ ¶óÀÎÀÇ Æ÷ÀÎÅÍ. ÄÄÆÄÀÏ·¯ÀÇ ¼³Á¤ÀÌ Unicode ¸¦ ¿ä±¸Çϰí ÀÖ´Â °æ¿ì, µ¥ÀÌÅÍÇü LPCTSTR ´Â LPCWSTR °¡ µÈ´Ù. ±× ÀÌ¿ÜÀÇ °æ¿ì´Â, ÀÌ Ä³¸¯ÅÍ ¶óÀÎÀÇ µ¥ÀÌÅÍÇüÀº LPCSTR °¡ µÈ´Ù. ¡¸ÁÖÀÇ¡¹¸¦ ÂüÁ¶ÇÒ°Í.
- srcDataLen
- [in] µ¥ÀÌÅÍÀÇ ±æÀÌ (¹ÙÀÌÆ® ´ÜÀ§).
- pDefines
- [in] ÇÁ¸®ÇÁ·Î¼¼¼ Á¤ÀÇÀÇ Æ÷ÀÎÅÍ. ¡¸D3DXMACRO ¡¹¸¦ ÂüÁ¶ÇÒ°Í.
- pInclude
- [in] ¿É¼ÇÀÇ ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅÍ ID3DXInclude . #include ÀÇ»ç ¸í·ÉÀÇ Ã³¸®¿¡ »ç¿ëÇÑ´Ù. NULL ÀÇ °æ¿ì, ÆÄÀϷκÎÅÍ ÄÄÆÄÀÏ ÇßÀ» ¶§¿¡´Â #includes °¡ ¹Þ¾Æµé¿©Á® ¸®¼Ò½º ¶Ç´Â ¸Þ¸ð¸®·ÎºÎÅÍ ÄÄÆÄÀÏ ÇßÀ» ¶§¿¡´Â #includes ´Â ¿¡·¯°¡ µÈ´Ù.
- pFunctionName
- [in] ½ÇÇàÀ» ½ÃÀÛ ÇÏ´Â ¼ÎÀÌ´õ ¿£Æ®¸® Æ÷ÀÎÆ® ÇÔ¼öÀÇ À̸§À» Æ÷ÇÔÇÑ Ä³¸¯ÅÍ ¶óÀÎÀÇ Æ÷ÀÎÅÍ. ÄÄÆÄÀÏ·¯ÀÇ ¼³Á¤ÀÌ Unicode ¸¦ ¿ä±¸Çϰí ÀÖ´Â °æ¿ì, µ¥ÀÌÅÍÇü LPCTSTR ´Â LPCWSTR °¡ µÈ´Ù. ±× ÀÌ¿ÜÀÇ °æ¿ì´Â, ÀÌ Ä³¸¯ÅÍ ¶óÀÎÀÇ µ¥ÀÌÅÍÇüÀº LPCSTR °¡ µÈ´Ù. ¡¸ÁÖÀÇ¡¹¸¦ ÂüÁ¶ÇÒ°Í.
- pTarget
- [in] ÄÄÆÄÀÏ Å¸°ÙÀ» Æ÷ÇÔÇÑ Ä³¸¯ÅÍ ¶óÀÎÀÇ Æ÷ÀÎÅÍ. ¡¸ÁÖÀÇ¡¹¸¦ ÂüÁ¶ÇÒ°Í.
- Flags
- [in] D3DXSHADER ¿¡ ÀÇÇØ ½Äº°µÇ´Â ÄÄÆÄÀÏ ¿É¼Ç.
- ppShader
- [out] »ý¼º µÈ ¼ÎÀÌ´õ¸¦ Æ÷ÇÔÇÑ ¹öÆÛ¸¦ µ¹·ÁÁØ´Ù. ÀÌ ¹öÆÛ´Â, ÄÄÆÄÀÏ ³¡³ ¼ÎÀÌ´õ ÄÚµå¿Í ÆÄ¹¯È÷°í ÀÖ´Â µð¹ö±× ¹× ½Éº¼ Å×À̺í Á¤º¸¸¦ Æ÷ÇÔÇÑ´Ù.
- ppErrorMsgs
- [out] ÄÄÆÄÀÏÁß¿¡ ¹ß»ýÇÑ ¿¡·¯ ¹× °æ°íÀÇ ¸®½ºÆ®¸¦ Æ÷ÇÔÇÑ ¹öÆÛ¸¦ µ¹·ÁÁØ´Ù. À̰͵éÀº, µð¹ö±× ¸ðµå·Î ½ÇÇàÇßÀ» ¶§¿¡ µð¹ö°Å°¡ Ç¥½ÃÇÏ´Â ¸Þ½ÃÁö¿Í °°´Ù. ÀÌ °ªÀº NULL ÀÌ¶óµµ ÁÁ´Ù.
- ppConstantTable
- [out] ¼ÎÀÌ´õ³»¿¡ ÆÄ¹¯È÷°í ÀÖ´Â D3DXSHADER_CONSTANTTABLE ºí·ÏÀÇ Æ÷ÀÎÅ͸¦ µ¹·ÁÁØ´Ù. D3DXGetShaderConstantTable ¸¦ »ç¿ëÇØ ¼ÎÀÌ´õ Á¤¼ö¿¡ ¾×¼¼½º ÇÏ´Â °æ¿ì´Â, ÀÌ ºí·ÏÀ» »ç¿ëÇÑ´Ù. ÀÌ °ªÀº NULL ÀÌ¶óµµ ÁÁ´Ù.
¹Ýȯ°ª
¼º°øÇßÀ» °æ¿ì´Â,D3D_OK ¸¦ µ¹·ÁÁØ´Ù.
½ÇÆÐÇßÀ» °æ¿ì´Â, ´ÙÀ½ÀÇ ¸î°³ÀÇ °ªÀ» µ¹·ÁÁØ´Ù.
D3DERR_INVALIDCALL ¸Þ¼µåÀÇ È£ÃâÀÌ ¹«È¿ÀÌ´Ù. ¿¹¸¦ µé¾î, ¸Þ¼µåÀÇ ÆÄ¶ó¹ÌÅÍ¿¡ ¹«È¿ÀÎ °ªÀÌ ¼³Á¤µÇ¾î ÀÖ´Â °æ¿ì µîÀÌ´Ù. D3DXERR_INVALIDDATA µ¥ÀÌÅͰ¡ ¹«È¿ÀÌ´Ù. E_OUTOFMEMORY Microsoft® Direct3D® °¡ È£ÃâÀ» ¿Ï·áÇϱâ À§ÇÑ ÃæºÐÇÑ ¸Þ¸ð¸®¸¦ ÇÒ´çÇÒ ¼ö°¡ ¾ø¾ú´Ù.
ÁÖÀÇ
Á¤Á¡ ¼ÎÀÌ´õ, Çȼ¿ ¼ÎÀÌ´õ, ¹× ÅØ½ºÃ³¸¦ ÀüºÎ Ä¥ÇÏ´Â ÇÔ¼ö¿¡ ´ëÇØ¼ Ÿ°ÙÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.
Á¤Á¡ ¼ÎÀÌ´õÀÇ Å¸°Ù vs_1_1, vs_2_0, vs_2_sw Çȼ¿ ¼ÎÀÌ´õÀÇ Å¸°Ù ps_1_1, ps_1_2, ps_1_3, ps_1_4, ps_2_0, ps_2_sw ÅØ½ºÃ³ÀÇ Ä¥ÇØÀÇ Å¸°Ù tx_0, tx_1 ÄÄÆÄÀÏ·¯ÀÇ ¼³Á¤ÀÌ Unicode ¸¦ ¿ä±¸Çϰí ÀÖ´Â °æ¿ì, µ¥ÀÌÅÍÇü LPCTSTR ´Â LPCWSTR °¡ µÈ´Ù. ±× ÀÌ¿ÜÀÇ °æ¿ì´Â, ÀÌ Ä³¸¯ÅÍ ¶óÀÎÀÇ µ¥ÀÌÅÍÇüÀº LPCSTR °¡ µÈ´Ù.
ÄÄÆÄÀÏ·¯ ¼³Á¤¿¡ ÀÇÇØ, ÇÔ¼öÀÇ ¹öÀüµµ Á¤ÇØÁø´Ù. Unicode °¡ Á¤Àǵǰí ÀÖ´Â °æ¿ì, ÀÌ ÇÔ¼öÀÇ È£ÃâÀº D3DXCompileShaderW °¡ µÈ´Ù. ±× ÀÌ¿ÜÀÇ °æ¿ì´Â ANSI ij¸¯ÅÍ ¶óÀÎÀ» »ç¿ëÇϹǷÎ, ÀÌ ÇÔ¼öÀÇ È£ÃâÀº D3DXCompileShaderA °¡ µÈ´Ù.
ÇÔ¼öÀÇ Á¤º¸
Çì´õ d3dx9shader.h ÀÓÆ÷Æ® ¶óÀ̺귯¸® d3dx9.lib ÃÖÀúÇÑÀÇ operating system Windows 98
ÂüÁ¶
D3DXCompileShader ,D3DXCompileShaderFromResource