TransForm & LightingÀ̶õ
¹«¾ùÀΰ¡?
ÃÖ±Ù¿¡ °¢±¤ ¹Þ°í ÀÖ´Â ±â¼úÁßÀÇ
ÇϳªÀÎ Transform & Lighting ±â¼ú¿¡ ´ëÇؼ ¾Ë¾Æ º¸°íÀÚ À̹ø¿¡
¶Ç ÇÊÀÚ°¡ ÆæÀ» µé¾ú´Ù. »ç½Ç Transform & Lighting(ÀÌÇÏ T&L)Àº
nVIDIA°¡ ºÎµÎ Áø¿µÀÇ T-buffer±â¼ú¿¡ ´ëÇ×ÇÏ´Â Geforce256 Ĩ¼ÂÀÇ ÇÙ½É
±â¼ú·Î½á ÁÖ¸ñ ¹Þ°í ÀÖ´Â ±â¼úÀÌ´Ù. ¸¹ÀÌµé ¶°µé±ä ÇÏÁö¸¸ ½ÇÁ¦·Î T&LÀ»
ÀÚ¼¼È÷ ¼Ò°³ÇÏ°í ÀÖ´Â »çÀÌÆ®°¡ µå¹® °Í °°¾Æ ªÀº Áö½ÄÀÌÁö¸¸ ÇÊÀÚ°¡
¼Ò°³ÇÏ°íÀÚ ÇÑ´Ù. Âü°í·Î º» ±â»ç´Â nVIDIA»çÀÇ Å×Å©´ÏÄà ºê¸®ÇÎÀ» Âü°í
ÇÏ¿´À¸¸ç, www.opengl.org »çÀÌÆ®¿¡¼µµ ¸¹Àº Âü°í ÀڷḦ ¾ò¾ú´Ù. Â÷±ÙÂ÷±Ù
¼³¸íÇϱâ ÆíÀÇ»ó Transform ÆÄÆ®¿Í Lighting ÆÄÆ®·Î ³ª´©¾î ±â»ç¸¦ ¿¬Àç
ÇÏ°íÀÚ ÇÑ´Ù.
1) TransForm
¿ì¸®°¡ ¾î¶² 3D »ç¹°À» ¹¦»çÇÏ°íÀÚ
ÇÒ¶§´Â ±× ¿ÀºêÁ§Æ®¿Í ÁÖº¯ÀÇ È¯°æÀ» Ç¥ÇöÇÑ´Ù´Â °ÍÀÌ ¸Å¿ì º¹ÀâÇÏ´Ù´Â
°ÍÀ» ´À³¢°Ô µÈ´Ù. (¹¹ °®°¡Áö È¿°ú³ª ¸ÊÇÎ, ±¤¿øµé ¸ðµÎ¸¦ ´Ù Ç¥ÇöÇÏ´Â
ÀÏÀ» ¸»ÇÑ´Ù.) µû¶ó¼ ÀÌ·¯ÇÑ º¹Àâµµ¸¦ ÁÙÀ̱â À§Çؼ 3D ÇÁ·Î¼¼½ÌÀº
´ÙÁß ÇÁ·¹ÀÓÀ» »ç¿ëÇÑ´Ù´øÁö, ¾Æ´Ï¸é 3Â÷¿ø ÁÂÇ¥°¡ ¾Æ´Ñ º°µµÀÇ ÁÂÇ¥
½Ã½ºÅÛÀ» »ç¿ëÇÑ´Ù´øÁö Çϴ ó¸®°¡ ³ª¿À°Ô µÈ´Ù. 3D ¿¬»êÀÇ ±âº»Àº
»ç½Ç 3°³ÀÇ ºÐ¸®µÈ µµ¸ÞÀο¡ ÀÇÇؼ °áÁ¤µÈ´Ù. Áï ¿ì¸®°¡ »ì°í ÀÖ°í
¸ö´ã°í(?) ÀÖ´Â °Í°ú °°Àº °³³äÀÇ 3D °ø°£°è°¡ ÀÖÀ¸¸ç, ¿ì¸®ÀÇ ´«À¸·Î
´À³¢´Â °ø°£°è Áï eye space(´«±î¸® °ø°£?), ¶Ç ´Ù¸¥ Çϳª´Â ¸ð´ÏÅÍ·Î
¿ì¸®ÀÇ ´«ÀÌ º¸µíÀÌ ¸éó·³ º¸ÀÌÁö¸¸ 3Â÷¿øÀ¸·Î Âø°¢ÇÏ°í ÀÖ´Â °¡»óÀÇ
½ºÅ©¸° °ø°£ÀÌ ÀÖ´Ù.
Áï ÀÌ°ÍÀº 3D World, Eye space,
screen spaceµîÀ¸·Î ±¸¼ºµÇ¾î ÀÖ´Ù. 3D World´Â ½ÇÁ¦ÀÇ Á¦ÀÛµÈ 3D ¿ÀºêÁ§Æ®µéÀ»
°¡µÎ¾î ³õ´Â °÷ÀÌ°í, Eye spaceÀÇ °æ¿ì´Â ±¤¿ø󸮳ª ¹°Ã¼ÀÇ º¯ÇüµîÀ»
À§Çؼ »ç¿ëµÇ´Â °÷À̸ç, ¸¶Áö¸·À¸·Î Screen SpaceÀÇ °æ¿ì´Â ½±°Ô ¼³¸íÇϸé
ºñµð¿À ¸Þ¸ð¸® À§ÀÇ ÇÁ·¹ÀÓ ¹öÆÛ¶ó°í »ý°¢ÇÏ¸é ½±´Ù. ¹°·Ð ÀÌ°ÍÀº Çϵå¿þ¾îÀû
ȤÀº ¹°¸®ÀûÀ¸·Î ¸í¹éÇÏ°Ô ºÐ¸®µÈ °ÍÀº ¾Æ´Ï°í °³³äÀûÀ¸·Î ±×·¸°Ô »ý°¢Çϸé
½±´Ù´Â °ÍÀÌ´Ù.
ÀÌ·¯ÇÑ 3°³ÀÇ µµ¸ÞÀÎÀº °¢°¢
º°µµÀÇ ÁÂÇ¥ ½Ã½ºÅÛÀ» °¡Áö°í ÀÖ´Ù. Áï 3D spaceÀÇ °æ¿ì´Â 3D ÁÂÇ¥ ½Ã½ºÅÛÀ»
°¡Áö°í ÀÖ°í, ½Ã°¢ µµ¸ÞÀÎÀº º°µµÀÇ ÁÂÇ¥¸¦, Screen SpaceÀÇ °æ¿ì´Â
2D·Î 3D¸¦ ¿¬ÃâÇϱâ À§ÇÑ º°µµÀÇ ÁÂÇ¥ ½Ã½ºÅÛÀ» °¡Áö°í ¿¬»êÀ» ÇàÇÏ°Ô
µÈ´Ù. ±×·±µ¥ °á±¹ 3D ¿ÀºêÁ§Æ®¸¦ ¸¸µé¾î ³»±â À§Çؼ´Â 3°³ÀÇ º°µµÀÇ
µµ¸ÞÀÎ »çÀÌ¿¡¼ µ¥ÀÌŸ µéÀÌ ³Ñ³ªµé¾î¾ß ÇÏ¸ç º¸Åë ÀÌ·¯ÇÑ °úÁ¤À» ¿ì¸®´Â
loftingÀ̶ó°í ºÎ¸£±âµµ ÇÑ´Ù. ÀÌ 3°³ÀÇ µµ¸ÞÀÎ »çÀ̸¦ ³Ñ¾î ´Ù´Ò °æ¿ì
°¢°¢ÀÇ ´Ù¸¥ ÁÂÇ¥½Ã½ºÅÛÀº º¯È¯À» ¸Â°Ô µÇ¸ç ÀÌ·¯ÇÑ º¯È¯ÀÇ °úÁ¤À» ¿ì¸®´Â
ÀϹÝÀûÀ¸·Î "TransForm"À̶ó°í ÇÑ´Ù.
¾î¶²°¡? ¸»ÀÌ Á» ¾î·Á¿î°¡? Ç㳪
¾î¿ ¼ö ¾ø´Ù. TransFormÀº ´Ù¼Ò »ý¼ÒÇÏ°í ³¸¼± °³³äÀÓ¿¡´Â ºÐ¸íÇÏ´Ù.
ÀϹÝÀûÀÎ À¯Àúµé¿¡°Ô´Â ¸»ÀÌ´Ù. »ç½Ç, TransFormÀÇ ±²ÀåÈ÷ º¹ÀâÇÑ ¼öÇÐÀû
°³³äÀ» Æ÷ÇÔÇÏ¸ç º°µµÀÇ FPUµîÀÇ °¡¼Ó ÀåÄ¡°¡ ÇÊ¿äÇÏ°Ô µÈ´Ù.
[±×¸² 1] ¿ì¸®°¡ ´À³¢´Â ÀϹÝÀûÀÎ
3D ½Ç¼¼°è - ±×¸²Ãâó www.nVIDIA.com : ÀϹÝÀûÀ¸·Î ÀÌ·¯ÇÑ ½Ç¼¼°è¿¡´Ù
¿ì¸®´Â ±¤¿ø°ú Ä«¸Þ¶ó¸¦ ³õ°í ÀÌ È¸éÀ» Âï¾î¼ 2D ½ºÅ©¸°À¸·Î º¯È¯ÇÏ´Â
ÀÛ¾÷À» ÇÏ°Ô µÈ´Ù.
[±×¸² 2] 2D ¿¬»êÀ» À§ÇÑ ½ºÅ©¸°
°ø°£ : 2D ½ºÅ©¸° °ø°£Àº ½ÇÁ¦·Î »ç¿ëÀÚ¿¡°Ô º¸¿©Áö´Â °ø°£ÀÌ¸ç ±¤¿ø
ó¸®¿Í ÇÔ²² 3D °ø°£¿¡¼ º¯Çü(TransForm)µÈ µ¥ÀÌÅÍ°¡ 2D ScreenÀ¸·Î
Åõ¿µµÈ´Ù.
[±×¸² 3] 3D 󸮸¦ À§ÇÑ 3D PipelineÀÇ
°³³äµµ - À§ÀÇ °³³äµµ´Â nVIDIA»çÀÇ GeFORCE256 Á¦Ç°±º¿¡ ÇÑÇÏ¸ç ¿©Å¸
±×·¡ÇÈ Ä¨¼ÂÀº À§¿Í´Â ´Ù¸¥ °³³äÀ» »ç¿ëÇÒ ¼öµµ ÀÖ´Ù.
±×¸² 3À» Àá½Ã º¸ÀÚ. ÀÌ°ÍÀº
Çö´ë ±×·¡ÇÈ Ä¨, ƯÈ÷ T&LÀ» ±¸ÇöÇÏ°í ÀÖ´Â GeForce256ĨÀÇ 3D PipeLineÀÇ
°³³äµµ ÀÌ´Ù. ¼³¸íÀÌ ¾î·Á¿î ºÎºÐµµ ´Ù¼Ò ÀÖÀ» °Í °°Áö¸¸ ÀÏ´Ü ±×·Á·Á´Ï
ÇÏ°í ³Ñ¾î°¡ÀÚ. ^^; ¸Ç ÀÃþÀÇ 2 °èÃþÀº ¾îÇø®ÄÉÀÌ¼Ç °èÃþÀÌ´Ù. ÀÌ°ÍÀº
Çϵå¿þ¾î¿¡ Á¾¼Ó¹ÞÁö ¾Ê´Â °èÃþÀ¸·Î½á ÀϹÝÀûÀ¸·Î ÇÁ·Î±×·¥¿¡¼ ¼ÒÇÁÆ®¿þ¾î
ÀûÀ¸·Î ó¸®ÇÏ´Â °ÍÀ¸·Î½á API°èÃþ À̶ó°íµµ ºÒ¸®¿î´Ù.
°¡Àå »óºÎ °èÃþÀÎ Applications
tasks °èÃþÀº Ä«¸Þ¶ó¸¦ Æ÷ÇÔÇÑ ¿ÀºêÁ§Æ®ÀÇ ¿òÁ÷ÀÓÀ» ´Ù·ç¸ç ¿ÀºêÁ§Æ®°£ÀÇ
Ãæµ¹ ¹× µ¿ÀÛ »óŸ¦ Á¤ÀÇÇÏ´Â ±¸°£ÀÌ´Ù.
±× ´ÙÀ½ Scene-level tasks °èÃþÀº
´ÙÀ½ ÇÁ·¹ÀÓÀ¸·Î ³Ñ¾î°¡¾ßÇÒ µ¥ÀÌÅ͸¦ ´Ù·ç¸ç ½ÇÁ¦ ÀúÀÛµÈ ¹°Ã¼¶óµµ
Ä«¸Þ¶óÀ§ µÞÂÊ¿¡ ÀÖ´ÂÁö ȤÀº ¾ÀÀ» ¹þ¾î³ª¼ Ä«¸Þ¶óÀÇ Àå¸é¿¡ µé¾î ¿ÀÁö
¾Ê´Â´ÙµçÁö ÇÏ´Â ¿ÀºêÁ§Æ®µéÀ» °¡·Á³»¸ç ¹°Ã¼ÀÇ °Å¸®¸¦ °è»êÇؼ ¿ÀºêÁ§Æ®ÀÇ
µðÅ×ÀÏÇÑ Á¤µµ¸¦ °è»êÇÏ´Â ´Ü°èÀÌ´Ù. ¶ÇÇÑ ÇöÀçÀÇ Ä«¸Þ¶ó¿¡ µé¾î¿À´Â
¸ðµç ¿ÀºêÁ§Æ®µéÀÇ ¸®½ºÆ®¸¦ ¸¸µé¾î ½ÇÁ¦·Î °è»êÀÌ ÀϾ´Â ºÎºÐ¸¸
°¡·Á³»´Â ±â´ÉÀÌ´Ù.
±× ´ÙÀ½ÀÌ ¿ì¸®ÀÇ °ü½É»çÀÎ TransForm
°èÃþÀÌ´Ù. ÀÌ °èÃþ¿¡¼´Â À§¿¡¼ Àü¼úÇÑ ¹Ù¿Í °°ÀÌ °¢ ÇÁ·¹ÀÓ(µµ¸ÞÀÎ)°£ÀÇ
Â÷¿ø º¯È¯ÀÌ ÀϾ¸ç ¾Æ·¡ÀÇ 3 °èÃþÀÇ Ã³¸®¸¦ °ÅÄ¡±â Àü¿¡ ¹Ýµå½Ã °ÅÃľß
ÇÒ ºÎºÐÀÌ´Ù. À§¿¡¼ ¾Æ·¡·Î 4¹ø° ºÎºÐÀÌ LightingÀÌ´Ù. ÀÌ°ÍÀº ÃÖ±Ù
Per-pixel Lighting °³³äÀÇ °³¹ß·Î ÀÎÇؼ ÁÖ¸ñ ¹Þ°í ÀÖ´Â ºÎºÐÀ̱⵵
ÇÏ´Ù. Per-pixel LightingÀÇ °³³äÀº ÀÌÈÄ º»Áö¿¡¼ ´Ù½ÃÇѹø ÀÚ¼¼ÇÏ°Ô
´Ù·ê ¿¹Á¤ÀÌ´Ù. (À̰͸¸ Çصµ »ó´çÇÑ ¾çÀÌ´Ù.) °¡»óÀ¸·Î ¸¸µé¾îÁø ¿ÀºêÁ§Æ®¿¡
±¤¿øÈ¿°ú³ª ¿©·¯°¡Áö ·¹ÀÌÆ®·¹À̵̽îÀÇ È¿°ú¸¦ ÁÖ¾î¼ ¹°Ã¼¸¦ º¸´Ù ½ÇÁ¦¿¡
°¡±õ°Ô ¸¸µé¾î ÁÖ´Â ¿ªÈ°À» ÇÏ´Â Áß¿äÇÑ ºÎºÐÀÌ´Ù.
±× ´ÙÀ½ÀÇ Triangle Setup and
ClippingÀÇ Àå¸é¿¡¼´Â ¸·´ëÇÑ ¼öÄ¡Àû ¿¬»êÀ» ÇàÇÑ´Ù. ÀÌ Àå¸é¿¡¼ ÇÊ¿äÇÑ
ÀÏÀº ±ÛÀÚ ±×´ë·Î Æ®¶óÀ̾ޱÛÀ» ¸¸µé¾î ³»°í ·£´õ¸µ ¿£Áø¿¡¼ ÇÊ¿äÇÑ
VertexÀ» »ý¼ºÇÏ´Â ÀÏÀ» ÇÑ´Ù. ¶ÇÇÑ ¹°Ã¼ÀÇ µÞ¸é¿¡ °¡·Á¼ º¸ÀÌÁö ¾Ê´Â
°÷Àº ¿¬»ê¿¡¼ Á¦¿Ü½ÃÅ°´Â clipping ÀÛ¾÷µµ ÀϾ°Ô µÈ´Ù.
¸¶Áö¸·ÀÌ ·£´õ¸µ °èÃþÀÌ´Ù. °¡Àå
ÇϺÎ, ¸¶Áö¸·¿¡ Á¸ÀçÇÏ°í ÀÖÀ¸¸ç ¼Â¾÷ ¿£Áø¿¡¼ ³Ñ¾î¿Â ¿ÀºêÁ§Æ®ÀÇ ÃÖÈÄ
󸮸¦ ¸Ã°í ÀÖ´Ù. Áï ¿ÍÀ̾î ÇÁ·¹ÀÓ¿¡ ÅؽºÃĸ¦ ÀÔÈ÷°í °¢°¢ÀÇ ÅؽºÃÄÀÇ
Çȼ¿´ÜÀ§´ç ±¤¿øÀ» Á¶»çÇؼ ¹°Ã¼ÀÇ »ö±òÀ» °è»êÇÏ¸ç ¿©·¯°¡Áö ´Ü°è¸¦
°ÅÃÄ ÃÖÁ¾ À̹ÌÁö¸¦ °è»êÇØ ³»°Ô µÈ´Ù. |