Ȩ > Ç¥ÁØÈ Âü¿© > TTA°£Ç๰ > ICT Standard Weekly
[À¥] X3D: À¥ ȯ°æ¿¡¼ÀÇ 3Â÷¿ø ±×·¡ÇȽº µ¥ÀÌÅÍ Ç¥Çö
À¥ ȯ°æÀÌ ³Î¸® »ç¿ëµÇ¸é¼, ÀÌÁ¦ À¥ ȯ°æ¿¡¼µµ 3Â÷¿ø ±×·¡ÇȽºÀÇ ±â´ÉµéÀ» ¸ðµÎ Á¦°øÇϰí ÀÖ´Ù. º» °í¿¡¼´Â ÀÌ·¯ÇÑ 3Â÷¿ø ±×·¡ÇȽº ±â´ÉÀÇ Ç¥Áصé Áß¿¡¼µµ X3D¸¦ Áß½ÉÀ¸·Î, ¾î¶°ÇÑ ±â¼úÀû »óȲ¿¡ µµ´ÞÇß´ÂÁö¸¦ »ìÆìº¸°íÀÚ ÇÑ´Ù.
World Wide WebÀº 1991³â HTML(HyperText Markup Language) Ç¥ÁØÀÇ Á¦Á¤ ÀÌÈÄ, ²ÙÁØÈ÷ ¹ßÀüÇØ ¿À°í ÀÖ´Ù. HTML µîÀÇ Ç¥ÁØÀÌ ´ëºÎºÐ ÅØ½ºÆ®, 2Â÷¿ø ±×·¡ÇȽº, µ¿¿µ»ó µîÀ» ´ë»óÀ¸·Î ÇÏÁö¸¸, 3D ±×·¡ÇȽº Ãâ·Â¿¡ ´ëÇÑ ¿ä±¸°¡ ²ÙÁØÈ÷ Áõ°¡Çϰí ÀÖ´Ù. web¿¡¼ »ç¿ë °¡´ÉÇÑ Ç¥ÁØÀÇ Ãø¸é¿¡¼´Â 1994³â Á¦Á¤µÈ VRML(Virtual Reality Modeling Language)¿¡¼ 3Â÷¿ø ±×·¡ÇȽº ÀڷḦ ´Ù·ç°í ÀÖ´Ù[1].
VRMLÀº ³»ºÎÀûÀ¸·Î´Â ´ëÈÇü º¤ÅÍ ±×·¡ÇȽº ¹æ½ÄÀ¸·Î 3Â÷¿ø µ¥ÀÌÅ͸¦ Ç¥ÇöÇÏ·Á´Â ÅØ½ºÆ® ±â¹ÝÀÇ Ç¥ÁØ ÆÄÀÏ Æ÷¸ËÀÌ´Ù. ¹°Ã¼ÀÇ Ç¥ÇöÀº 3Â÷¿ø Æú¸®°ïÀÇ Á¤Á¡(vertex), º¯(edge) µîÀ¸·Î ±¸¼ºµÇ°í, °¢°¢¿¡ ´ëÇØ¼ »ö»ó, 2Â÷¿ø ÅØ½ºÃ³, Åõ¸íµµ µîÀ» ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ À̵鿡 URLÀ» ¿¬°áÇØ¼ ƯÁ¤ À¥ÆäÀÌÁö¸¦ ¿¬°áÇØ µÎ°Å³ª, ´Ù¸¥ VRML ÆÄÀÏÀ» °¡Á®¿Ã ¼öµµ ÀÖ´Ù. ¾Ö´Ï¸ÞÀ̼Ç, »ç¿îµå, µ¿¿µ»ó µîÀÇ ±¸¼º ¿ä¼ÒµéÀ» »ç¿ëÀÚÀÇ ÀÎÅÍ·¢¼ÇÀ̳ª, ŸÀÌ¸Ó µîÀÇ ¿ÜºÎ À̺¥Æ®¿Í ¿¬°áÇÒ ¼ö ÀÖ´Ù. °æ¿ì¿¡ µû¶ó¼´Â Java ÇÁ·Î±×·¡¹Ö ¾ð¾î³ª, ECMAScript(¶Ç´Â JavaScript)¿Í °°Àº ½ºÅ©¸³Æ® ¾ð¾î¸¦ VRML ÆÄÀÏ¿¡ Á÷Á¢ ³ÖÀ» ¼öµµ ÀÖ´Ù.
web Ç¥ÁØÀÇ ¹ßÀü¿¡ µû¶ó, 2008³â¿¡ XML(Extensible Markup Language) Ç¥ÁØÀÌ ¹ßÇ¥µÇ¾ú´Ù[2]. ÀÌ¿¡ µû¶ó, XML Ç¥ÁØ¿¡ µû¶ó 3D ±×·¡ÇȽº¸¦ Ç¥ÇöÇÏ´Â ¹æ¹ýÀÌ ¿ä±¸µÇ¾ú°í, 2010³â¿¡ X3D°¡ »õ·Î¿î Ç¥ÁØÀ¸·Î ¹ßÇ¥µÇ¾ú´Ù[3]. X3D´Â ±â´ÉÀûÀ¸·Î´Â VRML¿¡ CAD, H-Anim, NURBS µîÀÇ ´Ù¾çÇÑ Ãß°¡ ±â´É(extension)µéÀ» »õ·Î µµÀÔÇÏ¿´´Ù.
Ç¥ÁØÈ ÁøÇàÇöȲ
X3D´Â ÇöÀç Web3D ÄÁ¼Ò½Ã¾ö¿¡¼ Ç¥ÁØÈ ¾÷¹«¸¦ ´ã´çÇϰí ÀÖÁö¸¸, ISO¿ÍÀÇ Çù¾à¿¡ µû¶ó, Web3D¿¡¼ ½ÂÀÎÇÑ X3D Ç¥ÁØÀº °ÅÀÇ ±×´ë·Î ISO SC24 WG6ÀÇ Ç¥Áع®¼·Î äÅõǴ »óȲÀÌ´Ù. X3DÀÇ ÃÖÃÊ ¼³°è´Â ³î¶ø°Ôµµ 2004³â¿¡ abstract specification ÇüÅ·ΠISO/IEC 19775 Ç¥ÁØÀ¸·Î äÅõǾú´Ù. X3DÀÇ XML ¹æ½Ä ¶Ç´Â VRML ¹æ½Ä ÀÎÄÚµùÀº ISO/IEC 19776 Ç¥ÁØÀ¸·Î äÅõǾî ÀÖ´Ù.
X3D Ç¥ÁØÀº Á¦Á¤µÈ ÀÌÈÄ, ²ÙÁØÇÑ ¾÷µ¥ÀÌÆ®¸¦ °ÅÃÄ ¿Ô°í, 2014³â 8¿ù¿¡ ¹Ì±¹ ½Ã¾ÖƲ¿¡¼ °³ÃÖµÈ ISO/IEC SC24 Á¤±â ÃÑȸ¿¡¼µµ »õ·Î¿î ³»¿ëµéÀÌ Ãß°¡µÇ¾ú´Ù. ÇöÀç X3D Ç¥ÁØÀº ÀüüÀûÀÎ ±¸Á¶¿Í API¸¦ Á¤ÀÇÇÏ´Â ISO/IEC 19775 ½Ã¸®Á ´ÙÀ½°ú °°ÀÌ Á¦°øÇÑ´Ù.
• ISO/IEC 19775-1:2013, X3D Architecture and Base Components (version 3.3)
• ISO/IEC 19775-2:2010 (DIS), X3D Abstract Scene Access Interface
ÀÎÄÚµù ¹æ½Ä¿¡ ´ëÇØ¼´Â ´ÙÀ½ÀÇ 3°¡Áö Ç¥ÁØÀÌ Á¦°øµÇ¾î, µ¿ÀÏÇÑ ³»¿ëÀ» XML, VRML, compressed binary ÇüÅ·ΠǥÇöÇÒ ¼ö ÀÖ´Ù.
• ISO/IEC 19776-1 (DIS), X3D XML Encodings
• ISO/IEC 19776-2 (DIS), X3D Classic VRML Encoding
• ISO/IEC 19776-3 (DIS), X3D Compressed Binary Encoding
¶ÇÇÑ, ÇÁ·Î±×·¡¹Ö ¾ð¾î¿ÍÀÇ ÀÎÅÍÆäÀ̽ºµµ Ãß°¡µÇ¾î¼, ´ÙÀ½°ú °°ÀÌ, JavaScript ¶Ç´Â Java¿ÍÀÇ ¿¬µ¿ÀÌ °¡´ÉÇÏ´Ù.
• ISO/IEC 19777-1:2006 X3D Language Bindings: ECMAScript
• ISO/IEC 19777-2:2006 X3D Language Bindings: Java
X3D´Â web ȯ°æ¿¡¼ÀÇ °í±Þ 3Â÷¿ø ¹°Ã¼ Á¤ÀÇ¿¡¼´Â È®°íÇÑ ÁöÀ§¸¦ ȹµæÇß°í, ÇöÀç·Î½á´Â ´çºÐ°£ ±× ÁöÀ§¸¦ °è¼Ó ´©¸± °ÍÀ¸·Î ¿¹»óµÈ´Ù. ¹°·Ð ÀúÂ÷¿øÀÇ 3Â÷¿ø ±×·¡ÇȽº 󸮸¦ À§Çؼ´Â GPU¿Í °°Àº »õ·Î¿î Çϵå¿þ¾î¿¡ ´ëÇÑ Ç¥ÁØÀ¸·Î WebGL µîÀÇ ¹æ½ÄÀÌ Á¦¾ÈµÇ°í ÀÖÁö¸¸, »óÀ§ ·¹º§ÀÇ ÀÎÅÍÆäÀ̽º·Î´Â ºÎÁ·ÇÑ ¸éÀÌ ¸¹Àº °ÍÀÌ »ç½ÇÀÌ´Ù.
ÇâÈÄ ÃßÁø ¹æÇâ
ÇöÀç web ȯ°æ¿¡¼´Â GPU ·¹º§ÀÇ WebGL Ç¥ÁØ ¶Ç´Â Open Scene Graph Ç¥ÁØÀ» »óÀ§ ·¹º§ÀÇ X3D Ç¥Áذú °áÇÕÇÏ·Á´Â ½Ãµµ°¡ ÀÖ´Ù. Declarative 3D for the Web ±×·ì¿¡¼´Â W3C Ç¥ÁØ ½ºÅà »ó¿¡¼ 3Â÷¿ø ±×·¡ÇȽº ±â´ÉÀ» ¾î¶»°Ô Ãß°¡ÇÒ °ÍÀÎÁö¸¦ ¸ð»öÇϸé¼, WebGL°ú X3D ¸ðµÎ¸¦ ÇÕÄ¡´Â ¹æ¾ÈÀ» ¿¬±¸ ÁßÀÌ´Ù[4]. ¶ÇÇÑ, X3DOM¿¡¼´Â X3DÀÇ ¿ä¼ÒµéÀ» HTML5 DOM ±¸Á¶¿¡ ³Ö°íÀÚ Çϴµ¥, ÀÌ·¸°Ô µÇ¸é, HTML5 DOM¿¡ ±âÃÊÇÑ WebGL°úÀÇ °ü°è¸¦ º¸¿ÏÇÒ Çʿ䰡 »ý±ä´Ù[5]. ÇâÈÄÀÇ web ºÐ¾ß¿¡¼´Â 3Â÷¿ø ±×·¡ÇȽºÀÇ Ãâ·ÂÀ» À§ÇØ, ´Ù¾çÇÑ Ç¥ÁصéÀ» °áÇÕ½ÃŰ´Â Ãß¼¼·Î °¥ °ÍÀÌ ºÐ¸íÇÏ´Ù.
Âü°í¹®Çå
[1] ISO/IEC, ISO/IEC 14772-1:1997, VRML 97 Functional Specification, 1997.
[2] W3C, Extensible Markup Language (XML) 1.0, 5th Ed., 2008.
[3] ISO/IEC, ISO/IEC 19775-1:2013, X3D Architecture and Base Components (version 3.3), 2013.
[4] Declarative 3D for the Web, http://www.w3.org/community/declarative3d/
[5] X3DOM, http://www.x3dom.org/