Miguel Angel Sepúlveda ÇÊÀÚ ¼Ò°³: 1993³â¿¡ ¿ö½ÌÅÏ´ëÇÐ(¹Ì±¹)À» Á¹¾÷Çß´Ù. ½ºÆäÀÎ, À̽º¶ó¿¤, ÀϺ», ¹Ì±¹¿¡¼ °úÇבּ¸ ºÐ¾ß¿¡¼ ÀÏÇÑ´Ù. Ä¿³Î 0.98ÂëºÎÅÍ ¸®´ª½º¸¦ ¾Ë°Ô µÇ¾ú´Ù. (ù´«¿¡ ¹ÝÇß´Ù) ÇöÀç´Â ÀÚÀ¯ ½Ã°£¿¡ ¸®´ª½º Æ÷Ä¿½ºÀÇ ÆíÁýÀåÀ¸·Î ÀÏÇÑ´Ù. ÇÊÀÚ¿¡°Ô ¿¬¶ôÇϱ⠵é¾î°¡´Â±ÛÃʱâÈÀ̺¥Æ® 󸮿¡´Ï¸ÅÀÌ¼Ç º¸±âGLUT ȨÆäÀÌÁö GLUTÀúÀÚ GLUT-3.6 ¼Ò½ºÄÚµå |
â°ú ¾Ö´Ï¸ÞÀ̼ǿä¾à: -- µé¾î°¡´Â ±ÛOpenGLÀÇ ¼³°è»óÀÇ ÀÌÀ¯·Î À©µµ¿ì½Ã½ºÅÛ¿¡ ÀÇÁ¸¼ºÀÌ ÀÖ´Â ±â´ÉµéÀº ±Ô¾à¿¡ ºüÁ®ÀÖ´Ù. ±× ´öºÐ¿¡ ³ôÀº À̽ļº°ú °£°áÇÏ¸é¼ È¿À²ÀûÀÎ 2Â÷¿ø/3Â÷¿ø ·£´õ¸µ ¶óÀ̺귯¸®°¡ ³ª¿Ã ¼ö ÀÖ¾ú´Ù. âÀ» ¿°í ´Ù·ç´Â °ÍÀº °íÀ¯ÀÇ À©µµ¿ì ½Ã½ºÅÛ¿¡ ´Þ·Á ÀÖ´Ù. OpenGL¶óÀ̺귯¸®´Â Ãß°¡ÀûÀÎ ºÎ°¡¶óÀ̺귯¸®¸¦ ÅëÇÏ¿© °íÀ¯ÀÇ À©µµ¿ì ½Ã½ºÅÛ°ú Åë½ÅÀ» ¼öÇàÇÑ´Ù. ¿¹¸¦ µéÀÚ¸é GLXºÎ°¡¶óÀ̺귯¸®´Â OpenGL°ú XÀ©µµ¿ì½Ã½ºÅÛ»çÀÌÀÇ »óÈ£µ¿ÀÛÀ» ´ã´çÇÑ´Ù. OpenGL À¯Æ¿¸®Æ¼ ÅøŶ(GLUT)Àº OpenGLÇÁ·Î±×·¥À» À©µµ¿ì½Ã½ºÅÛ°ú´Â µ¶¸³ÀûÀ¸·Î ÀÛµ¿Çϵµ·Ï °³¹ßÇÏ°Ô ÇØÁÖ´Â ºÎ°¡¶óÀ̺귯¸®·Î ANSI C¾ð¾î¿Í FORTRANÀ» Áö¿øÇÑ´Ù. Mark J.Kilgard¾¾¿¡ ÀÇÇØ ÀÛ¼ºµÇ¾úÀ¸¸ç OpenGL±Ô¾à¿¡ ÀÖ´Â Å« °áÁ¡À» º¸¿ÏÇØ ÁØ´Ù. GLUT°³¹ßÀÚ ´öºÐ¿¡ ¿øÇÏ´Â Ç÷§Æû¿¡ µ¶¸³ÀûÀ¸·Î ÀÛµ¿ÇÏ´Â °øÅëµÈ À©µµ¿ì ½Ã½ºÅÛ ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. GLUT¸¦ »ç¿ëÇÏ´Â OpenGLÀÀ¿ëÇÁ·Î±×·¥Àº ¼Ò½ºÄڵ带 ¸¹ÀÌ ¹Ù²Ü ÇÊ¿äµµ ¾øÀÌ Ç÷§Æû À̽ÄÀÌ ½±°Ô °¡´ÉÇÏ´Ù. GLUT´Â OpenGLÄڵ带 °£´ÜÇÏ°Ô ¸¸µé¾î ÁÙ »Ó¸¸ ¾Æ´Ï¶ó OpenGL¶óÀ̺귯¸®¸¦ º¸¿ÏÇØ ÁØ´Ù. GLUT´Â »ó´ëÀûÀ¸·Î ÀÛ°í ¹è¿ì±â ½±´Ù.¸Å¿ì ¼³°è°¡ ÀߵǾî ÀÖÀ¸¸ç ¶ÇÇÑ ÀúÀÚ°¡ ÀÌ¹Ì È¯»óÀûÀÎ °ü·Ã¹®¼¸¦ ÀÛ¼ºÇØ µÎ¾ú´Ù. ±×·¯¹Ç·Î ¸®´ª½ºÆ÷Ä¿½º¿¡¼ ¶Ç´Ù½Ã ´Ù·ê ÇÊ¿ä°¡ ¾ø´Ù°í »ý°¢ÇÑ´Ù.MarkÀÇ ¹®¼µéÀ» ²À Àо±â ¹Ù¶õ´Ù. GLUTÀÇ ¹®¼°¡ ¸Å¿ì Àß µÇ¾î Àִµ¥ ¿Ö ÀÌ ¿¬Àç¿¡¼ GLUT¸¦ ´Ù·ç´Â°¡? ÇÊÀÚ´Â OpenGL¿¬Àç¿Í ÇÔ²² ÀÐÀ¸¸é¼ GLUT¶óÀ̺귯¸®¸¦ »ìÆ캸°í ´Ü°è´Ü°èº°·Î °¢ ¿¹¸¦ µû¶ó µ¶ÀÚ ¿©·¯ºÐÀÌ Á÷Á¢ µû¶óÇغ¸¸é¼ ½Ç·ÂÀÌ ´Ã±â¸¦ ¹Ù¶õ´Ù. ¶ÇÇÑ OpenGLÀ» ȯ»óÀûÀÎ ¸®´ª½º¿¡¼ »ç¿ëÇÏ´Â ÇÁ·Î±×·¡¸Óµé¿¡°Ô µµ¿òÀ» ÁÖ°í ÀÌ·± ÇÁ·Î±×·¡¸ÓµéÀÌ ¸¹ÀÌ ÆÛÁö´Âµ¥ µµ¿òÀÌ µÇ¾úÀ¸¸é ÇÑ´Ù. ¾î¶² °æ¿ìµçÁö°£¿¡ ¿©·¯ºÐÀº MarkÀÇ ¹®¼¸¦ ÁÁÀº Âü°í¹®¼·Î °¡Áö°í ÀÖ´Â °ÍÀÌ ÁÁ´Ù. GLUT API´Â OpenGL°ú ¸¶Âù°¡Áö·Î »óűâ¼ú¹æ½ÄÀÌ´Ù. Áï ÀÀ¿ëÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ´Â µ¿¾È GLUT°¡ ¸¹Àº »óź¯¼ö¸¦ °¡Áö°í ÀÖ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. GLUTÀÇ Ãʱâ»óÅ´ ´ëºÎºÐÀÇ ÀÀ¿ëÇÁ·Î±×·¥¿¡ ¾Ë¸ÂÀº °ªÀ» °¡Áö°í ÀÖ´Ù. ±×·¯³ª »ç¿ëÀÚ°¡ ¿øÇÏ´Â »óź¯¼öÀÇ °ªÀ» º¯°æÇÒ ¼öµµ ÀÖ´Ù. GLUTÀÇ ÇÔ¼öµéÀº »óź¯¼öµéÀÇ °ª¿¡ µû¶ó ÃëÇÏ´Â ÇൿÀÌ ¾à°£ ´Þ¶óÁø´Ù. GLUTÇÔ¼ö´Â °£´ÜÇÏ¸ç ¸î°³ÀÇ ÆĶó¸ÞÅ͵éÀ» ÃëÇÑ´Ù. µ¹·ÁÁÖ´Â Æ÷ÀÎÅÍ´Â ¾øÀ¸¸ç ´ÜÁö GLUTÀÇ ÇÔ¼ö·Î Àü´ÞµÇ´Â Æ÷ÀÎÅÍ´Â ¹®ÀÚ¿°ú ºÒÈ®½ÇÇÑ ±Û²ÃÀ» ´Ù·ç±â À§ÇÑ Æ÷ÀÎÅÍ»ÓÀÌ´Ù. GLUTÀÇ ÇÔ¼öµéÀº ±× ±â´É¿¡ µû¶ó ¸î°³ÀÇ ÇÏÀ§ APIµé·Î ³ª´©¾îÁø´Ù.:
ÃʱâÈGLUT¸¦ »ç¿ëÇÏ´Â ¸ðµç OpenGLÇÁ·Î±×·¥Àº ¹Ýµå½Ã GLUT »óŸӽſ¡ ÀÇÇÏ¿© ÃʱâȽÃÄÑ¾ß ÇÑ´Ù.
glutÃʱâÈÇÔ¼ö´Â glutInit-·Î ½ÃÀÛÇÏ´Â À̸§À» °¡Áö°í ÀÖ´Ù.
ÁÖ¿ä ÃʱâÈ·çƾÀº glutInitÀÌ´Ù.:
glutInit´Â GLUTÀÇ »óź¯¼ö¸¦ ÃʱâÈÇÏ´Â ¿ªÇÒ°ú À©µµ¿ì½Ã½ºÅÛÀÇ ¼¼¼ÇÀ» ó¸®ÇÏ´Â
¿ªÇÒÀ» ÇÑ´Ù. glutInitº¸´Ù ¸ÕÀú »ç¿ëµÉ ¼ö ÀÖ´Â ¸í·É¾î°¡ ¸î°¡Áö Àִµ¥ ÀÌ ·çƾµéÀº ¸ðµÎ
glutInit-·Î ½ÃÀ۵Ǵ À̸§À» °¡Áø´Ù. ÀÌ ·çƾµéÀº ±âº» âÀ» Ãʱ⠻óÅ·Π¼³Á¤Çϴµ¥ »ç¿ëµÈ´Ù.
¿¹¸¦ µé¾îº¸ÀÚ.:
¸ðµç OpenGLÇÁ·Î±×·¥¿¡¼ ¹Ýµå½Ã Á¦°øµÇ´Â ÃʱâÈ·çƾÀÎ glutInitDisplayMode()µµ ÀÖ´Ù.:
#include <GL/glut.h> void main(int argcp, char **argv){ /* âÀÇ À§Ä¡¿Í Å©±â ¼³Á¤ */
/* µð½ºÇ÷¹À̸ðµåÇü½Ä ¼±ÅÃ:
/* GLUT»óÅÂÀÇ ÃʱâÈ */
.....ÄÚµå »ý·« }; µÎ¹ø°´Â ¾Ö´Ï¸ÞÀÌ¼Ç ÇÁ·Î±×·¥À» À§ÇÑ ÃʱâȺκÐÀÌ´Ù.: #include <GL/glut.h> void main(int argcp, char **argv){ /* âÀÇ Å©±â¿Í À§Ä¡ °áÁ¤ */
/* µð½ºÇ÷¹ÀÌ ¸ðµå Çü½Ä °áÁ¤:
/* GLUT »óŸ¦ ÃʱâÈÇÑ´Ù. */
....ÀÌÇÏ »ý·« }; ÀÌ µÎ ¿¹Á¦¸¦ ºñ±³ÇÏ¸é¼ °è¼Ó GLUT¸¦ ¹è¿öº¸ÀÚ. °¡Àå Å« Â÷ÀÌÁ¡Àº µÎ¹ø° ¿¹Á¦°¡ ÀÌÁß¹öÆÛ·Î ÃʱâȵǾú´Ù´Â °ÍÀÌ´Ù. ÀÌ ¹æ¹ýÀº ¾Ö´Ï¸ÞÀ̼Ç󸮿¡ ÀÌ»óÀûÀÌ¸ç ¾Ö´Ï¸ÞÀ̼ÇÀÇ ¼ø¼¿¡ µû¶ó ÇÁ·¹ÀÓÀÌ ¹Ù²ð¶§ ³ªÅ¸³ª´Â ±ôºý°Å¸² È¿°ú¸¦ ¾ø¾ÖÁØ´Ù. À̺¥Æ® 󸮾տ¡¼ ¸»ÇßµíÀÌ GLUT´Â »óŸ¦ ´Ù·ç´Â ¶óÀ̺귯¸®ÀÌ´Ù. Áö±ÝºÎÅÍ À̺¥Æ®µéÀ» ´Ù·ç´Â
ºÎºÐÀ» ÀÛ¼ºÇØ º¸ÀÚ. ÀÌ°ÍÀº °á±¹ ÀûÀýÇÏ°Ô ÃʱâȽÃŲ ´ÙÀ½ ½ÇÇàµÇ´Â ¹«ÇÑ·çÇÁ³ª
ŸÀ̸Ӱ¡ ÀÖ´Ù´Â °ÍÀÌ´Ù. ÀÌ¿¡ µû¶ó ÃʱâÈÇÏ´Â µ¿¾È GLUT¿¡ ¼±¾ðµÈ ¸ðµç À̺¥Æ®µéÀ»
ÇϳªÇϳª¾¿ ¸ðµÎ ó¸®ÇÑ´Ù´Â °ÍÀÌ´Ù. ¸¶¿ì½º¹öÆ° Ŭ¸¯, ⠴ݱâ, â ¸ð¾ç¹Ù²Þ, Ä¿¼ À̵¿, Å°º¸µå ´·¯Áü,
±×¸®°í "¾Æ¹«·± ÀԷµµ ¾ø´Â »óÅÂ"ÀÓ µîÀÇ À̺¥Æ®µé¿¡ ´ëÇØ ÀûÀýÇÑ ÇൿÀ» ÃëÇÒ ¼ö ÀÖ´Ù.
ÀÌ¿ëÇÒ ¼ö ÀÖ´Â À̺¥Æ®µéÀÇ °¢ À̺¥Æ®µéÀº ¹Ýµå½Ã »ç¿ëÀÚ¿¡ ÀÇÇØ ÇØ´ç À̺¥Æ®°¡ ¹ß»ýÇß´ÂÁö¸¦
È®ÀÎÇغ¸´Â ÁÖ±âÀûÀÎ GLUTÀ̺¥Æ® ó¸® ·çÇÁ³ª ŸÀ̸ӿ¡ »ç¿ëµÉ GLUT»óź¯¼öÀÇ Çϳª·Î µî·Ï½ÃÄÑ¾ß ÇÑ´Ù.
GLUT¿¡¼ ó¸®ÇÒ ¼ö ÀÖ´Â ÄݹéÇÔ¼ö¿Í À̺¥Æ®µéÀº µÚ¿¡ »ìÆ캸±â·Î ÇÏÀÚ. Áö±Ý Áß¿äÇÑ °ÍÀº ¿ì¸®µéÀÇ ÇÁ·Î±×·¥¿¡¼ Áß¿äÇÑ À̺¥Æ®µéÀÌ µî·ÏµÈ ´ÙÀ½ glutMainLoop()¶ó´Â GLUTÀÇ À̺¥Æ®Ã³¸®·çƾÀ» ¹Ýµå½Ã È£ÃâÇØ¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù. ÀÌ ÇÔ¼ö¸¦ Çѹø ½ÇÇàÇϸé ÇÁ·Î±×·¥Àº ±âº»ÀûÀ¸·Î ¹«ÇÑ·çÇÁ»óÅ·Πµé¾î°£´Ù. ÀÌ ÇÔ¼ö´Â ÀÌ¹Ì µî·ÏÇÑ ÄݹéÇÔ¼ö¸¦ ÇÊ¿ä¿¡ µû¶ó È£ÃâÇÑ´Ù. µû¶ó¼ ¸ðµç OpenGLÇÁ·Î±×·¥Àº glutMainLoop()¸í·É¹®À¸·Î ³¡³´Ù. ¾Ö´Ï¸ÞÀ̼ÇÀÇ °æ¿ì¸¦ »ìÆ캸ÀÚ. #include <GL/glut.h> void main(int argcp, char **argv){ /* GLUT »óÅ ÃʱâÈ*/
/* âÀ» ¿¬´Ù. */
/* µð½ºÇ÷¹ÀÌ ¸ðµå¸¦ ¼±ÅÃÇÑ´Ù.:
/* ÄݹéÇÔ¼ö µî·Ï */
/* À̺¥Æ® 󸮿£Áø ½ÃÀÛ */
¾Õ¿¡¼ ¼³¸íÇÏÁö ¾ÊÀº ¸î°¡Áö Ưº°ÇÑ Äڵ尡 ´«¿¡ ¶é °ÍÀÌ´Ù. glutCreateWindow(char **name)´Â GLUTÀÇ À©µµ¿ì¸¦ °ü¸®ÇÏ´Â ·çƾÀÇ ÇϳªÀÌ´Ù. ÀÌ ÇÔ¼ö´Â À̸§¸¸ ôº¸¸é ¾î¶² ÀÏÀ» ÇÏ´ÂÁö ¹Ù·Î ¸íÈ®ÇÏ°Ô ¾Ë ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ÇÔ¼öÀ̸§Àº OpenGL°ú GLUTÀÇ ¼³°èöÇÐÁß¿¡¼ ÇÊÀÚ°¡ Àû±ØÀûÀ¸·Î Âù¼ºÇÏ´Â ºÎºÐÀÌ´Ù. ÀÌ ÇÔ¼ö´Â ½ÇÁ¦·Î OpenGLÀÀ¿ëÇÁ·Î±×·¥¿¡¼ »ç¿ëÇÒ Ã¢À» »ç¿ëÀÚÀÇ À©µµ¿ì½Ã½ºÅÛ¿¡¼ »ý¼ºÇϵµ·Ï ¸í·ÉÀ» Àü´ÞÇÏ´Â ¿ªÇÒÀ» ´ã´çÇÑ´Ù. ÀÌ Ã¢ÀÇ À̸§Àº ¹®ÀÚ¿"name"À¸·Î Àü´ÞµÈ´Ù. XÀ©µµ¿ì ȯ°æ¿¡¼ ÀÌ À̸§Àº âÀÇ ÀÂÊ ¿ÞÂÊ ¸ð¼¸®¿¡ ¾²¿©Áø´Ù. GLUT°¡ ´ã´çÇϴ âÀÇ °ü¸®ºÎºÐÀº ¼ö½Ã·Î È®ÀÎÇؾßÇÒ ´Ù¾çÇÑ ¸¹Àº ÇÔ¼ö¸¦ °¡Áö°í ÀÖ´Ù. Áö±Ý±îÁöµ¿¾È À̾߱âÇÑ °ÍÀ̸é ÃæºÐÇÏ´Ù. ÀÌÁ¦ ´Ù½Ã glutInit()ÇÔ¼ö µÚ¿¡ µÑ ¼ö ÀÖ´Â ÃʱâÈ·çƾµéÀ» ´Ù½Ã ¹èÄ¡½ÃÅ°¸é µÈ´Ù. º»·ÐÀ¸·Î µ¹¾Æ°¡¼..ÇÊÀÚ´Â ¾Ö´Ï¸ÞÀ̼ÇÇÁ·Î±×·¥¿¡¼ ¸Å¿ì ±âº»ÀûÀÎ µÎ°³ÀÇ Äݹéµî·ÏÇÔ¼ö¸¦ µî·ÏÇÏ´Â ¹æ¹ýÀ» ¼Ò°³ÇÒ±î ÇÑ´Ù. glutDisplayFunc´Â ÇöÀçâÀ» ½ÇÁ¦·Î º¸¿©ÁÖ´Â ±â´ÉÀ» Á¤ÀÇÇÏ°í ÀÖÀ¸¸ç, glutIdleFunc´Â ¾Æ¹«·± ÀÔ·ÂÀÌ ¾øÀ» ¶§ ¼öÇàÇÏ´Â ±â´ÉÀ» Á¤ÀÇÇÏ°í ÀÖ´Ù. ÀÌ µÎ µî·ÏÇÔ¼ö´Â ¸ðµÎ void *(void)ÇüÀÇ ÇÔ¼öÀ̾î¾ß ÇÑ´Ù. ¸ÕÀú ¾Ö´Ï¸ÞÀ̼ÇÇÁ·Î±×·¥¿¡ Ãß°¡µÈ µÎ°³ÀÇ ÄݹéÇÔ¼ö¸¦ À̾߱â Çϸé void MyDisplay(void)´Â ½ÇÁ¦·Î ¿ì¸®°¡ ¿øÇϴ ȸéÀ» â¿¡ ±×·ÁÁÖ´Â OpenGL¸í·É¾îµîÀ» È£ÃâÇÏ´Â °ÍÀ» ´ã´çÇϸç void MyIdle(void)´Â »ç¿ëÀÚÀÇ ÀÔ·ÂÀÌ ¾øÀ»¶§ °è¼Ó È£ÃâµÇ¾îÁø´Ù. GLUTÀÇ ¹«ÇÑ·çÇÁ(glutMainLoop())ÇÏ¿¡¼ À̺¥Æ®Ã³¸®´Â °è¼Ó ÀÌ·ç¾îÁö¸ç ¸¸¾à ¾Æ¹«·± »õ·Î¿î À̺¥Æ®µµ ¹ß»ýÇÏÁö ¾Ê´Â´Ù¸é ±×¶§´Â MyIdleÇÔ¼ö°¡ ´ã´çÇÑ´Ù. ¿Ö ¾Ö´Ï¸ÞÀÌ¼Ç ÇÁ·Î±×·¥¿¡ ¾Æ¹«·± ÀÔ·ÂÀÌ ¾øÀ»¶§ÀÇ ÄݹéÇÔ¼ö¸¦ µî·Ï½ÃÄÑÁÖ¾î¾ß Çϴ°¡? ¸¸¾à »ç¿ëÀÚÀÇ ÀԷ°ú´Â »ó°ü¾øÀÌ °è¼ÓÇؼ °¢ ÇÁ·¹ÀÓÀÇ ±×¸²À» ¹Ù²ã±×·ÁÁÖ¾î¾ß ÇϹǷΠOpenGLÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ°í ÀÖ´Â µ¿¾È Mydisplay()¿¡¼ ±×¸®±â Àü¿¡ °¢ ÇÁ·¹ÀÓÀ» ¹ÙÂåÁÖ´Â ±â´ÉÀ» ÇØÁÖ´Â ÇÔ¼ö(½¬°íÀÖ´Â »óÅÂ(idle) ÄݹéÇÔ¼ö)°¡ ÇÊ¿äÇÑ °ÍÀÌ´Ù. ¾Ö´Ï¸ÞÀÌ¼Ç ¿¹ÀÌÁ¦ Çϳª·Î ±ò²ûÇÏ°Ô µÈ ¾Ö´Ï¸ÞÀ̼ÇÄڵ带 »ìÆ캸ÀÚ.:
void MyIdle(void){
void MyDisplay(void){
void main(int argcp, char **argv){ /* GLUT»óŸ¦ ÃʱâÈ ÇÑ´Ù. */
/* âÀ» ¿¬´Ù. */
/* µð½ºÇ÷¹À̸ðµå¸¦ ¼±ÅÃÇÑ´Ù.:
/* ÄݹéÇÔ¼öµéÀ» µî·ÏÇÑ´Ù. */
/* À̺¥Æ® 󸮿£ÁøÀ» ½ÃÀÛÇÑ´Ù */
ÇÊÀÚ´Â MyDisplayµÚ¿¡ »õ·Î¿î GLUTÇÔ¼öÀÎ glutSwapBuffers()¸¦ Ãß°¡ÇÏ¿´´Ù. ÀÌ ¸í·ÉÀº ¾Ö´Ï¸ÞÀ̼ǿ¡ ´ë´ÜÈ÷ À¯¿ëÇÏ´Ù. ÀÌ¹Ì ÇÁ·Î±×·¥¿¡¼´Â Çϳª´Â º¸¿©Áö°í Çϳª´Â ¼û°ÜÁø ÀÌÁß¹öÆÛ¸ðµåÀÇ Ã¢À» »ç¿ëÇÏ°í ÀÖ´Ù. ÀÌ °æ¿ì OpenGLÀÇ ±×¸®´Â ¸í·É¾îµéÀº Ç×»ó ¼û°ÜÁø ¹öÆÛ¿¡ ·£´õ¸µÀ» ¼öÇàÇÑ´Ù. glutSwapBuffers¸í·ÉÀÌ È£ÃâµÇ¸é ¿ÏÀüÈ÷ ´Ù ±×·ÁÁø ¼û°ÜÁ® ÀÖ´ø ¹öÆÛ°¡ º¸¿©Áö°Ô µÇ´Â ¹öÆÛ±³È¯ÀÌ ÀÌ·ç¾îÁø´Ù. ÀÌ ±â¹ýÀº ¾Ö´Ï¸ÞÀ̼ǿ¡¼ »ç¶÷µéÀÇ ´«ÀÌ ÇÁ·¹ÀÓ´ÜÀ§·Î ±×·ÁÁö´Â °ÍÀ» ´«Ä¡Ã¤Áö ¸øÇϵµ·Ï Çϱ⠶§¹®¿¡ ÄÄÇ»Å;ִϸÞÀ̼Ǻо߿¡¼ ÀϹÝÀûÀÎ ±â¹ýÀÌ´Ù. OpenGLÀÀ¿ëÇÁ·Î±×·¥°³¹ßÀ» ½ÃÀÛÇϱâ À§ÇÑ ÃæºÐÇÑ Á¤º¸µéÀ» »ìÆ캸¾Ò´Ù. ´Ü ÇÑ°¡Áö ºüÆ®¸° °ÍÀÌ ÀÖ´Ù¸é ½ÇÁ¦·Î ±×¸²ÀÌ ±×·ÁÁö´Â MyDisplay³»ÀÇ OpenGL¸í·É¾îµéÀÌ´Ù...ÀÌ°ÍÀº ½ÇÁ¦·Î µû¸¥ À̾߱âÀÌ´Ù ;-) GLUT¿¬Àç ´ÙÀ½È¸¿¡¼´Â GLUT¿¡¼ »ç¿ëÇÒ ¼ö Àִ â °ü¸®ºÎºÐÀÇ ÇÔ¼öµéÀ»
Á»´õ ±íÀÌ ´Ù·ïº¸±â·Î ÇÏ°Ú´Ù. ±×¸®°í µ¿ÀÏÇÑ Ã¢¿¡ ¿©·¯°³ÀÇ Àå¸éÀ» ¾î¶»°Ô ±×¸®´Â°¡ ÇÏ´Â ¹æ¹ý°ú
À̽ļº ¹× ¸Þ´º¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» »ìÆ캸°Ú´Ù.
´õ ¸¹Àº Á¤º¸°¡ ÇÊ¿äÇÏ´Ù¸é:
¹ø¿ª : ÀÌÁÖÈ£
|
º» À¥»çÀÌÆ®´Â Miguel Angel Sepulveda¾¾¿¡ ÀÇÇØ °ü¸®µË´Ï´Ù. © Emre Demiralp 1998 LinuxFocus 1998 |