·ù±¤

°¡ÀÔ: 2001³â 7¿ù 25ÀÏ ¿Ã¸° ±Û: 3413 ¼Ò¼Ó: GPGstudy
Ÿ »çÀÌÆ® ID(?): docbook.kr::·ù±¤
|
[°Á ÃʾÈ] ÇÁ·Î±×·¡¹Ö°ú ¿µ¾î(3) |
¿Ã·ÁÁü: 2002-09-03 23:15
|
|
Ç×»ó ÇÏ´Â º¯¸íÀÌÁö¸¸ ³»¿ëÀ̳ª ±¸¼º ¸ðµÎ ¾î¼³Ç »óÅÂÀ̱¸¿ä. ÃʾȱîÁöµµ ¾È µÇ´Â ¼ö°í(note) Á¤µµ¶ö±î... ¾ðÁ¨°¡´Â Á» ´õ ¿ÏÀüÇÏ°Ô ´Ùµë°í ½Í½À´Ï´Ù¸¸...
Âü°í·Î 1 ÆíÀº http://www.gpgstudy...viewtopic.php?t=566, 2 ÆíÀº http://www.gpgstudy.../viewtopic.php?t=627
9. ±¸¹®Àû Á¤È®¼º°ú Àǹ̷ÐÀû Á¤È®¼º
(°©Àڱ⠰簡ÁöÀÌÁö¸¸ ÃʾÈÀ̴ϱî¿ä ¹¹-.- ³ªÁß¿¡ Á» ´õ °í¹ÎÀÌ ¼º¼÷µÇ¾î¼ ¡®¹®Àå·Ð¡¯À» ¾µ ¼ö ÀÖ°Ô µÈ´Ù¸é ÀÌ ÀýÀº ¹®Àå·ÐÀÇ ÀϺΰ¡ µÉ °ÍÀÔ´Ï´Ù.)
¹®ÀåÀÌ ±¸¹®ÀûÀ¸·Î ¿Ç´Ù´Â ¸»Àº °£´ÜÈ÷ ¸»ÇÏ¸é ¹®¹ý¿¡ ¸Â´Â´Ù´Â À̾߱âÀÌ´Ù. À̸¦ Àû°Ý¼º(well-formedness)¶ó°íµµ ÇÑ´Ù. Àǹ̷ÐÀûÀ¸·Î ¿Ç´Ù´Â °ÍÀº ¸»ÀÌ µÈ´Ù´Â ¶æÀÌ´Ù. À̸¦ À¯È¿¼º(validity)¶ó°íµµ ÇÑ´Ù. ¿¹¸¦ µé¾î¼ ¡°Time flies like an arrow.¡±´Â ±¸¹®ÀûÀ¸·Î³ª Àǹ̷ÐÀûÀ¸·Î³ª ¹®Á¦°¡ ¾øÁö¸¸, ¡°Thyme flies like an arrow.¡±Àº ±¸¹®ÀûÀ¸·Î ¿ÇÀ¸³ª Àǹ̷ÐÀûÀ¸·Î´Â Á» ÀÌ»óÇÏ´Ù(thymeÀº Çâ½Å·á-.-).
¿Ã¹Ù¸¥ ¹®ÀåÀº ±¸¹®ÀûÀ¸·Îµµ ¿Ç¾Æ¾ß Çϰí Àǹ̷ÐÀûÀ¸·Îµµ ¿Ç¾Æ¾ß ÇÑ´Ù. ´ëºÎºÐÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾îµéÀº Àǹ̷ÐÀûÀ¸·Î ¿ÇÀ¸·Á¸é ±¸¹®ÀûÀ¸·Îµµ ¿Ç¾Æ¾ß ÇÑ´Ù. Áï Àû°Ý¼ºÀº À¯È¿¼ºÀÇ ÀüÁ¦ Á¶°ÇÀÌ´Ù. ¹Ý¸é ÀÚ¿¬ ¾ð¾î´Â ±×·¸Áö ¾ÊÀº °æ¿ìµµ ÀÖ´Ù. ¿¹¸¦ µé¾î ¡®³¯À¸´Â ºñÇà±â¡¯´Â ±¸¹®ÀûÀ¸·Î ¿ÇÁö ¾ÊÁö¸¸(¡®³ª´Â ºñÇà±â¡¯°¡ ¿Ç´Ù) ¶æÀº ÅëÇϱ⠶§¹®ÀÌ´Ù.
ÄÄÆÄÀÏ ¾ð¾î·Î µÈ ÇÁ·Î±×·¥ ¹®ÀåÀÇ ±¸¹®Àû Á¤È®¼ºÀº ÄÄÆÄÀÏ ½ÃÁ¡¿¡¼ ÆÇ´ÜµÈ´Ù. ¹Ý¸é Àǹ̷ÐÀû Á¤È®¼ºÀº ½ÇÇà ½ÃÁ¡¿¡¼ ÆÇ´ÜµÈ´Ù. ±¸¹®ÀûÀ¸·Î Á¤È®ÇÏÁö ¾ÊÀº ¹®ÀåÀº ÄÄÆÄÀÏ ¿À·ù(¼ÒÀ§ ½ÅÅýº ¿¡·¯)¸¦ ³»¸ç, ÀÌ´Â Àâ¾Æ³»±â ½±´Ù. Àǹ̷ÐÀûÀ¸·Î Á¤È®ÇÏÁö ¾ÊÀº ¹®ÀåÀº ¹ö±× ¶Ç´Â ³í¸®Àû ¿À·ù°¡ µÇ¸ç, ÄÄÆÄÀÏ ¿À·ù¿¡ ºñÇØ Àâ¾Æ³»±â ¾î·Æ´Ù.
¿À·ù¸¦ ÇÇÇÏ°í µð¹ö±ëÀ» ÁÙÀÏ ¼ö ÀÖÀ¸·Á¸é ±¸¹®Àû Á¤È®¼ºÀÌ Àǹ̷ÐÀû Á¤È®¼ºÀ» ÃÖ´ëÇÑ º¸ÀåÇØ ÁÙ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. C++ó·³ Çü½Ä(type)¿¡ ¾ö°ÝÇÑ ¾ð¾î´Â ±×·¯ÇÑ º¸ÀåÀÌ ºñ±³Àû ½±´Ù. ÀÌ´Â CÀÇ printf()¿Í C++ÀÇ cout À» ºñ±³ÇÏ¸é ½±°Ô ÀÌÇØÇÒ ¼ö ÀÖ´Ù.
Ç¥ÁØ C ¶óÀ̺귯¸®ÀÇ ÇÔ¼ö printf()ÀÇ ¿øÇüÀº ´ÙÀ½°ú °°´Ù.
int printf(const char* format, ...) ;
ù ¹øÂ° ¸Å°³º¯¼ö¸¸ ÇüÀÌ Á¤ÇØÁ® ÀÖ°í ±× ´ÙÀ½ºÎÅÍ´Â °¡º¯ÀμöµéÀÌ´Ù. ÀÌ´Â ±¸¹®ÀûÀ¸·Î ¿ÇÁö¸¸ Àǹ̷ÐÀûÀ¸·Î´Â ¿ÇÁö ¾ÊÀº ¹®Àå¿¡ ´ëÇÑ ¾î¶°ÇÑ º¸È£µµ ¾ø´Ù´Â ¶æÀÌ´Ù. ¿¹¸¦ µé¾î:
printf("°á°ú: %s", s);
ÀÌ·¯ÇÑ ¹®ÀåÀº s°¡ ³Î Á¾·á ¹®ÀÚ¿ÀÏ ¶§¿¡¸¸ ¾ÈÀüÇÏ´Ù. ÀÌ ¹®Àå ÀÚü´Â ±¸¹®ÀûÀ¸·Î ¿ÇÁö¸¸ s°¡ ³Î Á¾·á ¹®ÀÚ¿ÀÌ ¾Æ´Ï¸é Àǹ̷ÐÀûÀ¸·Î ¿ÇÁö ¾Ê°Ô µÈ´Ù.
¹Ý¸é coutÀº ±¸¹®Àû Á¤È®¼ºÀÌ Àǹ̷ÐÀû Á¤È®¼ºÀ» (¾î´ÀÁ¤µµ)º¸ÀåÇÑ´Ù.
cout << "°á°ú:" << s;
¸¸ÀÏ s°¡ int¶ó¸é sÀÇ °ªÀÌ ¹®ÀÚ¿·Î¼ Ãâ·ÂµÈ´Ù. ³Î Á¾·á ¹®ÀÚ¿À̶ó¸é s¿¡ ´ã±ä ¹®ÀÚ¿ ÀÚü°¡ Ãâ·ÂµÈ´Ù. s°¡ ¾î¶² ±¸Á¶Ã¼³ª Ŭ·¡½ºÀÇ °´Ã¼¶ó¸é, ±× Ŭ·¡½º°¡ << ¿¬»êÀÚ¸¦ Áö¿øÇÑ´Ù¸é ±×¿¡ ¸Â°Ô Ãâ·ÂÀÌ µÇ°í ±×·¸Áö ¾Ê´Ù¸é ÄÄÆÄÀÏ ¿À·ù°¡ »ý±ä´Ù. Áï Àǹ̷ÐÀûÀ¸·Î ¿ÇÁö ¾ÊÀº ¹®ÀåÀÌ ±¸¹®ÀûÀ¸·Î °ÅºÎµÇ´Â °ÍÀÌ´Ù.
º¯¼ö, ÇÔ¼ö À̸§À» Á¦´ë·Î ºÙÀÌ°í ¿µ¾î ¹®ÀåÀ» ¿°µÎ¿¡ µÎ¸é¼ Äڵ带 ¸¸µå´Â °ÍÀº ±¸¹®ÀûÀ¸·Î ¿ÇÀº Äڵ尡 Àǹ̷ÐÀûÀ¸·Îµµ ¿ÇÀº Äڵ尡 µÇ°Ô ÇÏ´Â µ¥ ÀÏÁ¤ÇÑ µµ¿òÀÌ µÉ °ÍÀÌ´Ù.
(!!ÀÌ ºÎºÐ¿¡¼ Á» ´õ ±¸Ã¼ÀûÀÎ »ç·Ê°¡ ÇÊ¿ä!!)
10. ¾îÈÖ
¾îÈÖ´Â °£´ÜÈ÷ ¸»ÇÏ¸é ´Ü¾î, ¼÷¾îµéÀÇ ÁýÇÕÀÌ´Ù. ÇÁ·Î±×·¥ÀÇ ¾îÈÖ´Â °ð ÇÁ·Î±×·¥¿¡ ¾²ÀÎ ½Äº°ÀÚµé(Ŭ·¡½º, º¯¼ö, »ó¼ö, ÇÔ¼ö µîµîÀÇ À̸§µé)ÀÇ ÁýÇÕ¿¡ ÇØ´çÇÑ´Ù.
ÇÁ·Î±×·¡¸Ó´Â ¾îÈÖ°¡ dzºÎÇØ¾ß Çϳª ÀÚ½ÅÀÇ ¾îÈÖ·ÂÀ» ÀÚ¶ûÇÒ ÇÊ¿ä´Â ¾ø´Ù. ¾îÈÖ°¡ dzºÎÇÏ´Ù´Â °ÍÀº ÇØ´ç ¾ð¾îÀÇ Å°¿öµåµéÀ̳ª Ç¥ÁØ ¶óÀ̺귯¸®ÀÇ ÇÔ¼ö, Ŭ·¡½ºµéÀ» Àß ¾Ë°í ÀÖ´Ù´Â ¶æÀÌ´Ù. ¿¹¸¦ µé¾î¼ for¸¸ ¾Ë°í whileÀ» ¸ð¸£´Â »ç¶÷À̳ª printf¸¸ ¾Ë°í coutÀº ¸ð¸£´Â »ç¶÷º¸´Ù´Â µÑ ´Ù ¾Æ´Â »ç¶÷ÀÌ ´õ ³ªÀº Äڵ带 ¸¸µé ¼ö ÀÖÀ» °ÍÀÌ´Ù.
¹Ý¸é ¾îÈÖ°¡ dzºÎÇÏ´Ù°í ÇØ¼ ÇÑ ÇÁ·Î±×·¥¿¡¼ ÇÊ¿ä ÀÌ»óÀ¸·Î ¸¹Àº Á¾·ùÀÇ ´Ü¾îµéÀ» Áý¾î ³ÖÀ» ÇÊ¿ä´Â ¾ø´Ù. ¿¹¸¦ µé¾î ¼·Î ´Ù¸¥ ÀÚ·áÇüµé¿¡ ´ëÇØ µ¿µîÇÑ ÀÏÀ» ÇÏ´Â ÇÔ¼ö¶ó¸é °°Àº À̸§À» ºÙÀÌ°í ¸Å°³º¯¼ö ¸ñ·Ï¿¡¸¸ Â÷À̸¦ µÎ¾î¼ Áߺ¹½ÃŰ¸é µÈ´Ù.
ÀÏ»ó ¾ð¾î¿Í ¸¶Âù°¡Áö·Î, ÇÁ·Î±×·¡¹Ö ¾îÈÖ´Â ¹«ÇÑÇÏ´Ù. ÀÌ´Â ´ëºÎºÐÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾îµéÀÌ º¯¼ö¶ó´Â °³³äÀ» Áö¿øÇϸç, ¶ÇÇÑ »ç¿ëÀÚ Á¤ÀÇÇüÀ̳ª »ç¿ëÀÚ Á¤ÀÇ ÇÔ¼ö¸¦ Áö¿øÇϱ⠶§¹®ÀÌ´Ù. ¿ª½Ã ÀÏ»ó ¾ð¾î·Î ¾²¿©Áø Ã¥À̳ª ¹®¼¿¡¼Ã³·³, ƯÁ¤ÇÑ ÇÑ ÇÁ·Î±×·¥ ¾È¿¡¼ÀÇ ¾îÈÖ´Â À¯ÇÑÇÏ´Ù. ´ëºÎºÐÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾îµé¿¡¼ ½Äº°ÀÚµéÀº ÀÌ¹Ì ¼Ò½º Äڵ尡 ÀÛ¼ºµÉ ¶§ °íÁ¤µÇ±â ¶§¹®ÀÌ´Ù. ´ëü·Î ÇÁ·Î±×·¡¹Ö¿¡¼´Â (ºñÀ¯ÇÏÀÚ¸é)°£°áü, °ÇÁ¶Ã¼ °°Àº ¹®Ã¼µéÀÌ ¼±È£µÇ¹Ç·Î, ÁÁÀº ÇÁ·Î±×·¥Àº ¡®Ç³ºÎÇÑ ¾îÈÖ Áß¿¡¼ ²À ÇÊ¿äÇÑ ³¹¸»µé¸¸À¸·Î ¸¸µé¾îÁø¡¯ ÇÁ·Î±×·¥À̶ó°í ÇÒ ¼ö ÀÖ´Ù.
11. ÇÔ¼ö¿¡ ÀÚÁÖ ¾²ÀÌ´Â µ¿»çµé
ÇÔ¼öµéÀº ¾²ÀÓ»õ¿¡ µû¶ó Å©°Ô
1. ¹º°¡¸¦ µ¹·ÁÁÖ´Â ÇÔ¼ö
2. °´Ã¼ÀÇ »óŸ¦ º¯°æÇÏ´Â ÇÔ¼ö
3. ¿ÜºÎ ½Ã½ºÅÛ¿¡ ´ëÇØ ¹º°¡¸¦ ¼öÇàÇÏ´Â ÇÔ¼ö
·Î ³ª´ ¼ö ÀÖ´Ù.
¿¹¸¦ µé¾î GetDC()´Â 1¹ø, SetDC()´Â 2¹ø, DrawText()´Â 3¹ø¿¡ ÇØ´çÇÑ´Ù°í ÇÒ ¼ö ÀÖ´Ù. ¹°·Ð ÇϳªÀÇ ÇÔ¼ö°¡ ¼¼°¡Áö Á¾·ù Áß µÑ ÀÌ»ó¿¡ ÇØ´çÇÏ´Â °æ¿ìµµ ÀÖÀ¸¸ç, ±×·± °æ¿ì °¡µ¶¼ºÀ» À§Çؼ´Â ÇÔ¼ö À̸§¿¡ µÑ ÀÌ»óÀÇ µ¿»çµéÀÌ µé¾î°¡°Å³ª(¿¹: SetCursorPositionAndDrawText(x, y, str) µî), ¾Æ´Ï¸é °³º°ÀûÀÎ ÇÔ¼öµé·Î ºÐ¸®ÇØ¾ß ÇÒ °ÍÀÌ´Ù(SetPosition(x, y) ; DrawText(); )
1. ¹º°¡¸¦ µ¹·ÁÁÖ´Â ÇÔ¼ö¿¡ ÁÖ·Î ¾²ÀÌ´Â µ¿»çµé(ÀÌÇÏ µ¹·ÁÁÖ´Â µ¿»ç)
°¡Àå ´ëÇ¥ÀûÀÎ µ¿»ç´Â getÀÌ´Ù. ±×·±µ¥ ¿Ö returnÀÌ ¾Æ´Ñ°¡? ÇÑ °¡Áö ÀÌÀ¯´Â, returnÀº ½ÇÇà È帧ÀÇ Á¦¾î¿¡ °ü·ÃµÈ ¶æÀ¸·Î ¾²ÀÌ´Â °æ¿ì°¡ ¸¹±â ¶§¹®ÀÌ´Ù. ¶Ç ´Ù¸¥ ÀÌÀ¯´Â Á־ ¹«¾ùÀ¸·Î º¼ °ÍÀΰ¡ÀÇ ¹®Á¦ÀÌ´Ù. Á־ °´Ã¼ ÀÚü¶ó¸é returnÀÌ ´õ ÀÚ¿¬½º·´°ÚÁö¸¸, µîÈ£ ¿ÞÂÊ(lhs)ÀÇ º¯¼ö¸¦ ÁÖ¾î·Î º»´Ù¸é getÀÌ ´õ ÀÚ¿¬½º·´´Ù..
¿¹:
Result = Vector1.returnSize(); // Vector1ÀÌ ÀÚ½ÅÀÇ Å©±â¸¦ Result¿¡°Ô 'µ¹·ÁÁØ´Ù'.
Result = Vector1.getSize(); // Result°¡ Vector1ÀÇ Å©±â¸¦ '¾ò´Â´Ù'.
* get - °¡Àå ÈçÈ÷ ¾²À̸ç ÀǹÌÇÏ´Â ¹üÀ§µµ °¡Àå ³Ð´Ù. GetDC(), getInstance(), getPosition() µîµî. getÀº ¾Æ·¡¿¡ ³ª¿µÈ ´Ù¸¥ ¸ðµç µ¹·ÁÁÖ´Â µ¿»çµéÀ» Æ÷°ýÇÑ´Ù. ±×·¯³ª, getÀÇ ¿ëµµ¸¦ ÃÖ´ëÇÑ ÇÑÁ¤½ÃŲ´Ù¸é ÁÖ·Î ¡®ÀÌ¹Ì °è»êµÇ¾î ÀÖ´Â °´Ã¼ÀÇ ¼Ó¼º ¶Ç´Â ½Ã½ºÅÛÀÇ Æ¯Á¤ »óŸ¦ µ¹·ÁÁÖ¸ç »óÅÂ, ½Ã½ºÅÛÀ» º¯°æÇϰųª ¾î¶°ÇÑ º¹ÀâÇÑ Ã³¸®¸¦ ÇÏÁö ¾Ê´Â¡¯ ÇÔ¼ö¿¡ ¾²´Â °ÍÀÌ ÁÁ´Ù°í º»´Ù.
* retrieve - get¿¡ ºñÇØ À̰ÍÀº ¹ÝȯÇÒ °á°ú¸¦ ã±â À§ÇÑ Ã³¸®(ÁÖ·Î °Ë»ö)°¡ ÀϾÀ» ¾Ï½ÃÇÑ´Ù. ÇÊ¿äÇÏ´Ù¸é ÀÌ µ¿»ç´Â search °°Àº ½ÇÁ¦ ¼öÇà µ¿»ç¿Í getÀ¸·Î ³ª´ ¼ö ÀÖ´Ù.
¿¹:
aCheapestApple = anAppleBox.retrieveApple(CHEAPEST);
=>
anAppleBox.search(CHEAPEST);
aCheapestApple = anAppleBox.getSearchResult();
* acquire - Á¦ÇÑµÈ ÀÚ¿øÀ» µ¶Á¡ÀûÀ¸·Î È®º¸ÇÑ´Ù´Â ¶æÀÌ ÀÖ´Ù. ¿¹¸¦ µé¾î ÁÖ¾îÁø À©µµ¿ì ¶Ç´Â ½Ã½ºÅÛ Àüü¿¡ DC°¡ ÇϳªÀ̸ç GetDC()·Î ¾òÀº DC¸¦ ReleaseDC()·Î Ç®±â Àü±îÁö´Â È¥ÀÚ¸¸ »ç¿ëÇØ¾ß ÇÏ´Â »óȲÀ̶ó°í ÇÏÀÚ. ±×·± °æ¿ì¶ó¸é GetDC() º¸´Ù´Â AcquireDC()°¡ ´õ ÀûÇÕÇÏ´Ù. ¹Ýȯ°ªÀº È®º¸ÇÑ °´Ã¼ ÀÚü³ª Æ÷ÀÎÅÍ, ÇÚµé µîÀÌ´Ù. ¹Ý´ë¸»Àº release³ª unacquire(get¿¡ ´ëÇØ release¸¦ »ç¿ëÇÑ´Ù¸é acquire¿¡ ´ëÇØ¼´Â unacquire¸¦ »ç¿ëÇØ¼ ±¸ºÐÇØ ÁÖ´Â °ÍÀÌ ÁÁÀ» °ÍÀÓ).
¿¹:
AudioManager AudioMgr = new DxAudioManagerImpl();
...
AudioDevice* anAudioDevice = AudioMgr.acquireDevice();
...
AudioMgr.unacquireDevice(anAudioDevice);
* fetch - µ¹·ÁÁØ °ªÀ» ´ã°í ÀÖ´Â ÄÁÅ×À̳ÊÀÇ ³»ºÎ »óŰ¡ º¯ÇÔÀ» ÀǹÌÇÑ´Ù. ÁÖ¾îÁø ÄÁÅ×ÀÌ³Ê ¾ÈÀÇ ¾î¶² °ªÀ» °¡Á®¿À¸é ÇöÀç °ªÀÇ À§Ä¡¸¦ °¡¸®Å°´Â Æ÷ÀÎÅͰ¡ ´ÙÀ½ °ªÀ¸·Î À̵¿ÇÏ°Ô µÇ´Â °æ¿ì¿¡ fetch°¡ ¾²ÀδÙ. µ¥ÀÌÅͺ£À̽º API¿¡¼ ÈçÈ÷ º¼ ¼ö ÀÖ´Ù. ½ºÅÃÀÇ pop°úµµ ºñ½ÁÇÏ´Ù. ¶ÇÇÑ ÆÄÀÏ ½Ã½ºÅÛÀÇ ¸¹Àº ÇÔ¼öµéÀÌ ÀÌ·¯ÇÑ fetch ½ÄÀ¸·Î ÀÛµ¿ÇÑ´Ù. ÀÌ´Â moveNext¿Í getÀ¸·Î ºÐ¸®µÉ ¼ö ÀÖ´Ù.
¿¹:
UnitList.reset();
pUnit1 = UnitList.fetch();
pUnit2 = UnitList.fetch();
=>
UnitList.moveFirst();
pUnit1 = UnitList.getUnit();
UnitList.moveNext();
pUnit2 = UnitList.getUnit();
* be µ¿»ç¿Í Á¶µ¿»ç - À̵éÀº ¾î¶°ÇÑ »óÅ ¶Ç´Â ¿©ºÎ¸¦ ¶æÇÏ´Â ºÎ¿ï °ªÀ» µ¹·ÁÁÙ ¶§ ÁÖ·Î ¾²ÀδÙ.
¿¹:
while ( isDone ) {
if ( currentUnit.hasWeapon() ) ....
....
}
2. °´Ã¼ÀÇ »óŸ¦ º¯°æÇÏ´Â ÇÔ¼ö¿¡ ÁÖ·Î ¾²ÀÌ´Â µ¿»çµé
°´Ã¼ ¶Ç´Â ÇöÀç ¹üÀ§ÀÇ ¾î¶² °ªÀ» º¯°æÇÏ´Â ÇÔ¼öµé¿¡ °¡Àå ÈçÈ÷ ¾²ÀÌ´Â µ¿»ç´Â setÀÌ´Ù. ÀÌ·± µ¿»çµéÀº ¹Ýȯ°ªÀÌ ¾ø°Å³ª ¶Ç´Â ÇÔ¼öÀÇ ¼º°ø ¿©ºÎ¸¦ ¾Ë·ÁÁÖ´Â ¹Ýȯ°ªÀ» °¡Áø´Ù.
¶Ç´Â º¯°æµÇ±â ÀüÀÇ »óųª º¯°æµÈ ÈÄÀÇ »óŸ¦ µ¹·ÁÁֱ⵵ Çϴµ¥(Win32 APIÀÇ SelectObject() µî) ÄÚµùÀÇ ¾çÀ» ÁÙÀÌ´Â µ¥¿¡´Â ÁÁÁö¸¸ °¡µ¶¼º ¸é¿¡¼´Â È¥¶õÀÇ ¿©Áö°¡ ÀÖ´Ù.
»óŸ¦ º¯°æÇÏ´Â ÇÔ¼ö¿¡ ¾²ÀÌ´Â µ¿»çµéÀÇ Á¾·ù´Â µ¹·ÁÁÖ´Â µ¿»çº¸´Ù ÈξÀ ´õ ¸¹´Ù. ÀÌ´Â »óŸ¦ º¯°æÇÏ´Â ÇÔ¼öÀÇ µ¿»ç´Â ±× »óŰ¡ ¾î¶² Á¾·ùÀÇ °ªÀÎ Áö, ±×¸®°í ±× »óŸ¦ º¯°æÇÏ´Â µ¥ ¾î¶² ÀÛ¾÷ÀÌ ÇÊ¿äÇÑ Áö¿¡ µû¶ó ¾ó¸¶µçÁö ´Ù¾çÇØÁú ¼ö Àֱ⠶§¹®ÀÌ´Ù.
µû¶ó¼ »ç½Ç ¡®ÁÖ·Î ¾²À̴¡¯À̶ó°í ÇÒ¸¸ÇÑ µ¿»ç´Â set Á¤µµÀÌ´Ù.
* set - °¡Àå ÈçÇÏ°Ô ¾²ÀδÙ. ¼³¸íÀÌ ÇÊ¿ä¾ø°ÚÁö¸¸ ±»ÀÌ ºÎ¿¬ ¼³¸íÀ» ÇÏÀÚ¸é, getÀÇ ¹Ý´ë¹°À̶ó´Â Â÷¿ø¿¡¼, »óÅÂÀÇ º¯°æ¿¡ º¹ÀâÇÑ Ã³¸®°¡ ÀϾÁö ¾Ê´Â ºñ±³Àû ´Ü¼øÇÑ ÄÚµå·Î µÈ ÇÔ¼ö¿¡ ÀûÇÕÇÏ´Ù.
3. ¿ÜºÎ ½Ã½ºÅÛ¿¡ ¹º°¡¸¦ ¼öÇàÇÏ´Â ÇÔ¼ö¿¡ ÁÖ·Î ¾²ÀÌ´Â µ¿»çµé
2¹ø°ú ¸¶Âù°¡Áö·Î, ¼öÇàÇÏ´Â ÀÛ¾÷À̳ª ¿ÜºÎ ½Ã½ºÅÛ¿¡ µû¶ó ´Ù¾çÇÑ µ¿»çµéÀÌ ¾²À̹ǷΠÁÖ·Î ¾²ÀÌ´Â µ¿»çµéÀ̶ó°í ÇÒ¸¸ÇÑ °ÍÀº ¾ø´Ù. ´Ù¸¸ °ÔÀÓÀÇ °æ¿ì ¿ÜºÎ ½Ã½ºÅÛÀÌ ÁÖ·Î ±×·¡ÇÈ, ¿Àµð¿À, ÀÔ·Â ÀåÄ¡µéÀ̹ǷΠ±»ÀÌ °í¸¥´Ù¸é ¸î °¡Áö¸¦ °í¸¦ ¼ö ÀÖÀ» °ÍÀÌ´Ù.
±×·¡ÇÈ ½Ã½ºÅÛ
display - ½ÇÁ¦ÀÇ ½Ã°¢Àû º¯È¸¦ ÀÏÀ¸Å²´Ù´Â Àǹ̰¡ ÀÖ´Ù(¹öÆÛ ½º¿Ò µî ½ÇÁ¦ ºñµð¿À ¸Þ¸ð¸® °»½ÅÀÇ Â÷¿ø¿¡¼). ¶Ç´Â ¾Æ·¡ÀÇ µ¿»çµéÀ» Æ÷°ýÇÏ´Â °íÂ÷¿ø ÇÔ¼ö¿¡µµ ¾²ÀδÙ(ƯÁ¤ ±×·¡ÇÈ API¿¡ ±¹ÇѵÇÁö ¾Ê´Â...)
render - display¿Í ºñ½ÁÇϳª ³»ºÎ ¹öÆÛ ¸Þ¸ð¸®ÀÇ °»½Å¸¸ ÀǹÌÇÒ ¼öµµ ÀÖ´Ù. Áï render ÈÄ »óȲ¿¡ µû¶ó display°¡ ¼öÇàµÇ´Â µî. renderºÎÅʹ ƯÁ¤ ±×·¡ÇÈ API¿¡ ±¹ÇÑµÈ ÇÔ¼ö¿¡ °¡±î¿ÍÁø´Ù. ¸ñÀû¾î¸¦ °¡Áú ¼ö ÀÖ´Ù(renderScene, renderBackground µî)
draw - °³º° µ¥ÀÌÅͳª °³º° °³Ã¼¸¦ ±×¸°´Ù´Â Àǹ̷Π¸¹ÀÌ ¾²ÀδÙ. Model.draw()³ª drawText() µî. render ¾È¿¡¼ ÀϾ´Â °æ¿ì°¡ ¸¹´Ù.
put - ÁÖ·Î 2D¿¡¼ Á¡À̳ª ½ºÇÁ¶óÀÌÆ®¸¦ ¡®Âï´Â´Ù¡¯´Â Àǹ̷Π¾²ÀδÙ. ½ÇÁ¦ÀÇ ½Ã°¢Àû º¯Èº¸´Ù´Â ³»ºÎ ¸Þ¸ð¸®¿¡¼ÀÇ º¯ÈÀÏ °¡´É¼ºÀÌ Å©´Ù. 3D¿¡¼´Â º°·Î ¾²ÀÌÁö ¾ÊÀ½. ¸ñÀû¾î¸¦ °¡Áö´Â °æ¿ì°¡ ¸¹´Ù(putPixel, putSprite µî)
flush - ±×·¡ÇÈÀ̳ª Àå¸é µ¥ÀÌÅ͸¦ ½ºÆ®¸²À¸·Î °£ÁÖÇÒ ¶§ ¾²ÀδÙ. Áö±Ý±îÁö ¸í·É ¹öÆÛ ¶Ç´Â ÇÁ·¹ÀÓ ¹öÆÛ¿¡ ½×¿© ÀÖ´Â µ¥ÀÌÅ͸¦ ½ÇÁ¦ ÀåÄ¡·Î ¹Ð¾î ³»º¸³½´Ù´Â Àǹ̸¦ °¡Áø´Ù.
¿Àµð¿À ½Ã½ºÅÛ
play - ¸» ±×´ë·Î Àç»ý. ´ë»óÀº Ãâ·Â ¹öÆÛº¸´Ù´Â À½¾Ç, À½¼º µ¥ÀÌÅ͸¦ °¨½Î°í ÀÖ´Â Á» ´õ °íÂ÷¿øÀÇ °´Ã¼ÀÏ °¡´É¼ºÀÌ ¸¹´Ù. ¹«¾ùÀ» Àç»ýÇϴ°¡¿¡ µû¶ó ¸ñÀû¾î¸¦ °¡Áú ¼ö ÀÖ´Ù(playSFX, playMusic µî).
perform - playº¸´Ù Á» ´õ °í¼öÁØ. ¡®¿¬ÁÖ¡¯¸¦ ¶æÇÑ´Ù. µû¶ó¼ ÀÌ µ¿»çÀÇ ´ë»óÀº À½¼º µ¥ÀÌÅÍ Â÷¿øº¸´Ù ³ôÀº ¿¬ÁÖ Á¤º¸¸¦ ´ã´Â °´Ã¼°¡ µÉ °ÍÀÌ´Ù.
output - play º¸´Ù´Â Àú¼öÁØ. ¹ÙÀÌÆ® Â÷¿øÀÇ ÆÄÇü Á¤º¸¸¦ Ãâ·Â ¹öÆÛ·Î ³»º¸³»´Â °æ¿ì.
ÀÔ·Â ÀåÄ¡
ÀÔ·Â ÀåÄ¡ÀÇ Æ¯¼º »ó ÀÔ·Â ÀåÄ¡¿¡ ´ëÇØ ¹º°¡¸¦ ¼öÇàÇÏ´Â °æ¿ì´Â º°·Î ¾ø°í ÀÔ·Â ÀåÄ¡·ÎºÎÅÍ Á¤º¸¸¦ ¾ò´Â °ÍÀÌ ´ëºÎºÐÀ̹ǷΠ¾Õ¿¡¼ ¸»ÇÑ µ¹·ÁÁÖ´Â µ¿»çµéÀÌ ÁÖ·Î ¾²ÀδÙ. ¿¹¿Ü´Â Áøµ¿ ±â´É(force-feedback)ÀÏ °ÍÀÌ´Ù.
4. ¾Ö¸ÅÇÑ µ¿»çµé - µ¹·ÁÁÙ °ÍÀΰ¡ ¸» °ÍÀΰ¡
¿¹¸¦ µé¾î¼ ±âº» ´ë¹ÌÁö¿Í Ÿ°Ý °¡´É¼ºÀ¸·Î ½ÇÁ¦ ´ë¹ÌÁö¸¦ °è»êÇÏ´Â calculateDamage(BaseDamage, HitProbability)¶ó´Â ÇÔ¼ö°¡ ÀÖ´Ù¸é, °è»êµÈ ½ÇÁ¦ ´ë¹ÌÁö´Â ¾îµð·Î °¡¾ßÇÒ±î? µÎ °¡Áö °¡´É¼ºÀÌ ÀÖ´Ù.
1)
aTotalDamage = calculateDamage(BaseDamage, HitProbability);
2)
aDamageCalculator.calculateDamage(BaseDamage, HitProbability);
aTotalDamage = aDamageCalculator.getDamage();
//¶Ç´Â ÀÌ·± ½ÄÀ¸·Îµµ ¾²ÀÏ °ÍÀÌ´Ù
player.UpdateHP( aDamageCalculator.getDamage() );
ÀÌ ¿¹°¡ ¸»ÇÏ´Â °ÍÀº, µÑ Áß ¾î´À °ÍÀ» ÅÃÇÒ °ÍÀΰ¡´Â ´ë¹ÌÁö¸¦ °è»êÇϱâ À§ÇÑ °´Ã¼°¡ µû·Î ÇÊ¿äÇÒ °ÍÀΰ¡ÀÇ ¹®Á¦¶ó´Â Á¡ÀÌ´Ù. Á» ºñ¾àÇÏÀÚ¸é, ÀÌ´Â ¡®½ºÅ¸ÀÏÀÇ ¹®Á¦´Â °´Ã¼ ÁöÇâÀû ¼³°èÀÇ ¹®Á¦À̱⵵ ÇÏ´Ù¡¯¸¦ ÀǹÌÇÏ°Ô µÈ´Ù.
·ù±¤ °¡ 2007-09-18 00:20¿¡ ¼öÁ¤ÇÔ, ÃÑ 1 ¹ø ¼öÁ¤µÊ |
|