¢¹ »ç¿ë±â¼ú
DirectX 9.0b ±â¹ÝÀ¸·Î °³¹ßÇϸç, Shader´Â ¹öÀü 1.1À» »ç¿ëÇÑ´Ù.
¾Æ·¡ °¢ ÁÖÁ¦¿¡ ´ëÇÑ Á¤¸®´Â ÆÄÆ®º° Ã¥ÀÓÀÚ°¡ ÀÛ¼ºÇÑ ±â¼ú»ç¾çÀ» ¹ÙÅÁÀ¸·Î
ÆÀÀå(ÀüÅÂÁø)ÀÌ Á¤¸®ÇÑ °ÍÀ¸·Î, ¹®Á¦ ÇØ°áÀ» À§ÇØ ÆÀÀÌ °øµ¿À¸·Î ¿¬±¸¸¦ ÇßÁö¸¸
º¸´Ù ¿Ï¼ºµµ¸¦ ³ôÀ̱â À§ÇØ ÁÖÁ¦º°·Î ´ã´çÀ» Á¤ÇØ ÇÁ·ÎÁ§Æ®¸¦ ÁøÇàÇß´Ù.

      # ¾Ö´Ï¸ÞÀÌ¼Ç (´ã´ç Á¶Á¾È£)
      # ÁöÇü (´ã´ç Á¶ÁØÇü) 
      # FrameWork (´ã´ç ±èâÈÆ)
      # ÀΰøÁö´É (´ã´ç °­ÇöÁø)
      # »ç¿îµåÈ¿°ú¿Í ÀÎÅÍÆäÀ̽º (´ã´ç Á¤±ÔÁø)
      # Tree »ý¼º (´ã´ç ³ëÀÏÇå)
      # Å×½ºÆ® º¸°í¼­ÀÇ ¿¹ ; ÁöÇü »ðÁú ºñ¼­ (Á¶ÁØÇü, 2004/01/06)
     
    ¿ÀºêÁ§Æ® À§Ä¡¿Í Ä«¸Þ¶ó FarZ, °ÔÀÓÁ¦ÇÑ ½Ã°£ µîÀº ¿ÜºÎÆÄÀÏ·Î ÀúÀåÇؼ­ ½±°Ô º¯°æÀÌ °¡´ÉÇÏ°í, ÃÖ´ëÇÑ Ä«¸Þ¶ó °¡½Ã°Å¸®¸¦ Å©°Ô Àâ¾Æ¼­ ¹è°æ°ú ºÎµå·´°Ô ¼¯À̵µ·Ï Çß´Ù.
  -. Near_Z = 10.0
        Far_Z = 7000.0
  -. For start = 5000.0
            end = 7000.0
  -. Çʵå Height Map size ; 513 * 513
        Scale = 100,     Height Scale = 30
  -. Default Map size ;  512 * 512
        Detail Map size ;  512 * 512
    Lighting Map size ; 1024 * 1024
        ( °íÁ¤ ±¤¿ø¿¡ ´ëÇÑ °íÁ¤ ¿ÀºêÁ§Æ®ÀÇ ±×¸²ÀÚó¸® )
          °ÔÀÓ¿µ¿ª size ; 6,400 * 6,400
        (Á¤¹æÇüÀ¸·Î Áß¾Ó ºÎºÐÀ¸·Î ÇÑÁ¤)  

 

¢º ¾Ö´Ï¸ÞÀÌ¼Ç (´ã´ç Á¶Á¾È£)               ¡ã...
1) 3ds Max¿¡¼­ ¸ðµ¨¸µ°ú Å°ÇÁ·¹ÀÓ ¾Ö´Ï¸ÞÀ̼ÇÀ» Á¦ÀÛÇÏ°í
    SMDÇü½Ä(ÇÏÇÁ¶óÀÌÇÁ SDK¹æ½Ä)À¸·Î ÀͽºÆ÷Æ®ÇÑ ÈÄ, À妽º ÂüÁ¶ ¹æ½ÄÀ¸·Î
    ´Ù½Ã µ¥ÀÌŸ¸¦ °¡°øÇؼ­ ÀÚü Æ÷¸Ë(*.tmd)À¸·Î º¯È¯Çؼ­ »ç¿ëÇÑ´Ù.
2) ij¸¯ÅÍ ¾Ö´Ï¸ÞÀ̼ÇÀº »ó,ÇϹݽŠºÐ¸®Ã³¸®°¡ °¡´ÉÇϸç,
    »ó, ÇϹݽŠµ¿ÀÛ Á¶ÇÕÀ¸·Î ´Ù¾çÇÑ µ¿ÀÛÀ» Ç¥ÇöÇÒ ¼ö ÀÖ´Ù.
3) ¿ÜºÎ µ¥ÀÌÅÍ ÆÄÀÏ¿¡¼­ °£´ÜÇÏ°Ô ¹üÇÁ¸ÅÇÎ »ç¿ë¿©ºÎ¸¦ ¼³Á¤ÇÏ°í ³ë¸»¸Ê ÆÄÀÏÀ»
    Ãß°¡ÇÏ´Â ¹æ½ÄÀ¸·Î ij¸¯ÅÍ¿Í ¿ÀºêÁ§Æ®¿¡ ¹üÇÁ ¸ÅÇÎÀ» ºÎ¿©ÇÒ ¼ö ÀÖ´Ù.
4) Çϵå¿þ¾î °¡¼Ó ½ºÅ°´×À» À§ÇÑ Çà·ÄÆÈ·¹Æ®¸¦ ¹öÅýº ½¦ÀÌ´õ¸¦ »ç¿ëÇؼ­ Á¶ÀÛÇÑ´Ù.

< TMD_Browser >  

9) ÃÖÁ¾º¸°í¼­
ij¸¯ÅÍ ¿¡´Ï¸ÞÀ̼Ç

3d°ÔÀÓ¿¡¼­ ij¸¯ÅÍ ¿¡´Ï¸ÞÀÌ¼Ç ½ÃÅ°´Â ¹æ¹ý¿¡´Â ¿©·¯°¡Áö°¡ ÀÖ½À´Ï´Ù.
¹ÙÀÌÆе忡 °¢°¢ÀÇ ¸¶µð°¡ µÇ´Â ¿ÀºêÁ§Æ®¸¦ ºÙ¿©¼­ ij¸¯Å͸¦ ¸¸µé ¼öµµ ÀÖ°í,
½ÇÁ¦ ij¸¯ÅÍ°¡ ¿òÁ÷ÀÌ´Â ¸ðµç ¹öÅýº¸¦ ÀúÀåÇÏ°í
(¶§¿¡µû¶ó ¾ÐÃàÀ» ÇѴٰųª µ¥ÀÌÅ͸¦ ÁÙ¿©¼­) ±×°ÍÀ» º¸¿©ÁÖ´Â Æ®À§´×µµ ÀÖ½À´Ï´Ù.
½ºÅ°´×À̶õ ¹öÅýº ´ÜÀ§·Î ÀÚ½ÅÀÌ ¼ÓÇÑ boneÀÇ ¿òÁ÷ÀÓÀ» µû¶ó ¿òÁ÷ÀÌ´Â ¹æ¹ýÀÔ´Ï´Ù.
¹ÙÀÌÆÐµå ¿¡´Ï¸ÞÀ̼ÇÀº ¹ÙÀÌÆÐµå ´ÜÀ§·Î ¸ðµç ¹öÅýº¿¡ ¶È °°Àº º¯È¯À» Àû¿ë½ÃÄÑÁ൵
µÇ¾úÁö¸¸, ½ºÅ°´×¿¡¼­´Â °¢ ¹öÅýº¸¶´Ù µû·Î º¯È¯À» ½ÃÄÑÁà¾ß ÇÕ´Ï´Ù.
±×·¡¼­ Á¤Á¡½¦ÀÌ´õ°¡ ³ª¿À±â ÀÌÀü±îÁö´Â ¼ÒÇÁÆ®¿þ¾î ½ºÅ°´×À» ÇÏ¿©¾ß Çß½À´Ï´Ù.

ÇÏÁö¸¸ ÇöÀç´Â ¹öÅýº ½¦ÀÌ´õ¸¦ ÀÌ¿ëÇÏ¿© ½ºÅ°´×À» Çϵå¿þ¾î °¡¼ÓÀ¸·Î ó¸® ÇÒ ¼ö
ÀÖ½À´Ï´Ù. ¸ð¸®³ë¸®ÀÇ Ä³¸¯ÅÍ ¿¡´Ï¸ÞÀ̼ÇÀº ½¦ÀÌ´õ¸¦ ÀÌ¿ëÇÑ Çϵå¿þ¾î °¡¼Ó ½ºÅ°´×À»
ÇÏ¿´À¸¸ç, À̸¦ À§ÇØ smdÆ÷¸äÀ» º¯ÇüÇÏ¿© ó¸® ÇÏ¿´½À´Ï´Ù.
½ºÅ°´×À» À§ÇÑ Çà·ÄÆÈ·¹Æ®¸¦ À§ÇØ ¹öÅýº ½¦ÀÌ´õ¸¦ »ç¿ë ÇÏ¿´½À´Ï´Ù.
ÀÌ´Â ½¦ÀÌ´õÀÇ »ó¼ö ·¹Áö½ºÅÍ¿¡ ¿©·¯°³ÀÇ ¿¡´Ï¸ÞÀÌ¼Ç Çà·ÄÀ» ÀÔ·ÂÇÏ°í,
°¢ ¹öÅýºÀÇ boneÀÇ À妽º·Î »ç¿ëµÇ¾î¾ß ÇÒ ¿¡´Ï¸ÞÀÌ¼Ç Çà·ÄÀ» ªO¾Æ¼­
º¯È¯ÇÏ´Â ¹æ½ÄÀÔ´Ï´Ù.

±×¿Ü¿¡µµ ij¸¯ÅÍÀÇ »ó,ÇϹݽŠ¿¡´Ï¸ÞÀ̼ÇÀ» ºÐ¸®ÇÏ¿© 󸮰¡´ÉÇϵµ·Ï ÇÏ¿©,
¸ðµç ¿¡´Ï¸ÞÀ̼ÇÀ» ¸¸µé ÇÊ¿ä°¡ ¾øÀÌ µ¿ÀÛÀÇ Á¶ÇÕ¸¸À¸·Î ´Ù¸¥ µ¿ÀÛÀ» Ç¥Çö°¡´ÉÇϵµ·Ï
ÇÏ¿´½À´Ï´Ù.

¸ð¸®³ë¸®¿¡¼­ ij¸¯ÅÍ¿Í ¿ÀºêÁ§Æ®¿¡´Â ¹üÇÁ¸ÅÇÎÀ» Áö¿øÇÕ´Ï´Ù.
µ¥ÀÌÅÍ ÆÄÀÏ¿¡ °£´ÜÇÏ°Ô ¹üÇÁ¸ÅÇÎ »ç¿ë¿©ºÎ¸¦ ¼³Á¤ÇÏ°í ³ë¸»¸Ê ÆÄÀÏÀ»
Ãß°¡ ÇØÁֱ⸸ ÇÏ¸é ¹üÇÁ¸ÅÇÎÀ» »ç¿ë ÇÒ ¼ö ÀÖ½À´Ï´Ù.

¹°ÀÇ Ç¥Çö

¹°ÀÇ Ç¥Çö¹æ¹ý¿¡´Â ¹öÅýº ´ÜÀ§ÀÇ Ç¥Çö¹æ¹ý°ú Çȼ¿ ´ÜÀ§ÀÇ Ç¥Çö¹æ¹ýÀ¸·Î ³ª´­ ¼ö
ÀÖ½À´Ï´Ù. ¹öÅýº ´ÜÀ§ Ç¥Çö¹æ¹ýÀº ¹°ÀÇ Æĵ¿µéÀ» ¹öÅýº¸¦ ¿òÁ÷ÀÓÀ¸·Î¼­ º¸´Ù ´õ
»ç½ÇÀûÀ¸·Î º¸¿©ÁÙ ¼ö ÀÖ´Â ÀåÁ¡ÀÌ ÀÖÁö¸¸, ¹öÅýºÀÇ ¼ö°¡ ¸¹¾Æ¾ß
±× È¿°ú°¡ ÁÁ±â ¶§¹®¿¡ ³ÐÀº ÁöÇü¿¡´Â »ç¿ëÀÌ Èûµì´Ï´Ù.

Çȼ¿ ´ÜÀ§ Ç¥Çö¹æ¹ýÀº ¹Ý»ç È¿°ú³ª ±¼ÀýÈ¿°ú¸¦ Çȼ¿´ÜÀ§·Î ó¸® Çϱ⠶§¹®¿¡
±× ¼Óµµ°¡ Çȼ¿ÀÇ °¹¼ö¿¡ ¼±ÇüÀûÀ¸·Î Áõ°¡ ÇÏ°Ô µË´Ï´Ù.
Áï ÀûÀº ¹öÅýº·Îµµ Ç¥Çö °¡´ÉÇϱ⠶§¹®¿¡ ¹öÅýº º´¸ñÀ» ÁÙÀÏ ¼ö ÀÖ½À´Ï´Ù.

¹Ý»çÈ¿°úÀÇ °æ¿ì ¹Ý»ç ÅؽºÃĸ¦ ¸¸µé¾î¼­ ÇÒ¼öµµ ÀÖ°í,
Å¥ºê¸ÊÀ» ÀÌ¿ëÇÏ¿© Ç¥Çö ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

¸ð¸®³ë¸®ÀÇ ¹°Àº ¹öÅýº, Çȼ¿ ½¦ÀÌ´õ¸¦ ÀÌ¿ëÇÑ
Cube Environment bump mappingÀÔ´Ï´Ù. Ä«¸Þ¶ó¸¦ Áß½ÉÀ¸·Î ÀÏÁ¤ ÇÁ·¹ÀÓ ¸¶´Ù
cube mapÀ» »ý¼ºÇÏ°í, À̸¦ ¹üÇÁ¸ÊÇÎÀÌ Àû¿ëµÇ´Â ¹°Ç¥¸é¿¡ »ç¿ëÇÏ°Ô µË´Ï´Ù.
Çȼ¿ ´ÜÀ§ÀÇ Ç¥Çö¹æ¹ýÀ̱ä ÇÏÁö¸¸, ¹öÅýº°¡ Áö³ªÄ¡°Ô ÀûÀ» °æ¿ì ·¹½ºÅͶóÀÌÁ¦À̼ǿ¡¼­
¼±Çüº¸°£À¸·Î ÀÎÇØ È¯°æ¸ÅÇÎµÈ ÅؽºÃÄ°¡ Ãâ··ÀÌ´Â Çö»óÀÌ ÀϾ°Ô µË´Ï´Ù.
À̸¦ º¸¿ÏÇϱâ À§ÇØ ¹°¿¡ µÎ´Ü°èÀÇ LOD¸¦ Àû¿ëÇß½À´Ï´Ù.

ij¸¯ÅÍ µîÀÌ ¹°¿¡ µé¾î¿ÔÀ»¶§ »ý±â´Â ÆÄ¿øÀº ¹öÅýº ´ÜÀ§ ¹° ó¸®ÀÇ °æ¿ì
°¢ ¹öÅýº ´ÜÀ§·Î ½ºÇÁ¸µÀ» ¿¬°áÇÏ¿© ¸ÚÀÖ°Ô Ç¥Çö ÇÒ ¼ö ÀÖÁö¸¸,
Çȼ¿ ´ÜÀ§ ó¸® ¹æ½ÄÀ̱⠶§¹®¿¡ ÆÄ¿ø ÅؽºÃĸ¦ ÀÌ¿ëÇÏ¿´½À´Ï´Ù.
ÆÄ¿ø ÅؽºÃÄ´Â ´Ü¼øÈ÷ µÕ±Û°Ô ±×·ÁÁø ÅؽºÃÄ ÀÔ´Ï´Ù.
ij¸¯ÅÍ°¡ ¹°¿¡ µé¾î¿À°Ô µÇ¸é ÀÌ ÆÄ¿ø ÅؽºÃĸ¦ µ¥Ä®·Î ¹°¿¡ ±ò°í,
ÀÏÁ¤½Ã°£¸¶´Ù ÀÌ µ¥Ä®ÀÇ Å©±â¸¦ Å©°Ô Çϸ鼭 µ¥Ä®À» Åõ¸íÇÏ°Ô ÇÕ´Ï´Ù.
³ªÁß¿¡ µ¥Ä®ÀÌ ¿ÏÀüÅõ¸íÇÏ°Ô µÇ¸é µ¥Ä®À» ¼Ò¸ê½Ãŵ´Ï´Ù.
»õ·Î¿î µ¥Ä®À» Ãß°¡ÇÏ°í, ÀÏÁ¤½Ã°£ÀÌ µÇ¸é ¸ÕÀú µé¾î¿Â ¼ø¼­´ë·Î ¼Ò¸ê½ÃÅ°±â À§ÇØ
queue¿Í À¯»çÇÑ ÀڷᱸÁ¶°¡ ÇÊ¿äÇßÀ¸¸ç, À̸¦À§ÇØ stlÀÇ list¸¦ ÀÌ¿ëÇß½À´Ï´Ù.

¶óÀÌÆ®¸Ê

°íÁ¤ ¹°Ã¼¿¡´Â ½Ç½Ã°£ ±¤¿ø°è»êº¸´Ù´Â Á¤±³ÇÏ°Ô Àüó¸® °è»êµÈ ±¤¿ø¸ÊÀ» ÅؽºÃÄ·Î
ÀÌ¿ëÇϴ°ÍÀÌ ¼º´ÉÇâ»ó°ú È¿°ú ¸ðµÎ¸¦ ¸¸Á· ½ÃÅ°±â¿¡ ÀûÀý ÇÕ´Ï´Ù.
¶óÀÌÆ®¸ÊÀ» »ý¼ºÇÏ´Â ¿©·¯°¡Áö ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù¸¸, ¸ð¸®³ë¸®¿¡¼­´Â Á¶±Ý µ¶Æ¯ÇÑ
'¿ÀŬ·çÁ¯ Äõ¸®¿Í ¹öÅýº ½¦ÀÌ´õ¸¦ ÀÌ¿ëÇÑ' ¶óÀÌÆ®¸Ê »ý¼º ¹æ¹ýÀ» »ç¿ëÇÏ¿´½À´Ï´Ù.

ÀÌ ¹æ¹ýÀ¸·Î ÁöÇüÀÇ À½¿µ»Ó¸¸ ¾Æ´Ï¶ó ÁöÇüÀ§ÀÇ °íÁ¤¿ÀºêÁ§Æ® µéÀÇ ±×¸²ÀÚµµ
½±°í ºü¸£°Ô »ý¼º ÇÒ ¼ö ÀÖ½À´Ï´Ù.

ÀÚ¼¼ÇÑ »çÇ×Àº http://KIN3D.net ÀÇ 'Enjoy GameStudy'ÀÇ Á¦°¡ ¾´ ¹®¼­¸¦
ÂüÁ¶ÇØ Áֽñ⠹ٶø´Ï´Ù

- Á¾È£±â¼ú»ç¾ç.txt


 

¢º ÁöÇü (´ã´ç Á¶ÁØÇü)                         ¡ã...
ÇÑÂÊÀÌ ¹°°¡¿¡ Á¢ÇÑ ÆòÆòÇÑ ÃÊ¿øÀ¸·Î ÁÖº¯ºÎ¿£ »êÀÌ ÀÖÀ¸¸ç
¾çÀ» ¸ðÀ¸´Â ¿ïŸ¸®°¡ °¡¿îµ¥ À§Ä¡ÇÑ´Ù.
±× ¹ÛÀÇ Ç³Â÷, ³ó°¡, ¿ïŸ¸®, ¹ÙÀ§, ³ª¹«, Ç® µîÀÇ ¿ÀºêÁ§Æ®·Î Çʵ带 ±¸¼ºÇÑ´Ù.
1) Quadtree ±â¹ÝÀ¸·Î ³ôÀ̸ÊÀ» ±×´ë·Î »Ñ¸®´Â ¹æ½ÄÀ¸·Î ÁöÇü ±¸Çö
    È­¸é¿¡ º¸ÀÌ´Â ³ëµåµéÀ» ¼±º°Çϱâ À§Çؼ± °¢ ³ëµåº°·Î ÄøµÀÌ °Ë»ç°¡
    µÇ¾î¾ß Çϸç, °¢ ³ëµåµéÀ» ¾î¶»°Ô »¡¸® Äøµ °Ë»ç¸¦ ÇÏ´À³Ä¿¡ µû¶ó ·»´õ¸µ ¼Óµµ°¡
    ´Þ¶óÁø´Ù. QuadtreeÀÇ ºü¸¥ Äøµ ±â¹ýÀº ¾Æ·¡ÀÇ Flipcode ÀÇ ¹®¼­¸¦ Âü°íÇÏ¿´´Ù.
    http://www.flipcode.com/articles/article_frustumculling.shtml
2) ¹° ¹Ý»ç¿Í Ç®ÀÇ ¿òÁ÷ÀÓ µî ÀÚ¿¬À» »ç½ÇÀûÀ¸·Î Ç¥Çö
    ¹°Àº ¹öÀü 1.1ÀÇ Çȼ¿ ½¦ÀÌ´õ¸¦ »ç¿ëÇϸç,
    cube environment bump mappingÀ» ÀÌ¿ëÇÑ È¯°æ¸ÊÇÎÀ¸·Î
    °ÔÀÓÀÇ ¼Óµµ¿¡ ¿µÇâÀ» ³¢Ä¡Áö ¾Ê±âÀ§ÇØ 100ÇÁ·¹ÀÓ¸¶´Ù Çѹø¾¿ °»½ÅÇÑ´Ù.
3) °íÁ¤ ¿ÀºêÁ§Æ®ÀÇ ±×¸²ÀÚ Ã³¸®´Â Àü󸮷Π±¤¿øÀÌ °è»êµÈ ÅؽºÃĸ¦ ºÙÀÌ´Â
    "¶óÀÌÆ®¸Ê" ±â¼úÀ» ÀÀ¿ëÇßÀ¸¸ç, ±×¸²ÀÚ ºÎºÐ¿¡ ij¸¯Å͵éÀÌ µé¾î°¬À» °æ¿ì´Â
    º»·¡ÀÇ »ö»óÀ» °¨¼â½ÃÄÑ À½¿µÀÌ »ý±ä °Íó·³ º¸ÀÌ°Ô Ç¥ÇöÇÑ´Ù.

 

9) ÁöÇü ÃÖÁ¾º¸°í¼­
* Scene Graph
3D ¿£Áø¿¡ ÀÖ¾î °¡Àå Áß¿äÇÑ ºÎºÐÀº ¾Æ¸¶ Scene Graph ÀÏ °ÍÀÌ´Ù.
¡°º¸ÀÌÁö ¾Ê´Â °ÍÀº ±×¸®Áö ¾Ê´Â´Ù.¡± ¶ó´Â ±âº» °³³ä ¾Æ·¡ Áö±Ý °Í °³¹ßµÇ¾î ¿Â
Scene GraphÀÇ Á¾·ù¸¦ º¸¸é Quadtree, Octree, BSP µî ¿©·¯°¡Áö°¡ ÀÖÁö¸¸,
±× Áß¿¡¼­ º» ÇÁ·ÎÁ§Æ®¿¡¼­ »ç¿ëÇÑ ¾Ë°í¸®ÁòÀº Leaf ±â¹ÝÀÇ Quadtree ÀÌ´Ù.

Quadtree ´Â QuadNode¸¦ 4°³¾¿ ¿ì¸®°¡ ¿øÇÏ´Â ÃÖ¼Ò Å©±âÀÇ ³ëµå°¡ µÉ ¶§±îÁö
Àç±ÍÀûÀ¸·Î ³ª´©¾î ³õÀº °ÍÀ̸ç, ³ëµåÀÇ ÃÖ¼Ò ´ÜÀ§ Áï, Leaf ¿¡
ÁöÇü ¸Þ½¬, ¿ÀºêÁ§Æ®µîÀ» ´ã¾Æ È­¸é¿¡ º¸ÀÌ´Â °Í¸¸À» ·»´õ¸µ Çϵµ·Ï ÇÏ´Â °ÍÀÌ´Ù.

È­¸é¿¡ º¸ÀÌ´Â ³ëµåµéÀ» ¼±º°Çϱâ À§Çؼ± °¢ ³ëµåº°·Î ÄøµÀÌ °Ë»ç°¡ µÇ¾î¾ß Çϸç,
°¢ ³ëµåµéÀ» ¾î¶»°Ô »¡¸® Äøµ °Ë»ç¸¦ ÇÏ´À³Ä¿¡ µû¶ó ·»´õ¸µ ¼Óµµ°¡ ´Þ¶óÁø´Ù.
QuadtreeÀÇ ºü¸¥ Äøµ ±â¹ýÀº ¾Æ·¡ÀÇ Flipcode ÀÇ ¹®¼­¸¦ ÂüÁ¶ÇÏ¿´´Ù.

Reference URL : http://www.flipcode.com/articles/article_frustumculling.shtml

À̸¦ ±¸ÇöÇϱâ À§Çؼ± QuadNodeº°·Î Axis-Aligned Bounding Box(AABB),
Bounding Sphere¸¦ Æ÷ÇÔÇÏ°í ÀÖ¾î¾ß ÇÑ´Ù.
°¢ QuadNodeÀÇ AABB´Â ³ëµåÀÇ °¡Àå ³ôÀº ÁöÇüÀÇ ³ôÀÌ °ª°ú °¡Àå ³·Àº ÁöÇüÀÇ ³ôÀÌ °ªÀ»
ÀÌ¿ëÇÏ¿© ¸¸µé°í Sphere´Â AABB¸¦ °¨½Î´Â ±¸·Î ¸¸µé¸é µÇ°Ú´Ù.
¶ÇÇÑ FrustumÀº ±âº»ÀûÀÎ 6°³ÀÇ Æò¸é ¿Ü¿¡ FrustumÀ» °¨½Î´Â
Bounding Sphere¸¦ ±¸ÇöÇØ¾ß ÇÑ´Ù.

* Terrain
º» ÇÁ·ÎÁ§Æ®¿¡¼­ ÁöÇüÀ» ±¸ÇöÇϱâ À§ÇØ CLOD, SLOD µî ¿©·¯ °¡Áö ¹æ¹ýÀ» ½ÃµµÇØ º¸¾Ò´Ù.
Áö±ÝÀÇ Çϵå¿þ¾î »ç¾ç(Geforce TI4200 ±âÁØ)¿¡¼­´Â CLOD ȤÀº SLOD ´Â
T-Crack °ú PoppingÀ» Àâ±â À§ÇØ GeomorphingÀ» ±¸ÇöÇÏ´Â °ÍÀÌ ´õ ´À·ÈÀ¸¸ç
À§ÀÇ Scene Graph¿¡¼­ ÀÌ¿ëÇÑ Quadtree ±â¹ÝÀ¸·Î ³ôÀ̸ÊÀ» ±×´ë·Î »Ñ·Á ÁÖ´Â °ÍÀÌ
ÈξÀ »¡¶ú´Ù. °ÔÀÓ¿¡ µû¶ó ´Ù¸£¸ç Çϵå¿þ¾îÀÇ ¹ßÀü¿¡ µû¶ó ¼¼°èÀûÀÎ Ãß¼¼µµ
SLOD ȤÀº ³ôÀ̸ÊÀ» ±×´ë·Î »Ñ·ÁÁÖ´Â °ÍÀÌ´Ï º» ÇÁ·ÎÁ§Æ®¿¡¼­µµ
³ôÀ̸ÊÀ» ±×´ë·Î »Ñ·ÁÁÖ´Â ¹æ½ÄÀ» ÅÃÇß´Ù. ¹°·Ð Àú »ç¾ç¿¡¼­´Â
Çȼ¿ ·¡½ºÅͶóÀÌÁ ÁÙ¿© ÁÖ´Â °ÍÀÌ ´õ ºü¸£¹Ç·Î SLOD¸¦ ÀÌ¿ëÇÏ´Â °ÍÀÌ ¿ÇÀ» °ÍÀÌ´Ù.

- ÀÛ¼ºÀÚ : Interval ÆÀ¿ø ¿£Áø ÁöÇü ´ã´ç Á¶ÁØÇü


 

¢º FrameWork (´ã´ç ±èâÈÆ)               ¡ã...
1) °ÔÀÓ Àü¹Ý
    -. °ÔÀÓÀÇ °¢ Àå¸é(ÀÎÆ®·Î, ¸ÞÀθ޴º, °ÔÀÓÇ÷¹ÀÌ, °ÔÀÓÁ¾·á µî)À»
    »óÅÂŬ·¡½ºÆÐÅÏÀ» ÀÌ¿ëÇÏ¿© °ü¸®ÇÑ´Ù.
    -. ÀÎÆ®·Î : 2D À̹ÌÁö¸¦ ÀÌ¿ëÇÏ¿© ÆäÀ̵å-ÀÎ
    -. ¸ÞÀθ޴º : AVI µ¿¿µ»óÀ» È­¸é¿¡ Ãâ·ÂÇÏ°í, ±× À§¿¡ ¸ÞÀθ޴º¸¦ Ãâ·ÂÇÑ´Ù.
    -. ·ÎµùÈ­¸é : ·Îµù ÁßÀ̶ó´Â °ÍÀ» ¾Ë¸®±â À§ÇØ, ·ÎµùÁß¿¡ 2D À̹ÌÁö¸¦ ¶ç¿î´Ù.
    -. °ÔÀÓ Ç÷¹ÀÌÁß : ESC¸¦ ´©¸£¸é ¸Þ´º°¡ ¶ßµµ·Ï ÇÏ°í,
    SceneGraph¸¦ ÀÌ¿ëÇÏ¿© Àå¸éÀ» °ü¸®ÇÑ´Ù.
    -. °ÔÀÓ µµÁß Á¾·á : ÇöÀç È­¸éÀ» Èæ¹éÀ¸·Î ¸¸µå´Â È¿°ú¸¦ ÁÖ°í ÇÁ·Î±×·¥À» ³¡³½´Ù.
    -. Á¤»óÀû °ÔÀÓ Á¾·á : ½ºÄÚ¾î µîÀÇ °á°ú°¡ ³ª¿À°í, ¸ÞÀθ޴º·Î ´Ù½Ã °£´Ù.
2) µ¿¿µ»ó ó¸®
    -. °£´ÜÇÏ°Ô Video For Windows API¸¦ ÀÌ¿ëÇÏ¿© µ¿¿µ»óÀ» ó¸®Çϸç,
    À©µµ ³»ºÎ API¸¦ »ç¿ëÇϹǷÎ, ÄÚµ¦¸¸ ¼³Ä¡ µÇ¾î ÀÖÀ¸¸é
    ¾î¶² µ¿¿µ»óÀ̵ç Àç»ý °¡´ÉÇÏ´Ù.
    -. µ¿¿µ»ó ó¸® ºÎºÐÀº nehe.gamedev.netÀÇ Æ©Å͸®¾óÀ» Âü°íÇÏ¿´´Ù.
3) °¢ ij¸¯ÅÍÀÇ ¿òÁ÷ÀÓ
    -. ½Ã°£¿¡ ´ëÇØ ¼Óµµ°ªÀ» ÀÌ¿ëÇÏ¿© ÇÁ·¹ÀÓÀÌ ´Ù¸£´õ¶óµµ ¶È°°Àº ¼Óµµ·Î
    ¿òÁ÷À̵µ·Ï ó¸®ÇÑ´Ù.
    -. ¾çÀÇ Á¡ÇÁ ¿ª½Ã ¼Óµµ¿Í Áß·ÂÀ» °è»êÇÏ¿© ½ÇÁ¦¿Í À¯»çÇÑ Æ÷¹°¼±À» ±×¸®µµ·Ï ÇÑ´Ù.
4) »ç¶÷°ú ¾ç°ú ´Á´ëÀÇ »óÈ£ ¹ÝÀÀ
    -. ƯÁ¤ »óÅÂÀÏ ¶§ ÇØ´ç °´Ã¼¿¡ ¹ÝÀÀ ¸Þ½ÃÁö¿Í ¹ÝÀÀÀ» ÁÖ´Â °´Ã¼¸¦ ³Ñ°ÜÁ־
    ó¸®Çϸç, °¢ »óÅ¿¡ µû¶ó ¸Þ½ÃÁöÀÇ ¹ÝÀÀÀ» ´Ù¸£°Ô ó¸®ÇÑ´Ù.
 

9) FrameWork ÃÖÁ¾º¸°í¼­
( °ÔÀÓ Àü¹Ý )
- °ÔÀÓÀÇ °¢ Àå¸é(ÀÎÆ®·Î, ¸ÞÀθ޴º, °ÔÀÓÇ÷¹ÀÌ, °ÔÀÓÁ¾·á µî)À» »óÅÂŬ·¡½ºÆÐÅÏÀ»
ÀÌ¿ëÇÏ¿© °ü¸®ÇÏ¿´´Ù.
- ÀÎÆ®·Î : 2D À̹ÌÁö¸¦ ÀÌ¿ëÇÏ¿© ÆäÀ̵å-ÀÎ
- ¸ÞÀθ޴º : AVI µ¿¿µ»óÀ» È­¸é¿¡ Ãâ·ÂÇÏ°í, ±× À§¿¡ ¸ÞÀθ޴º¸¦ ¶ç¿ü´Ù.
- ·ÎµùÈ­¸é : ·Îµù ÁßÀ̶ó´Â °ÍÀ» ¾Ë¸®±â À§ÇØ, ·ÎµùÁß¿¡ 2D À̹ÌÁö¸¦ ¶ç¿ü´Ù.
- °ÔÀÓ Ç÷¹ÀÌÁß : ESC¸¦ ´©¸£¸é ¸Þ´º°¡ ¶ßµµ·Ï ÇÏ°í,
SceneGraph¸¦ ÀÌ¿ëÇÏ¿© Àå¸éÀ» °ü¸®
- °ÔÀÓ µµÁß Á¾·á : ÇöÀç È­¸éÀ» Èæ¹éÀ¸·Î ¸¸µå´Â È¿°ú¸¦ ÁÖ°í ÇÁ·Î±×·¥À» ³¡³½´Ù.
- Á¤»óÀû °ÔÀÓ Á¾·á : ½ºÄÚ¾î µîÀÇ °á°ú°¡ ³ª¿À°í, ¸ÞÀθ޴º·Î ´Ù½Ã °£´Ù.
( µ¿¿µ»ó ó¸® )
- °£´ÜÇÏ°Ô Video For Windows API¸¦ ÀÌ¿ëÇÏ¿© µ¿¿µ»óÀ» ó¸®ÇÏ¿´´Ù.
À©µµ ³»ºÎ API¸¦ »ç¿ëÇϹǷÎ, ÄÚµ¦¸¸ ¼³Ä¡ µÇ¾î ÀÖÀ¸¸é ¾î¶² µ¿¿µ»óÀ̵ç Àç»ý °¡´ÉÇÏ´Ù.
- µ¿¿µ»ó ó¸® ºÎºÐÀº nehe.gamedev.netÀÇ Æ©Å͸®¾óÀ» Âü°íÇÏ¿´´Ù.

( °¢ ij¸¯ÅÍÀÇ ¿òÁ÷ÀÓ )
- ½Ã°£¿¡ ´ëÇØ ¼Óµµ°ªÀ» ÀÌ¿ëÇÏ¿© ÇÁ·¹ÀÓÀÌ ´Ù¸£´õ¶óµµ ¶È°°Àº ¼Óµµ·Î
¿òÁ÷À̵µ·Ï ó¸®ÇÏ¿´´Ù.
- ¾çÀÇ Á¡ÇÁ ¿ª½Ã ¼Óµµ¿Í Áß·ÂÀ» °è»êÇÏ¿© ½ÇÁ¦¿Í À¯»çÇÑ Æ÷¹°¼±À» ±×¸®µµ·Ï ÇÏ¿´´Ù .

( »ç¶÷°ú ¾ç°ú ´Á´ëÀÇ »óÈ£ ¹ÝÀÀ )
- ƯÁ¤ »óÅÂÀÏ ¶§ ÇØ´ç °´Ã¼¿¡ ¹ÝÀÀ ¸Þ½ÃÁö¿Í ¹ÝÀÀÀ» ÁÖ´Â °´Ã¼¸¦ ³Ñ°ÜÁÖ¾î ó¸®ÇÏ¿´´Ù.
- °¢ »óÅ¿¡ µû¶ó ¸Þ½ÃÁöÀÇ ¹ÝÀÀÀ» ´Ù¸£°Ô ó¸®ÇÏ¿´´Ù.

- ÀÛ¼ºÀÚ : Interval ÆÀ¿ø ¿£Áø_class À¯Áö °ü¸® ´ã´ç ±èâÈÆ


 

¢º ÀΰøÁö´É (´ã´ç °­ÇöÁø)                   ¡ã...
1) FSM(finite-state machine)À» ±âº»À¸·Î ¼³°èµÇ¾ú´Ù.
2) ¾çÀÇ »óÅÂ
    STATE_Initialize, --> ÃʱâÈ­
    STATE_Wander, --> ´ë±â»óÅÂ(¿ÜºÎ ¿µÇâÀÌ ¾ø¾îµµ Áö¼ÓÀûÀ¸·Î À̺¥Æ® ¹ß»ý½ÃÅ´)
    STATE_Dead, --> Á×À½(Data°¡ ¾ø¾îÁö´Â °ÍÀÌ ¾Æ´Ï¶ó º¸ÀÌÁö ¾Ê°Ô ó¸®)
    STATE_Disappear, --> Á×Àº ´ÙÀ½ »ç¶óÁü
    STATE_Pattern, --> ·£´ýÇÏ°Ô ¿òÁ÷ÀÓ
    STATE_Threaded, --> À§Çù¹ÞÀº »óÅÂ
    STATE_Runaway, --> ¸Â¾ÒÀ»¶§ µµ¸Á

3) ´Á´ëÀÇ »óÅÂ
    -. ¾çÀ» À§ÇùÇÏ´Â Á¸Àç·Î¼­ ±âº»´ë±â(Ž»ö) »óÅ¿¡¼­ ·»´ýÇÏ°Ô ¿òÁ÷ÀÌ´Ù°¡
    ÀÏÁ¤¿µ¿ª¿¡ ¾çÀÌ µé¾î¿À¸é °ø°ÝÇÑ´Ù.
    -. ´Á´ëÀÇ ¼ö´Â °ÔÀÓ ·¹º§µîÀ» °í·ÁÇؼ­ °áÁ¤Çϸç (ÇöÀç´Â 5¸¶¸® µîÀå)
    ¾ç°ú´Â ´Ù¸£°Ô Á×Àº ÈÄ¿¡ ÀÏÁ¤½Ã°£ÀÌ Áö³ª¸é ´Ù¸¥ À§Ä¡¿¡ ´Ù½Ã ÃâÇöÇÑ´Ù.

4) ¹öÀü 1.03¿¡¼­´Â ¾çÀ» ¸ðÀ¸´Â »óÅ°¡ Ãß°¡µÇ°í,
    horn¸ð¾çÀÇ ¾ÆÀÌÄÜ°ú »ç¿îµå°¡ ÀÎÅÍÆäÀ̽º¿¡ Ãß°¡µÇ°í
    °¢ »óÅÂÀÇ Ã³¸® ¿ì¼±¼øÀ§µîÀÌ ºÎºÐ ¼öÁ¤µÇ¾ú´Ù.
 

9) ÀΰøÁö´É ÃÖÁ¾º¸°í¼­
* ¾çÀÇ ÀΰøÁö´É
»óÅ : STATE_Initialize, --> ÃʱâÈ­
STATE_Wander, --> ´ë±â»óÅÂ
STATE_Dead, --> Á×À½
STATE_Pattern, --> ·£´ý ¹«ºê
STATE_Threaded, --> À§Çù¹ÞÀº »óÅÂ
STATE_Runaway, --> ¸Â¾ÒÀ»¶§ µµ¸Á
STATE_Follow, --> Äɸ¯ÅÍ µû¶ó°¡±â( ¹Ìó¸® )
STATE_Disappear, --> Á×Àº´ÙÀ½ »ç¶óÁü
STATE_GoFence --> ¿ïŸ¸® ÁÖº¯¿¡ ÀÖÀ»¶§ ¿ïŸ¸® ¾ÈÀ¸·Î °í°í

Å° : W --> ¾Õ
S --> µÚ
A --> ÁÂ
D --> ¿ì
F --> ¾ç¸ðÀ¸±â
1 --> ¿ÍÀ̾î on
2 --> ¿ÍÀ̾î off
3 --> Ã浹ó¸® ±¸ Ç¥½Ã
4 --> HP, À§Ä¡ Ç¥½Ã
F5 --> Ä«¸Þ¶ó º¯È¯(¿ø±Ù -3ÀÎĪ- Ä«¸Þ¶ó)
F6 --> Ä«¸Þ¶ó ¿ø·¡´ë·Î ( ±âº» -1ÀÎĪ- Ä«¸Þ¶ó )
SPACE --> Á¡ÇÁ

Up --> Ä«¸Þ¶ó º¯È¯½Ã ¿ø±Ù(3ÀÎĪ)Ä«¸Þ¶ó À̵¿(¾Õ)
Down --> '' (µÚ)
Left --> '' (ÁÂ)
Right --> '' (¿ì)
Ä«¸Þ¶ó º¯È¯½Ã ¸¶¿ì½º ¿À¸¥ÂÊŬ¸¯ = Ä«¸Þ¶ó ¹æÇâÀüȯ

Ã浹ó¸® : Äɸ¯ÅÍ¿Í °íÁ¤¿ÀºêÁ§Æ® --> üũµÊ ( ºÎµúÈ÷¸é ´Þ¶óºÙÀ½ )
Äɸ¯ÅÍ¿Í ¾ç --> üũµÊ ( ¾çÀ» ¹Ð°í´Ù´Ô )
¾ç°ú ¾ç --> ¼­·ÎºÎµúÈ÷¸é È× µ¹¸é¼­ ¶³¾îÁü
¾ç°ú °íÁ¤¿ÀºêÁ§Æ® --> ¾ÈµÊ ( ó¸®Áß )
* ÀüüÀûÀ¸·Î Ã浹üũ°¡ ¾ÆÁ÷ ¹Ì¼÷ÇÔ ( ³»°¡ ó¸®Çϴ°Š¾Æ´Ô )

- ÀÛ¼ºÀÚ : Interval ÆÀ¿ø AI ´ã´ç °­ÇöÁø


 

¢º »ç¿îµåÈ¿°ú¿Í ÀÎÅÍÆäÀ̽º (´ã´ç Á¤±ÔÁø)   ¡ã...
»ç¿îµå È¿°ú ;
DirectShow ¿Í DirectMusic¸¦ »ç¿ëÇϸç,
1) DirectShow´Â ¹è°æÀ½¾Ç play¿¡ »ç¿ëÇÑ ±â¼ú·Î¼­,     ÀúÀ½Áú mp3·Î º¯È¯ÇÏ¿© ºÎºÐÀûÀ¸·Î ÆíÁýÇÏ¿© »ç¿ëÇÑ´Ù.
2) DirectMusicÀº ¹°¼Ò¸®, ¹ßÀÚ±¹ ¼Ò¸®µîÀÇ 2D¿Í 3DÀÇ È¿°úÀ½¿¡ »ç¿ëÇÑ´Ù.
    ƯÈ÷, ÁÖÀΰøÀÌ ¹°°¡±Ùó¸¦ ´Ù´Ò ¶§, ÁÖÀΰøÀÇ Y°ª(Áö¸é»óÀÇ À§Ä¡)¸¦ Á¶»çÇÏ¿©
    ¹°ÀÇ Yº¸´Ù ³·À¸¸é ¹°À屸 ¼Ò¸®¸¦ ³ôÀ¸¸é ±×³É Àܵ𸦠¹â´Â ¼Ò¸®¸¦ Àç»ýÇÑ´Ù.

ÀÎÅÍÆäÀ̽º ;
1) ³ÐÀº½Ã¾ß¸¦ À§ÇØ ²À ÇÊ¿äÇÑ Á¤º¸¸¸À» È­¸é¿¡ Ç¥½ÃÇϸç.
    Direct3DÀÇ ÅؽºÃ³ ºí·»µù±â¼ú°ú DirectInput ±â¼úÀ» ÀÌ¿ëÇߴµ¥,
    ¸Þ´º´Â ´ÙÀÌ·ºÆ® ÀÎDzÀ¸·Î Ŭ¸¯ÇÏ¿´À»¶§ ±× ½ºÇÁ¶óÀÌÆ®ÀÇ °ªÀÌ true
    (¸¶¿ì½º°¡ ±× ½ºÇÁ¶óÀÌÆ®À§¿¡ ¿Ã¶ó¿ÍÀÖ´Â »óÅÂ) À϶§
    Ŭ¸¯ÀÌ µÇ¾ú´Ù´Â ¸Þ½ÃÁö¸¦ º¸³»´Â ¹æ½ÄÀ¸·Î ±¸ÇöÇÑ´Ù.
 

9) ¸ð¸®³ë¸®ÀÇ GUI ±â¼ú ¹®¼­
ÀÛ¼ºÀÚ Á¤±ÔÁø(µ¿¸íÁ¤º¸±â¼ú¿ø 3D°ÔÀÓÇÁ·Î±×·¥°³¹ßÀÚ 5±â)

Àú´Â GUI (Graphic User Interface) Áï È­¸é¿¡ ³ªÅ¸³ª´Â °ÔÀÓÀÇ »óŸ¦ À¯Àú¿¡°Ô ¾Ë·ÁÁÖ°í
À¯Àú·Î ºÎÅÍÀÇ ÀÔ·ÂÀ» ¹Þ´Â ºÎºÐÀ» Á¦ÀÛÇÏ¿´½À´Ï´Ù.
Å©°Ô Direct3DÀÇ ÅؽºÃ³ ºí·»µù±â¼ú°ú DirectInput ±â¼úÀ» ÀÌ¿ëÇÏ¿´½À´Ï´Ù.
ÀÎÅÍÆäÀ̽ºÀÇ ±âº»Àº 3D ½ºÇÁ¶óÀÌÆ® Àε¥ ¿äÁò ÈçÈ÷ ¾²´Â ¹æ½ÄÀÎ RHW(µ¿Â÷ÁÂÇ¥)¹æ½Ä°ú
Á÷±³Åõ¿µ¹æ½ÄÀ» ÀÌ¿ëÇÏ¿´½À´Ï´Ù.
¸ð¸®³ë¸®¿¡¼­´Â ȸÀüÀÌ ¾ø´Â ½ºÇÁ¶óÀÌÆ®´Â RHW¹æ½ÄÀ¸·Î ȸÀüÀÌ ÇÊ¿äÇÑ ½ºÇÁ¶óÀÌÆ®´Â
Á÷±³Åõ¿µ ¹æ½ÄÀ» ÀÌ¿ëÇÏ¿´½À´Ï´Ù. óÀ½¿¡´Â RHW ¹æ½ÄÀ¸·Î ¸ðµÎ ÇÏ·Á°í ÇßÀ¸³ª
½ºÇÁ¶óÀÌÆ®ÀÇ È¸ÀüÀÌ Ã³¸®°¡ ¾î·Á¿ü´ø ÀÌÀ¯·Î Á÷±³Åõ¿µ¹æ½ÄÀ» °°ÀÌ ¾²°Ô µÇ¾ú½À´Ï´Ù.

RHW ¹æ½ÄÀº D3DXVECTOR4 ÀÇ Á¤Á¡ÀÇ w ¿¡ 1À» ³Ö¾îÁÖ´Â ¹æ¹ýÀÔ´Ï´Ù.
ÀÌ °æ¿ì Á¤Á¡Àº Á¤Á¡ ÆÄÀÌÇÁ¶óÀÎÀ» °ÅÄ¡Áö ¾Ê°í ±×´ë·Î Ãâ·ÂµÇ°Ô µË´Ï´Ù.
±×·¯¹Ç·Î 800 x 600 Çػ󵵿¡¼­ È­¸éÀÇ ÁÂÃø »ó´ÜÀÌ0,0 ¿ìÃø ÇÏ´ÜÀÌ 800, 600 ÀÌ µÇ¸é¼­
Æ÷±×³ª ¶óÀÌÆ®ÀÇ ¿µÇâµµ ¹ÞÁö ¾Ê°í ±×´ë·Î ³ª¿À°Ô µË´Ï´Ù.
±×·¯³ª ¹Ó¸Ê¼³Á¤¿¡´Â ¿µÇâÀ» ¹Þ¾Æ¼­ LINER, POINTER ¹æ½ÄÁß ¾î¿ï¸®´Â ¹æ½ÄÀ¸·Î
¼³Á¤ÇØ¾ß ÇÕ´Ï´Ù. ±×¸®°í °¢°¢ÀÇ ½ºÇÁ¶óÀÌÆ®´Â ¸¶¿ì½º°¡ ÀÚ±â À§¿¡ ÀÖ´ÂÁö ¾ø´ÂÁö¸¦
°ªÀ¸·Î °¡Áö°í ÀÖ½À´Ï´Ù. ±×¸®ÇÏ¿© ´ÙÀÌ·ºÆ® ÀÎDzÀ¸·Î Ŭ¸¯ÇÏ¿´À»¶§
±× ½ºÇÁ¶óÀÌÆ®ÀÇ °ªÀÌ true (¸¶¿ì½º°¡ ±× ½ºÇÁ¶óÀÌÆ®À§¿¡ ¿Ã¶ó¿ÍÀÖ´Â »óÅÂ) À϶§
Ŭ¸¯ÀÌ µÇ¾ú´Ù´Â ¸Þ½ÃÁö¸¦ º¸³À´Ï´Ù.
ÀÌ·± ¿ø¸®·Î ¸ð¸®³ë¸®ÀÇ ¸Þ´º¸¦ ±¸ÇöÇÏ¿´½À´Ï´Ù.
±æÀÌ°¡ ÁÙ¾îµå´Â ½Ã°è¸·´ë¿Í ÆùÆ®´Â Åؼ¿ÀÇ °ªÀ» º¯°æÇÏ¿© »Ñ·ÁÁÖ´Â ¹æ½ÄÀÔ´Ï´Ù

9) ¸ð¸®³ë¸®ÀÇ »ç¿îµå ±â¼ú¹®¼­
ÀÛ¼ºÀÚ : Á¤±ÔÁø(µ¿¸íÁ¤º¸±â¼ú¿ø °ÔÀÓÇÁ·Î±×·¥°³¹ßÀÚ5±â)

¸ð¸®³ë¸®ÀÇ »ç¿îµå´Â Å©°Ô DirectShow ¿Í DirectMusic À¸·Î ±¸¼ºµÇ¾î ÀÖ½À´Ï´Ù.

1. DirectShow¸¦ ÀÌ¿ëÇÑ ¹è°æÀ½¾Ç
1) À½¿øÃâó : Pat Metheny ÀÇ A Map of the World ¾Ù¹ü
*ÀúÀ½Áúmp3·Î º¯È¯ÇÏ¿´°í ºÎºÐÀûÀ¸·Î ÆíÁýÇÏ¿© »ç¿ëÇÏ¿´À¸³ª ÀúÀÛ±ÇÀÇ ¹®Á¦°¡ µÈ´Ù¸é
ÀÚ¹ßÀûÀ¸·Î ¹Ù²Ùµµ·Ï ÇÏ°Ú½À´Ï´Ù.
2) »ó¼¼±â¼úÀº Àü¹ÝÀûÀ¸·Î DirectShow SDK¸¦ Âü°í ÇÏ¿© Á¦ÀÛ.

2. DirectMusicÀ» ÀÌ¿ëÇÑ 2D, 3D »ç¿îµå

1) À½¿øÃâó :
Mythic EntertainmentÀÇ Dark Age of Camelot , °ÔÀÓÀç·áÆÄÅ©(http://kgdb.or.kr)
2) ÆÄÀÏ Æ÷¸Ë Çü½Ä : PCM, IMA_ADPCM
3) »ó¼¼±â¼ú : DirectMusic SDK ÂüÁ¶
4) ±¸Çö¿ø¸®¿Í »ç¿ë :
2D »ç¿îµå¿Í 3D »ç¿îµåÀÇ ±¸Çö ¿ø¸®´Â µ¿ÀÏÇѵ¥ ÃÖÁ¾¹öÆÛÀÇ Ãâ·Â ¸ðµå¸¦
¾Æ·¡¿Í °°ÀÌ ¼³Á¤ÇÔÀ¸·Î¼­ ±¸º°Çϵµ·Ï Çß½À´Ï´Ù.
DS3DMODE_NORMAL; // ÀϹÝÀûÀÎ3D »ç¿îµå
DS3DMODE_DISABLE; // 3D±â´ÉÀ» ²û = 2D »ç¿îµå

2D »ç¿îµå ÀÏ °æ¿ì ¹öÆÛ¸¦ DS3DMODE_DISABLE ·Î ¼³Á¤ÇÏ°í
CMusicSystem::Play2D(int ID) ÇÔ¼ö¸¦ È£ÃâÇÔÀ¸·Î¼­ ¼Ò¸®¸¦ Àç»ýÇÕ´Ï´Ù.
ID´Â ¼¼±×¸ÕÆ®(¸®¼Òtm)ÀÇÀ̸§À¸·Î enum À¸·Î ¹Ì¸® Á¤ÀÇ µÇ¾î ÀÖ½À´Ï´Ù.

3D »ç¿îµå´Â ¹öÆÛ¸¦ DS3DMODE_NORMAL ·Î ¼³Á¤ÇѵÚ
CMusicSystem::Play3D(int ID, float x, float y, float z) ÇÔ¼ö¸¦ È£ÃâÇÕ´Ï´Ù.
ID ÀÎÀÚ´Â 2D¿Í µ¿ÀÏÇϸç À½¿øÀÌ Àç»ýµÇ´Â À§Ä¡°ª x,y,z¸¦ ÀÔ·ÂÇØÁÖ¾î¾ß ÇÕ´Ï´Ù.

°­¹°¼Ò¸®´Â ÁÖÀΰøÀÇ Z ÁÂÇ¥¸¦ ½Ç½Ã°£À¸·Î ¹Þ¾Æ¼­ °­¹° ¹öÆÛÀÇ Z À§Ä¡¿¡ ´ëÀÔÇØ ÁÜÀ¸·Î½á
Ç÷¹À̾ Ç×»ó °­¹°ÂÊÀ¸·Î ½Ã¼±À» µ¹¸±¶§´Â °­¹°¼Ò¸®°¡ Å©°Ô µé¸®µµ·Ï ÇÏ¿´½À´Ï´Ù.
¾çÄ¡±âÀÇ ¹ßÀÚ±¹ ¼Ò¸®´Â ŸÀ̸Ӹ¦ ÀÌ¿ëÇÏ¿© ÇѹßÀÚ±¹ÀÇ ¼Ò¸®¸¦ ¶Û¶§´Â
¿¹¸¦ µé¾î 0.5ÃÊ ¸¶´Ù Çѹø¾¿ È£ÃâÇÏ°í °É¾î°¥¶§´Â 0.8ÃÊ¿¡ Çѹø È£ÃâµÇ´Â ¹æ½ÄÀ¸·Î
ÇÏ¿´½À´Ï´Ù.
±×¸®°í ÁÖÀΰøÀÇ Y°ª(Áö¸é»óÀÇ À§Ä¡)¸¦ Á¶»çÇÏ¿© ¹°ÀÇ Yº¸´Ù ³·À¸¸é
¹°À屸 ¼Ò¸®¸¦ ³ôÀ¸¸é ±×³É Àܵ𸦠¹â´Â ¼Ò¸®¸¦ Àç»ýÇÕ´Ï´Ù.


 

¢º Tree »ý¼º (´ã´ç ³ëÀÏÇå)                   ¡ã...
1) ¿ÜºÎÇÁ·Î±×·¥ Çü½ÄÀ¸·Î ½Ç¸°´õ¸¦ ¾à°£ º¯ÇüÇؼ­ ±¸ÇöÇßÀ¸¸ç,
    Ư¼ºÄ¡¸¦ ¼³Á¤ÇÏ°í ·»´õ¸µ»óÅ¿¡¼­ ¹öÆ°À» ´©¸£¸é ¹Ù·Î SMD ÆÄÀÏÀ» »ý¼ºÇÏ°í,
    ÃÖÁ¾ µ¥ÀÌÅÍ Çü½ÄÀº ij¸¯ÅÍ¿Í °°Àº ÀÚü Æ÷¸Ë(*.tmd)À¸·Î º¯È¯Çؼ­ »ç¿ëÇÑ´Ù.
 

9) Tree »ý¼º ÃÖÁ¾º¸°í¼­
* ³ª¹«(Tree)

½Ç¸°´õ¸¦ ¾à°£ º¯ÇüÇؼ­ ±¸ÇöÇß½À´Ï´Ù.
·»´õ¸µ»óÅ¿¡¼­ ¹öÆ°À» ´©¸£¸é ¹Ù·Î SMD ÆÄÀÏÀ» »ý¼ºÇϵµ·Ï Çß½À´Ï´Ù.
ÆÄÀÏÃßÃ⸸ ÇÏ´Â °ÍÀ̱⠶§¹®¿¡ Ưº°È÷ Ä«¸Þ¶ó¸¦ ´ÞÁø ¾Ê¾Ò½À´Ï´Ù.

¸Þ´º : Mesh -> Solid ¹× WireFrame º¸±â º¯È¯
Extract ¹öÆ° -> SMD ÆÄÀÏ Ãâ·Â

- ÀÛ¼ºÀÚ : Interval ÆÀ¿ø Tree SMD ÆÄÀÏ »ý¼ºÅø ´ã´ç ³ëÀÏÇå


 

¢º # Å×½ºÆ® º¸°í¼­ÀÇ ¿¹ ; ÁöÇü »ðÁú ºñ¼­ (Á¶ÁØÇü, 2004/01/06)                   ¡ã...
www.morinori.net ÀÇ '°³¹ßÀÚ°ø°£'¿¡ ÀÇ°ß°ú Å×½ºÆ® °á°ú°¡ Á¤¸®µÇ¾î ÀÖ°í,
'ÁöÇü »ðÁúÀÇ ºñ¼­'´Â ±× Áß ÇÑ°¡Áö ¿¹ÀÌ´Ù.

* Áö±Ý±îÁö ½ÃµµÇß´ø°Íµé

1. CLOD with Quadtree
    °Å¸®¿Í ³ôÀÌ¿¡ µû¶ó LOD¸¦ ½Ç½Ã°£À¸·Î Àû¿ëÇÏ´Â ±â¹ýÀ¸·Î
    LOD°¡ º¯ÇÒ ¶§¸¶´Ù PoppingÀÌ ÀϾ´Âµ¥ Geomorphing Çϱâ Àý¶ó Â¥Áõ³­´Ù.
   ´ë¼¼´Â SLOD ¶ó³ª ¹¹¶ó³ª....ÄÉÄÉÄÉ

2. SLOD Patch with Quadtree
    1) °¢ ÆÐÄ¡¸¶´Ù ÇϳªÀÇ Á¤Á¡ ¹öÆÛ¿Í LODº°·Î À妽º ¹öÆÛ¸¦ µÐ´Ù.
        - ¹®Á¦Á¡ : °¢ ÆÐÄ¡º°·Î ·»´õ¸µµÇ¾î¾ß Çϴµ¥
            Á¤Á¡¹öÆÛ ½ºÀ§ÄªÀ¸·Î ÀÎÇØ ÇÔ¼ö È£ÃâÀÇ ¿À¹öÇìµå°¡ ½ÉÇÏ´Ù.
    2) ÇϳªÀÇ Á¤Á¡¹öÆÛ¿Í °¢ ÆÐÄ¡¸¶´Ù À妽º ¹öÆÛ¸¦ µÐ´Ù.
        - ¹®Á¦Á¡ : À妽º ¹öÆÛ ½ºÀ§ÄªÀ¸·Î ÀÎÇØ ÇÔ¼ö È£ÃâÀÇ ¿À¹öÇìµå°¡ ½ÉÇÏ´Ù.
            ±×¸®°í ³ôÀÌ¸Ê Æ¯¼º»ó DrawIndexedPrimitived ¿¡¼­
            Á¤Á¡ÀÇ ¹üÀ§ ¼³Á¤ÀÌ ¾î·Æ´Ù.
    3) ÇϳªÀÇ Á¤Á¡¹öÆÛ¿Í ÇϳªÀÇ À妽º ¹öÆÛ
        : °¢ ÆÐÄ¡º°·Î »ý¼ºµÇ¾î ÀÖ´Â À妽º¸¦ ½Ç½Ã°£À¸·Î À妽º ¹öÆÛ¿¡ º¹»çÇÏ¿© ³Ö´Â´Ù.
        - ¹®Á¦Á¡ : À§ÀÇ µÎ°¡Áö ¹®Á¦´Â ÇØ°áÀÌ µÇ¾î FPS ¼ö´Â ¸¸Á·ÇÏ´Â ¼öÄ¡°¡ ³ª¿Â´Ù.
            ±×·±µ¥ LOD°¡ ´Ù¸¥ ÆÐÄ¡°¡ ¼­·Î ÀÎÁ¢ÇßÀ»½Ã Å©·¢¹®Á¦ ¹ß»ý.
            (Å©·¢ÀÌ ¹ß»ýÇҰŶó°í »ý°¢ÇÏ°í ÀÖ¾úÀ¸³ª ÇØ°áÃ¥ÀÌ ³Ê¹«³ªµµ ¸¶À½¿¡ ¾Èµç´Ù.)
            ±×¸®°í ÇØ°áÇÑ´ÙÇصµ ¿©ÀüÈ÷ Popping ¹ß»ý.
        PoppingÀÌ µÎµå·¯Áö°Ô º¸ÀÌÁö ¾ÊÀ¸³ª ÇØ°áÇÏ·Á µç´Ù¸é °á±¹ CLOD °¡ µÇ´Â°ÍÀϱî...

        * ½Ç½Ã°£À¸·Î Å©·¢À» ÇØ°áÇÏ·Á ÇÑ´Ù¸é SLOD¸¦ ¾µ ÀÌÀ¯°¡ ¾ø´Ù.
            ¹Ì¸® Å©·¢À» °í·ÁÇÏ¿© LOD¸¦ ±¸¼ºÇÏ´Â ¼ö ¹Û¿¡ ¾ø´Âµ¥
            ±×°ÍÀº ³Ê¹«³ªµµ ¾î·Á¿î °úÁ¦ÀÌ´Ù.

    4) ³ôÀÌ LOD ¸¦ Àû¿ëÈÄ ÆÐÄ¡¿¡ ´ã¾Æ ·»´õ¸µ
        ÃÖ ¼±»ý´Ô²²¼­ ¾ÆÀ̵ð¾î¸¦ Á̴ּµ¥ ROAM¿¡¼­ QUAD·Î...ÄÉÄÉÄÉ
        .ÄõµåÆ®¸®¸¦ ÀÌ¿ëÇÏ¿© ³ôÀÌ LOD¸¦ Àû¿ëÇÏ°í
        .±×°ÍÀ» ÆÐÄ¡¿¡ ´ã¾Æ ·»´õ¸µÇÑ´Ù.
        - ¾ÆÁ÷ Scene Graph¸¦ ¿Ïº®ÇÏ°Ô ±¸ÇöÇÏÁö ¸øÇßÁö¸¸
        - ¿ª½Ã³ª ¼ýÀÚ ³îÀÌ´Ù. Àû´çÇÏ°Ô Á¶ÀýÇϸé 250~300fps

3. LOD °í ³ª¹ßÀÌ°í°£¿¡ ´Ù ¶§·ÁÃĶó ³ôÀÌ¸Ê ±×´ë·Î »Ñ¸±¶õ´Ù.
    µ¿±â»ý âÈÆ ¾Ë°í¸®Áò : ¿À~ ³î¶ó¿ö¶ó....¤Ñ¤Ñ;;; Æò±Õ 250fps
    ¿Ïº®ÇÏÁø ¾ÊÁö¸¸ ±â´ëµÈ´Ù. ÆÄÀÌÆÃ!!!

¸¾¿¡ »óó¸¦ ÀÔ°í ÄõµåÆ®¸®¿Í ÆÐÄ¡¸¦ ÀÌ¿ëÇÏ¿© ³ôÀÌ¸Ê ±×´ë·Î »Ñ·Á º¸¾ÒÁö¸¸.....
        Mapsize : 513x513
        Patch : 8
        Scale : 128
        Far Z : 10,000
        µð¹ö±×·Î Äõµå Á߽ɿ¡¼­
        FPS : ÃÖ¼Ò 130~
        ¿¡°Ô°Ô...¤Ñ¤Ñ;;;
        Á×½è´Ù....Á¨Àå

Á¿³ª ¿­¹Þ¾Æ¼­ ÀÌÀü¿¡ ¸¸µé¾î ³µ´ø°Å »ì¦ °íÄ¡°¡²¿ ¸¶Áö¸· ½Ãµµ ÇÔ Çغ¸°í
¹æÇâÀ» Á¤ÇÏ·Á ÇÑ´Ù. ÄÉÄÉÄÉ ^^

- ¸ðµç °ÍÀ» Àü󸮷Î
- ³ôÀ̸ÊÀÇ Æ¯¼º»ó ÀÏÁ¤ÇÑ ¹üÀ§ÀÇ Á¤Á¡À» ÁöÁ¤ÇÏÁö ¸øÇÑ°ÍÀ»
ÆÐÄ¡ ´ÜÀ§·Î ¸ðµç ÆÐÄ¡ÀÇ Á¤Á¡À» ÇϳªÀÇ Á¤Á¡ ¹öÆÛ¿¡ ÀúÀåÇÏ°í
À妽º ±îÁö ÆÐÄ¡ ´ÜÀ§·Î ÀúÀåÇÔÀ¸·Î½á ÇØ°áÇÏ·Á ÇÔ

ÁöÇü¿¡¼­ ¸Ó¹µ¸Ó¹µ...ÄÉÄÉÄÉ
³»°¡ »¡¸® ¸¶¹«¸® ÇØ¾ß ÇÒÅÙµ¥

¸îÀÏ°£ ¼ú»¡°í Á¤½Å¾øÀÌ Áö³»¼­ ¿äÁò ¾Æ¹«»ý°¢ÀÌ ¾ø³×¿ä. ¸Û~~~~~~~
»¡¸® Á¤½ÅÂ÷¸®°í ÇÁ·ÎÁ§Æ®¿¡ Àü³äÇÏ°Ú½À´Ï´Ù.
 

¢º óÀ½À¸·Î                 ¡ã...