DirectX Graphics ÇÁ·Î±×·¡¹Ö °¡ÀÌµå °íµµÀÇ ÁÖÁ¦ Çȼ¿ ÆÄÀÌÇÁ¶óÀÎ ½ºÅÙ½Ç ¹öÆÛ Å×Å©´Ð ¾ç¸é ½ºÅÙ½Ç   [¸ñÂ÷¿­¶÷] [ÁÖ¼Òº¹»ç] [½½·Ôºñ¿ì±â]
¾ç¸é ½ºÅÙ½Ç
 
Microsoft DirectX 9.0

¾ç¸é ½ºÅÙ½Ç


½ºÅÙ½Ç ¹öÆÛ¸¦ »ç¿ëÇØ ±×¸²ÀÚ¸¦ µå·ÎÀ×(Drawing) ÇÏ·Á¸é , ±×¸²ÀÚ º¼·ýÀ» »ç¿ëÇÑ´Ù. ¾ÖÇø®ÄÉÀ̼ÇÀº, ½Ç·ç¿§ÀÇ ¿§Áö¸¦ °è»êÇØ, ±× ¿§Áö¸¦ ±¤¿øÀ¸·ÎºÎÅÍ ¹Ð¾î ³» 3D º¼·ýÀ» »ý¼ºÇÏ´Â °Í¿¡ ÀÇÇØ, °¡¸² Áö¿À¸ÞÆ®¸®¿¡ ÀÇÇØ ÇÒ ¼ö ÀÖ´Â ±×¸²ÀÚ º¼·ýÀ» °è»êÇÑ´Ù. ÀÌ·¯ÇÑ º¼·ýÀº ½ºÅÙ½Ç ¹öÆÛ¿¡ 2 ȸ ·»´õ¸µ µÈ´Ù.

ÃÖÃÊÀÇ ·»´õ¸µ¿¡¼­´Â Àû±ØÀûÀÎ ´Ù°¢ÇüÀÌ µå·ÎÀ×(Drawing) µÇ¾î ½ºÅÙ½Ç ¹öÆÛ°ªÀÌ ÀÎÅ©¸®¸ÕÆ®(increment) µÈ´Ù. 2 ¹øÂ°ÀÇ ·»´õ¸µ¿¡¼­´Â, ÅðÇàÀûÀÎ ´Ù°¢ÇüÀÌ µå·ÎÀ×(Drawing) µÇ¾î ½ºÅÙ½Ç ¹öÆÛ°ªÀÌ °¨¼Ò µÈ´Ù. º¸Åë, ÀÎÅ©¸®¸ÕÆ®(increment) µÈ °ª°ú °¨¼Ò µÈ °ªÀº ¸ðµÎ ¼­·Î Áö¿î´Ù. ±×·¯³ª, Àå¸é(scene)´Â ÀÌ¹Ì ¹ý¼± Áö¿À¸ÞÆ®¸®¸¦ »ç¿ëÇØ ·»´õ¸µ µÇ°í ÀÖÀ¸¹Ç·Î, ÀϺÎÀÇ Çȼ¿Àº ±×¸²ÀÚ º¼·ýÀ» ·»´õ¸µ ÇÒ °æ¿ì¿¡ Z ¹öÆÛ Å×½ºÆ®¿¡ ÇÕ°ÝÇÏÁö ¾Ê´Â´Ù. ½ºÅÙ½Ç ¹öÆÛ¿¡ ³²Àº °ªÀÌ, ±×¸²ÀÚ¾ÈÀÇ Çȼ¿¿¡ ´ëÀÀÇÑ´Ù. ¸ðµç °ÍÀ» Æ÷ÇÔÇÑ Å« »ç°¢ÇüÀ» Àå¸é(scene)¿¡ ¾ËÆÄ È¥ÇÕ ÇÒ °æ¿ì¿¡, ÀÌ ³²Àº ½ºÅÙ½Ç ¹öÆÛÀÇ ³»¿ëÀÌ ¸¶½ºÅ©·Î¼­ »ç¿ëµÈ´Ù. ½ºÅÙ½Ç ¹öÆÛ¸¦ ¸¶½ºÅ©·Î¼­ »ç¿ëÇÏ¸é ±×¸²Àھȿ¡ ÀÖ´Â Çȼ¿ÀÌ ¾îµÎ¿öÁø´Ù.

Áï, ±×¸²ÀÚÀÇ Áö¿À¸ÞÆ®¸®´Â ±¤¿ø ¸¶´Ù 2 ȸ µå·ÎÀ×(Drawing) µÇ±â (À§ÇØ)¶§¹®¿¡, GPU ÀÇ Á¤Á¡ÀÇ µå·ÎÀ×(Drawing)¿¡ °üÇÑ throughput¸¦ ¾Ð¹ÚÇÑ´Ù. ¾ç¸é ½ºÅÙ½Ç ±â´ÉÀº, ÀÌ ¹®Á¦¸¦ ¿ÏÈ­Çϱâ À§Çؼ­ ¼³°èµÇ¾ú´Ù. ÀÌ ¾îÇÁ·ÎÄ¡¿¡¼­´Â, ÀÌÇÏ¿¡ ³ªÅ¸³»´Â ½ºÅÙ½Ç ½ºÅ×ÀÌÆ®¼¼Æ®°¡ 2 °³ Á¸ÀçÇÑ´Ù. 1 °³¼¼Æ®´Â °¢°¢ Àû±ØÀûÀÎ »ï°¢Çü¿ëÀ¸·Î, ÀÌÁ¦ 1°³´Â ÅðÇàÀûÀÎ »ï°¢Çü¿ëÀÌ´Ù. À̰Ϳ¡ ÀÇÇØ, 1 °³ÀÇ º¼·ý°ú 1 »ìÀÇ ¶óÀÌÆ®¿¡ ´ëÇØ, ´ÜÀÏÀÇ ÆÐ½º·Î µå·ÎÀ×(Drawing) ÇÒ ¼ö ÀÖ´Ù.

¾ÖÇø®ÄÉÀÌ¼Ç ÇÁ·Î±×·¡¹Ö ÀÎÅÍÆäÀ̽º (API)ÀÇ º¯°æÀº, »õ·Î¿î ·»´õ¸µ ½ºÅ×ÀÌÆ®¼¼Æ®¿¡ Á¦Çѵǰí ÀÖ´Ù. »õ·Î¿î ·»´õ¸µ ½ºÅ×ÀÌÆ® D3DRS_TWOSIDEDSTENCILMODE ´Â TRUE ¶Ç´Â FALSE ·Î ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. µðÆúÆ®¿¡¼­´Â false ·Î, ÇöÀçÀÇ Microsoft® DirectX® 8. x ÀÇ µ¿ÀÛÀ» ÀǹÌÇÑ´Ù. À̰ÍÀ» TRUE ·Î ¼³Á¤ Çϸé (D3DSTENCILCAPS_TWOSIDED °¡ ¼³Á¤µÇ¾î ÀÖ´Â °æ¿ì¸¸ ±â´ÉÇÑ´Ù), ´ÙÀ½ÀÇ ·»´õ¸µ ½ºÅ×ÀÌÆ®´Â Àû±ØÀûÀÎ (½Ã°èȸÀüÀÇ) »ï°¢Çü¿¡¸¸ Àû¿ëµÈ´Ù.

·»´õ¸µ ½ºÅ×ÀÌÆ®¼³¸í
D3DRS_STENCILFAIL½ºÅÙ½Ç Å×½ºÆ®¿¡ ½ÇÆÐÇßÀ» °æ¿ì¿¡ ½ÇÇàÇÏ´Â D3DSTENCILOP.
D3DRS_STENCILZFAIL½ºÅÙ½Ç Å×½ºÆ®¿¡ ÆÐ½ºÇØ, Z Å×½ºÆ®¿¡ ½ÇÆÐÇßÀ» °æ¿ì¿¡ ½ÇÇàÇÏ´Â D3DSTENCILOP.
D3DRS_STENCILPASS½ºÅÙ½Ç Å×½ºÆ®¿Í Z Å×½ºÆ®ÀÇ ¾çÂÊ ¸ðµÎ¿¡ ÆÐ½ºÇßÀ» °æ¿ì¿¡ ½ÇÇàÇÏ´Â D3DSTENCILOP.
D3DRS_STENCILFUNCD3DCMPFUNC ÇÔ¼ö. ½ºÅÙ½Ç Å×½ºÆ®´Â, ((ref & mask) stencilfn (stencil & mask))°¡ true ÀÇ °æ¿ì´Â ÆÐ½ºÇÑ´Ù.

»õ·Î¿î ·»´õ¸µ ½ºÅ×ÀÌÆ®¼¼Æ®´Â, ÅðÇàÀûÀÎ (¹Ý½Ã°èȸÀüÀÇ) »ï°¢Çü¿¡ Àû¿ëµÈ´Ù.

·»´õ¸µ ½ºÅ×ÀÌÆ®¼³¸í
D3DRS_CCW_STENCILFAIL½ºÅÙ½Ç Å×½ºÆ®¿¡ ½ÇÆÐÇßÀ» °æ¿ì¿¡ ½ÇÇàÇÏ´Â D3DSTENCILOP.
D3DRS_CCW_STENCILZFAIL½ºÅÙ½Ç Å×½ºÆ®¿¡ ÆÐ½ºÇØ, Z Å×½ºÆ®¿¡ ½ÇÆÐÇßÀ» °æ¿ì¿¡ ½ÇÇàÇÏ´Â D3DSTENCILOP.
D3DRS_CCW_STENCILPASS½ºÅÙ½Ç Å×½ºÆ®¿Í Z Å×½ºÆ®ÀÇ ¾çÂÊ ¸ðµÎ¿¡ ÆÐ½ºÇßÀ» °æ¿ì¿¡ ½ÇÇàÇÏ´Â D3DSTENCILOP.
D3DRS_CCW_STENCILFUNCD3DCMPFUNC ÇÔ¼ö. ½ºÅÙ½Ç Å×½ºÆ®´Â, ((ref & mask) stencilfn (stencil & mask))°¡ true ÀÇ °æ¿ì´Â ÆÐ½ºÇÑ´Ù.

³ª¸ÓÁöÀÇ ½ºÅÙ½Ç ·»´õ¸µ ½ºÅ×ÀÌÆ®´Â, Ç×»ó ½Ã°èȸÀüÀÇ »ï°¢Çü°ú ¹Ý½Ã°èȸÀüÀÇ »ï°¢ÇüÀÇ ¾çÂÊ ¸ðµÎ¿¡ Àû¿ëµÈ´Ù.

D3DRS_TWOSIDEDSTENCILMODE ´Â, ¶óÀÎ ¹× Æ÷ÀÎÆ® ½ºÇÁ¶óÀÌÆ®¿¡ ´ëÇØ¼­´Â ¹«½ÃµÈ´Ù. Áï, ±× µ¿ÀÛÀº DirectX 8. x ·ÎºÎÅÍ º¯°æµÇÁö ¾Ê´Ù. D3DRS_CCW_STENCIL* ·»´õ¸µ ½ºÅ×ÀÌÆ®´Â ¹«½ÃµÈ´Ù.

»õ·Î¿î ´É·Â ºñÆ®´Â, ÀåÄ¡°¡ ÀÌ ±â´ÉÀ» Áö¿ø Çϰí ÀÖÀ»Áö ¾î¶³Áö¸¦ ³ªÅ¸³½´Ù. ÀÌ ±â´ÉÀ» Áö¿ø Çϰí ÀÖÁö ¾Ê´Â µå¶óÀ̹ö´Â, ÀÌ·¯ÇÑ »õ·Î¿î ·»´õ¸µ ½ºÅ×ÀÌÆ®¸¦ ¹«½ÃÇÒ °ÍÀÌ´Ù. ±× ¿ÜÀÇ ¸ðµç ½ºÅÙ½Ç ´É·Â ºñÆ®´Â, ¾çÂÊ ¸ðµÎÀÇ ¸ðµåÀÇ ½ºÅÙ½Ç ¹öÆÛ¸µ¿¡ Àû¿ëµÈ´Ù. TWOSIDEDSTENCIL Àº, D3DCULLMODE_NONE ¸¦ ¼³Á¤ÇØ µå·ÎÀ×(Drawing) ÇÏ´Â ´É·ÂÀ» ¾Ï½ÃÇϹǷÎ, µå¶óÀ̹ö°¡ ÀÌ »õ·Î¿î ½ºÅÙ½Ç ¸ðµå¸¦ Áö¿ø Çϰí ÀÖ´Â °æ¿ì´Â, µå¶óÀ̹ö°¡ ´ëÀÀÇÏ´Â ´É·Â ºñÆ®¸¦ ¼³Á¤ÇÒ Çʿ䰡 ÀÖ´Ù. Microsoft Windows® Hardware Quality Labs (WHQL)¿¡¼­´Â, À̰ÍÀ» ¿ä°ÇÀ¸·Î Çϰí ÀÖ´Ù.

»õ·Î¿î ·»´õ¸µ ½ºÅ×ÀÌÆ®

    D3DRS_TWOSIDEDSTENCILMODE // BOOL (default is FALSE)
    D3DRS_CCW_STENCILFAIL     // Same default as D3DRS_STENCILFAIL
    D3DRS_CCW_STENCILZFAIL    // Same default as D3DRS_STENCILZFAIL
    D3DRS_CCW_STENCILPASS     // Same default as D3DRS_STENCILPASS
    D3DRS_CCW_STENCILFUNC     // Same default as D3DRS_STENCILFUNC

»õ·Î¿î ´É·Â

    D3DSTENCILCAPS_TWOSIDED // a flag on D3DCAPS9.StencilCaps

°ü·Ã Ç׸ñ



© 2002 Microsoft Corporation. All rights reserved.
¡èTOP