¿¬½ÀÀå(´Ù¹ö¸®°í °©´Ï´Ù...)-³²±æ ±ÛÀÌ ÀÖÀ¸¸é ¹Î°¡ÃÌ¿¡ ³²°ÜÁֽðí, ȸ¿ø °¡ÀÔÀ» ¹ÞÁö ¾Ê½À´Ï´Ù. |
---|
2003/09/17 (15:20) from 203.247.202.72' of 203.247.202.72' | Article Number : 207 |
_Àü | Access : 4612 , Lines : 157 |
[³ëƼ]20030915-0917 ÄõµåÆ®¸®, LOD, ROAM(½Ç¿Ü) |
---|
*.Âü°í ÁöÇü http://research.microsoft.com/~hoppe/svdlod.pdf http://www.cix.co.uk/~glennc/gdcetalk_files/frame.htm °·ÂÃßõ(List/Strip) *.½Ç³» http://www.seojewoo.pe.kr/ -.BSP ; Binary Space PartioningÀº ¸» ±×´ë·Î °ø°£À» 2°³·Î ºÐÇÒÇÏ´Â ¾Ë°í¸®ÁòÀÌ´Ù. -1.3D BSPÆ®¸®°¡ 2D BSPÆ®¸®¿Í Å©°Ô ´Ù¸¥Á¡Àº ¿ì¸®°¡ Ç¥¸éÀ» ºÐÇÒÇϴµ¥ »ç¿ëÇÏ´Â °ÍÀÌ ¼±ÀÌ ¾Æ´Ï¶ó ¸éÀ» »ç¿ëÇÑ´Ù´Â Á¡À̸ç, ¸ðµç nÂ÷¿ø bspÆ®¸®´Â ºÐÇÒÇÏ´Â °ø°£¿¡ ÀÖ¾î¼ n-1Â÷¿øÀ» »ç¿ëÇؼ ÀÛ¾÷À» ÇÑ´Ù. °³³ä; http://www.gamesync.com.ne.kr/source/ch1.html ÀÀ¿ë; http://seojewoo.pe.kr/activex/opengl/opengl-12.htm -.Solid Node BSP ; ±×³É BSP¸¸ »ç¿ëÀ» Çؼ´Â Áö±ÝÀº ³Ê¹«³ª ¸¹Àº Æú¸®°ïÀ» ·£´õ¸µ Çϱ⠶§¹®¿¡ BSP¸¦ È®ÀåÇÑ Solid BSP¸¦ »ç¿ëÀ» ÇÑ´Ù -1.convex °ø°£ ; 4°³ÀÇ º®À¸·Î ±¸¼ºµÈ °ø°£À¸·Î ¹æ¾È¿¡ º®ÀÌ ´Ù¸¥º®ÀÇ ½Ã¾ß¿¡ ÀüÇô ºí·ÏÀ¸·Î °¡·ÁÁöÁö ¾Ê´Â, °üÂûÀÚ°¡ ¾îµð ÀÖ´ÂÁö¿¡ ´ëÇØ ¾Æ¹«·± ¹®Á¦°¡ ¾ø´Â °ø°£ -2.¿ì¸®°¡ °ø°£À» ³ª´«´Â ÀÏÀ» ÇÑ´Ù´Â °ÍÀº Ç¥¸éÀ» ³ª´©´Â °ÍÀ¸·Î °ø°£À» ±¸¼ºÇÏ´Â ºÐÇÒ¸éÀÇ ¸ðµç ¾Õ°ú µÚÀÇ ÇÏÀ§±îÁö ³ª´©¾î¼ °¢°¢ÀÇ °ø°£À» convexÇÏ°Ô ¼¼ºÐÇÑ´Ù. -3.³ëµå¸¦ Æ÷ÇÔÇÑ Æ®¸®¿¡¼ ¾î¶²°ÍÀº leaves·Î ºÒ¸®¿öÁø Ưº°ÇÑ ³ëµå·Î ÀÌ·ç¾îÁ® Àִµ¥, ÀÌ´Â Æ®¸®ÀÇ °¡Àå¹Ù±ùÂÊ¿¡ ÀÖ´Â ´ëºÎºÐÀÇ ³ëµåµéÀÌ¸ç ¾î¶°ÇÑ Àڽijëµåµµ °¡Áö°í ÀÖÁö ¾Ê´Ù. ÀÌ°ÍÀÌ ¹Ù·Î convex ¼¼ºÎ °ø°£ÀÌ°í, convex·Î Á¤ÀÇµÈ Æú¸®°ïÀ» Æ÷ÇÔÇÑ´Ù. °³³ä; http://seojewoo.pe.kr/activex/opengl/bsptree(kor).htm Âü°í; http://www.xmission.com/~pdalton/directX.html *.½Ç¿Ü 20030915 Quadtrees http://www.gpgstudy.com/kgdp/view.php/3darticles/quadtree?view=quadtree.html 20030916 LOD http://www.gvu.gatech.edu/people/peter.lindstrom/papers/siggraph96/siggraph96.pdf http://gpgstudy.com/gpgiki/ClodTerrainMeshingUsingAdaptiveQuadtrees 20030917 ROAM(Real-time Optimally Adapting Meshes) ; ÀÌÁø »ï°¢Çü Æ®¸®(Binary Triangle Tree)¿¡ ±â¹ÝÇÑ ¾Ë°í¸®Áò ; LODÁöÇü ¾Ë°í¸®ÁòÀÇ ¼¼ºÎ Ç¥Çö ±â¹ý http://www.g-matrix.pe.kr/ ÀÇ Features/ 3D Engine/ Realtime Dynamic Level of Detail Terrain rendering with ROAMÁ¦¸ñÀ¸·Î ¹ø¿ª -1.°³¿ä -.¿©±â¿¡¼ °¢ ÆÐÄ¡´Â ´Ü¼øÈ÷ (¿ìÃøÀÇ) À̵ »ï°¢ÇüÀÌ´Ù. »ï°¢ÇüÀÇ Á¤Á¡¿¡¼ ÀÌ »ï°¢ÇüÀÇ ºøº¯ÀÇ ÁßÁ¡À» ºÐÇÒÇÏ¸é µÎ °³ÀÇ »õ·Î¿î À̵(¿ìÃø) »ï°¢ÇüÀ» ¸¸µç´Ù. --> ÀÌ·¯ÇÑ ºÐÇÒÀº Àç±ÍÀûÀÌ¸ç ¿øÇÏ´Â µðÅ×ÀÏ ¼öÁØ¿¡ À̸¦ ¶§±îÁö Àڽijëµåµé¿¡¼µµ ¹Ýº¹ --> »ï°¢ÇüµéÀÇ ÁÂÇ¥´Â ¼øȸ µµÁß Áï¼®¿¡¼ °è»ê -.¾ÆÁÖ ±âº»ÀûÀÎ ¼öÁØ¿¡¼ºÎÅÍ °ÅÀÇ ¿¬¼ÓÀûÀÎ ´Ü°è·Î ¾ÆÁÖ Áøº¸µÈ ÃÖÀûȱîÁö ±¸Çö --> °¢°¢ÀÇ ´Ü°è´Â °è¼ÓÇϱâ Àü¿¡ À¯È¿È/ ¾ÆÁÖ ºü¸£°Ô ºÐÇÒÇÏ¸ç ³ôÀ̸ÊÀ» µ¿ÀûÀ¸·Î °»½Å -.Àç±ÍÀû¹æ¹ýÀÇ ÁÁÀºÁ¡ Áß ÇÑ°¡Áö´Â ¾î¶² ¹öÅؽº´ç µ¥ÀÌÅÍ(per Vertex Data)µµ ÀúÀåÇÏÁö ¾Ê´Â´Ù(¹öÅؽº¿¡ °ü·ÃµÈ ¾î¶² µ¥ÀÌÅ͵µ ÀúÀåÇÏÁö ¾ÊÀ½(?))´Â Á¡Àε¥ ÀÌ´Â ·¥ÀÇ »ç¿ë·®À» ÁÙÀϼö ÀÖ´Ù. -.»ç½Ç TriTreeNode±¸Á¶Ã¼´Â ³Ê¹« ÀÚÁÖ »ý¼ºµÇ°í Æı«µÇ¹Ç·Î °¡Àå È¿À²ÀûÀÎ ¹æ¹ýÀ¸·Î ¸Þ¸ð¸®¸¦ ÇÒ´çÇÏ´Â °ÍÀº ¹Ýµå½Ã ÇÊ¿äÇÏ´Ù. ¶ÇÇÑ ¿©±â¿¡´Â ÀÌ·¯ÇÑ ±¸Á¶Ã¼µéÀÌ ¼ö¸¸°³°¡ ÀÖÀ¸¹Ç·Î ÇϳªÀÇ ¿©ºÐÀÇ Æ÷ÀÎÅ͵µ ¾öû³ª°Ô ¸¹Àº ¸Þ¸ð¸®¸¦ ¿ä±¸ÇϰԵȴÙ. -2.±âº»±¸Á¶ struct TriTreeNode { ¡¡¡¡¡¡¡¡ TriTreeNode *LeftChild; // Our Left child ¡¡¡¡¡¡¡¡ TriTreeNode *RightChild; // Our Right child ¡¡¡¡¡¡¡¡ TriTreeNode *BaseNeighbor; ¡¡¡¡¡¡¡¡ ¡¡¡¡ // Adjacent node, below us ¡¡¡¡¡¡¡¡ TriTreeNode *LeftNeighbor; ¡¡¡¡¡¡¡¡ ¡¡¡¡ // Adjacent node, to our left ¡¡¡¡¡¡¡¡ TriTreeNode *RightNeighbor; ¡¡¡¡¡¡¡¡ ¡¡¡¡ // Adjacent node, to our right }; -3.°¢°¢ÀÇ Patch°´Ã¼´Â ¸Þ½¬ ±Ù»çÈ(ºÐÇÒ)¸¦ À§ÇØ È£Ãâ ÆÐÄ¡´Â ½ºÅ©¸°»ó¿¡ Ç¥½ÃµÉ Æ®¶óÀ̾ޱÛÀÇ ¾Ï½ÃÀûÁÂÇ¥(x, y, z¿Í °°Àº ¸í½ÃÀû ÁÂÇ¥°¡ ¾Æ´Ô) ¸¦ ÀúÀåÇÏ´Â ÀÌÁø »ï°¢ÇüÆ®¸®ÀÌ´Ù. -.³ôÀÌ¸Ê ÆÄÀÏÀº ¸Þ¸ð¸®¿¡ ·Îµå -.ÀÌ ¾Ë°í¸®ÁòÀÇ ³ª¸ÓÁö ºÎºÐ¿¡¼ »ç¿ëµÈ Æ®¸®±¸Á¶´Â ±íÀÌ¿¡ µû¶ó Áö¼öÀûÀÎ Å©±â·Î ·¥ÀÇ »ç¿ë·®À» ´Ã¸°´Ù. µû¶ó¼ ÀÛÀº ¿µ¿ªÀ» À¯ÁöÇÏ´Â °ÍÀº ±× ±íÀ̸¦ Á¦ÇÑÇÏ´Â °ÍÀÌ´Ù. -.³ôÀ̸ÊÀÇ µ¿Àû°»½ÅÀ» À§Çؼ´Â º¯°æµÈ Áö¿ª¿¡ ´ëÇÑ ÆíÂ÷Æ®¸®(Variance Tree)¸¦ ¿ÏÀüÇÏ°Ô ´Ù½Ã °è»êÇØ¾ß ÇÑ´Ù. ¾ÆÁÖ Å« ÆÐÄ¡ÀÇ °æ¿ì ½Ç½Ã°£ ¾îÇø®ÄÉÀ̼ǿ¡¼ °è»êÇϱ⿡´Â ³Ê¹« ´À¸®´Ù. -.Ä¿´Ù¶õ Á¤»ç°¢ Ç÷Եé(Á¤»ç°¢Çü ¿µ¿ª)À» °ü¸®ÇÏ¸ç °¢ÀÚ ÀÚ½ÅÀÇ Ç÷ÔÀ» °¡Áø ´Ù¸¥ (Á¤»ç°¢ Ç÷Եé(Á¤»ç°¢Çü ¿µ¿ª)À» °ü¸®ÇÏ´Â) LandScape °´Ã¼¿Í µ¿ÀÛÇÑ´Ù. ÀÌ·¯ÇÑ ¼³°è´Â Á»´õ Å« ÁöÇüÀ» ºÒ·¯µéÀÌ°í ½ÍÀ» ¶§ À¯¿ëÇÏ´Ù. -.ÃʱâÈ°úÁ¤¿¡¼ ³ôÀÌ ¸ÊÀº Á»´õ °ü¸®°¡ ¿ë¾ÆÇÑ Á¶°¢µé·Î ºÐÇÒµÇ¸ç »õ·Î¿î Patch°´Ã¼·Î µÈ´Ù. class Patch { public: ¡¡¡¡ void Init( int heightX, int heightY, ¡¡¡¡ ¡¡¡¡ ¡¡¡¡ int worldX, int worldY, ¡¡¡¡ ¡¡¡¡ ¡¡¡¡ unsigned char *hMap); ¡¡¡¡ ¡¡¡¡ ¡¡¡¡ ¡¡¡¡ // Initialize the patch ... }; -4.¼¼ºÐÇÏ´Â ±âÁØ ³ôÀ̸ÊÀ» À§ÇÑ ¸Þ½¬ ±Ù»ç°ªÀ» »ý¼ºÇÒ ¶§ ¿ì¸®´Â ¿øÇÏ´Â µðÅ×ÀÏ ·¹º§¿¡ µµ´ÞÇÒ¶§±îÁö Æ®¸®¿¡ Â÷ÀÏµå ³ëµåµéÀ» Àç±ÍÀûÀ¸·Î Ãß°¡ÇÑ´Ù. -.¸ÕÀú ¿ì¸®´Â ¸Þ½¬ ±Ù»çÈ °úÁ¤¿¡¼ ¹ß»ýÇÏ´Â °¡½ÃÀûÀÎ ¿¡·¯µéÀ» ÃøÁ¤ÇÏ´Â °ªµéÀ» Á¤ÀÇ ³»°¡ »ç¿ëÇÏ´Â ¹æ¹ýÀº Tread Marks¿£ÁøÀÌ "Variance(ÆíÂ÷)"¶ó°í ºÎ¸£´Â °ÍÀ» Âü°í -.Variance(ÆíÂ÷, º¯ÀÌ)¶õ ÀÌÁø »ï°¢ÇüÆ®¸®ÀÇ ºøº¯ÀÇ ÁßÁ¡ÀÇ º¸°£µÈ ³ôÀÌ¿Í ±× ÁöÁ¡¿¡¼ÀÇ ½ÇÁ¦ ³ôÀÌ Çʵ尪ÀÇ Â÷ÀÌ triVariance = abs( centerZ - ((leftZ + rightZ) / 2) ); -.´ë°³ ÆíÂ÷ °è»êÀº ¸Å ÇÁ·¹ÀÓ¸¶´Ù ÇÊ¿äÇÏÁö¸¸ ¹èÈÄÀÇ ³ôÀÌÇʵ尡 º¯ÇÏÁö ¾Ê´Â ÇÑ ±× °ªÀº º¯ÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù. --> µû¶ó¼ »ï°¢ÇüÆ®¸®¿Í ÇÔ²² ÀÛµ¿ÇÏ´Â ÆíÂ÷Æ®¸®ÀÇ °³³äÀ» µµÀÔÀÌ °¡´É ÆíÂ÷Æ®¸®(Variance Tree)´Â ¼øÂ÷¹è¿·Î ÀÛ¼ºµÈ Àüü ³ôÀÌÀÇ ÀÌÁø Æ®¸®·Î½á, ¸î °³ÀÇ °£´ÜÇÑ ¸ÅÅ©·ÎµéÀº Æ®¸®¸¦ È¿À²ÀûÀ¸·Î ¼øȸÇÒ¼ö ÀÖ°Ô ÇØÁÖ°í ¿ì¸®°¡ ÀÌ Æ®¸®¿¡ ä¿ö³ÖÀº µ¥ÀÌÅÍ´Â ³ëµå´ç Â÷ÀÌÀÎ ÇѹÙÀÌƮ¥¸® °ªÀÌ´Ù. -5.ºÐÇÒ ¿ì¸®ÀÇ ¿¡·¯ÃøÁ¤Ä¡(ÆíÂ÷)°¡ ÁÖ¾îÁú ¶§ ƯÁ¤ ÁöÁ¡¿¡ ´ëÇØ ÀÌ ÆíÂ÷°¡ ³Ê¹« ³ôÀ¸¸é ÇØ´ç ÀÌÁø »ï°¢Çü Æ®¸®¸¦ ºÐÇÒÇϱâ·Î °áÁ¤ÇÒ °ÍÀÌ´Ù. Áï ÇöÀç »ï°¢Çü ¾Æ·¡ÀÇ ÁöÇüÀÌ ¿ïÅüºÒÅüÇÏ¸é ´õ ³ªÀº ±Ù»çȸ¦ À§ÇØ ÀÌ »ï°¢ÇüÀ» ºÐÇÒÇØ¾ß Çϸç, ºÐÇÒÀº ÆоƮÀÇ ¿µ¿ª¿¡ ²À µé¾î¸Â´Â µÎ °³ÀÇ Â÷Àϵå³ëµå¸¦ »ý¼ºÇÑ´Ù. ¾î¶² ½ÃÁ¡¿¡¼ ¿ì¸®´Â ÇϳªÀÇ Æ®¶óÀ̾ޱ۷Π±Ù»çÈÇÒ¼ö ÀÖÀ» Á¤µµ·Î ÃæºÐÈ÷ ºÎµå·¯¿î ÁöÇüÀ» ¹ß°ßÇϰųª ´õ ÀÌ»ó ÁøÇàÇÒ ´Ü°è°¡ ¾ø°Ô µÉ °ÍÀÌ´Ù. °á±¹ ¿ì¸®´Â ³ôÀÌÇʵåÀÇ Çػ󵵱îÁö µû¶ó ³»·Á°£ ¸Þ½¬¸¦ »ý¼ºÇϰԵȴÙ.(?) -.¹®Á¦Á¡_1 ÁöÇü»ó¿¡¼ ¼·Î ÀÎÁ¢ÇÏ´Â ÀÌÁø »ï°¢ÇüÆ®¸®µéÀ» ºÐÇÒÇÒ ¶§ ¸Þ½¬³»¿¡ Å©·¢ÀÌ Á¾Á¾ ¹ß»ý --> ÀÌ´Â ÆÐÄ¡°æ°è¿µ¿ª Àüü¿¡ °ÉÃÄ ÀÌ Æ®¸®µéÀ» ±ÕÀÏÇÏ°Ô ºÐÇÒÇÏÁö ¾ÊÀº °á°ú·Î½á, ROAMÀº ³×À̹öÆ÷ÀÎÅÍ¿Í ¸Þ½¬ ÀÚüÀÇ Èï¹ÌÀÖ´Â »ç½ÇÀ» ÀÌ¿ëÇؼ ÇØ°áÇϴµ¥ ƯÁ¤ ³ëµåÀÇ ÀÌ¿ôÀº µ¿ÀÏÇÑ ·¹º§À̰ųª ÇÑ·¹º§ ´õ µðÅ×ÀÏ(ÁÂ/¿ìÃø ÀÌ¿ô(neighbor)ÀÇ °æ¿ì)Çϰųª ÇÑ ·¹º§ ´ú µðÅ×ÀÏ(º£À̽ºÀÌ¿ôÀÇ °æ¿ì)ÇÏ´Ù. ==> ±Í°áµÈ ´Ü¼øÇÑ ±ÔÄ¢; ÇöÀç³ëµå¿Í ±× º£À̽º³×À̹ö(ÀÌ¿ô)°¡ µÑ´Ù ¼·Î¸¦ °¡¸®Å°´Â °æ¿ì¿¡¸¸ ºÐÇÒÇÑ´Ù. (ÀÌ·¯ÇÑ °ü°è¸¦ ´ÙÀ̾Ƹóµå¶ó°í ÇÑ´Ù.) ´ÙÀ̾Ƹóµå³»ÀÇ ÇϳªÀÇ ³ëµå¸¦ ºÐÇÒÇÏ¸é ¸Þ½¬³»ÀÇ Å©·¢À» ¹ß»ý½ÃÅ°Áö ¾Ê°íµµ ´Ù¸¥ ÇÑÂÊ¿¡ ¹Ì·¯¸µµÉ¼ö ÀÖÀ¸¹Ç·Î À̴ Ư¼öÇÑ °æ¿ìÀÌ´Ù(?). -.¾î¶² ³ëµå¸¦ ºÐÇÒÇÏ·Á°í ½ÃµµÇÒ ¶§ ¼¼°¡ÁöÀÇ °æ¿ì°¡ Á¸ÀçÇÑ´Ù. 1. ÀÌ ³ëµå´Â ´ÙÀ̾ƸóµåÀÇ ÀϺÎÀÌ´Ù. - ÀÌ ³ëµå¿Í ÀÌ ³ëµåÀÇ º£À̽º³×À̹ö¸¦ ºÐÇÒÇÑ´Ù. 2. ÀÌ ³ëµå´Â ¸Þ½¬ÀÇ °¡ÀåÀÚ¸®¿¡ ÀÖ´Ù. - ´ÜÁö ÀÌ ³ëµå¸¸ ºÐÇÒÇ϶ó. 3. ÀÌ ³ëµå´Â ´ÙÀ̾ƸóµåÀÇ ÀϺΰ¡ ¾Æ´Ï´Ù. - º£À̽º ³×À̹ö¸¦ °Á¦ÀûÀ¸·Î ºÐÇÒÇ϶ó. (°Á¦ºÐÇÒÀº ´ÙÀ̾Ƹóµå¸¦ ¹ß°ßÇϰųª °¡ÀåÀÚ¸® Æ®¶óÀ̾ޱÛÀ» ¹ß°ßÇÒ ¶§ ³¡³ª´Â ¸Þ½¬ÀÇ Àç±ÍÀûÀÎ ¼øȸ(traverse)ÀÌ´Ù.) -6.Àû¿ë; ³ôÀÌÇʵåÀÇ Æ¯Á¤¿µ¿ªÀ» Ä¿¹öÇÏ°í ÀÖ´Â µÎ °³ÀÇ ÀÌÁø »ï°¢ÇüÆ®¸®·Î ±¸¼ºµÈ ÇϳªÀÇ ÆÐÄ¡°¡ ÁÖ¾îÁú ¶§ ¿ì¸®´Â ´ÙÀ½ÀÇ ¿¬»êµéÀ» ¼öÇàÇÒ¼ö ÀÖ´Ù. 1. ÆíÂ÷Æ®¸®(Variance Tree)¸¦ °è»êÇ϶ó. - ¿ÏÀü ³ôÀÌ ÀÌÁøÆ®¸®¸¦ °¢°¢ÀÇ ÀÌÁø »ï°¢ÇüÆ®¸®¿¡ ´ëÇÑ ÆíÂ÷µ¥ÀÌÅͷΠä¿ì¶ó. ¿©±â¿¡¼ ÆíÂ÷¶õ ¿ì¸®ÀÇ ±Ù»çÈ°¡ ÃæºÐÈ÷ ±¦ÂúÀºÁö¸¦ °áÁ¤Çϱâ À§ÇØ »ç¿ëÇÏ´Â ÃøÁ¤°ªÀÌ´Ù. »ï°¢ÇüÀÇ ºøº¯ÀÇ ÁßÁ¡¿¡¼ÀÇ ³ôÀÌ°ª°ú ÀÌ ºøº¯ÀÇ ¾ç ³¡Á¡¿¡¼ º¸°£µÈ ³ôÀÌ»çÀÌÀÇ Â÷ÀÌ´Ù. 2. ÁöÇüÀ» ºÐÇÒÇ϶ó. - ÆíÂ÷Æ®¸®¸¦ ÀÌ¿ëÇÏ¿© ÃÖ»óÀ§·¹º§ÀÇ ÆíÂ÷°¡ ³Ê¹« Å©´Ù¸é Â÷Àϵ带 Ãß°¡ÇÔÀ¸·Î½á ¿ì¸®ÀÇ ÀÌÁø »ï°¢ÇüÆ®¸®¸¦ ºÐÇÒÇÒ °ÍÀÌ´Ù. 3. °Á¦ºÐÇÒ. - ¿ì¸®°¡ ºÐÇÒÇÏ·Á°í ÇÏ´Â ³ëµå°¡ ´ÙÀ̾ƸóµåÀÇ ÀϺΰ¡ ¾Æ´Ï¶ó¸é ÀÌ ³ëµå¿¡ ´ëÇØ °Á¦ºÐÇÒ ÇÔ¼ö¸¦ È£ÃâÇ϶ó. ÀÌ´Â ¿ø·¡ÀÇ ºÐÇÒÀ» ¿Ï¼ºÇÏ´Â ´ÙÀ̾Ƹóµå¸¦ ÁÙ °ÍÀÌ´Ù. 4. ¹Ýº¹ - ÀÌ·¯ÇÑ ºÐÇÒ°úÁ¤À» ÀÌÁø »ï°¢ÇüÆ®¸®³»¿¡ Á¸ÀçÇÏ´Â ¸ðµç »ï°¢ÇüµéÀÌ ÇöÀç ÇÁ·¹ÀÓ³»ÀÇ ÆíÂ÷ÇÑ°è ÀÌÇÏ·Î µÉ ¶§±îÁö ¶Ç´Â ´õ ÀÌ»ó ºÐÇÒÇÒ ³ëµå°¡ ¾øÀ» ¶§±îÁö Â÷ÀÏµå ³ëµåµé¿¡ ´ëÇØ ¹Ýº¹ÇÑ´Ù. *.Èæ¹éÀ¸·Î ¸¸µé±â À§Çؼ RGB¸¦ Gray·Î ¹Ù²Ù±â À§ÇÑ ¿¬»ê float gray = Color.r * 0.3 + Color.g * 0.59 + Color.b * 0.11; |