GlTF

glTF(GL Transmission Format의 줄임말)는 3차원 장면과 모델을 표현하는 파일 포맷으로 JSON 표준에 기반하고 있다. 크로노스 그룹 (Khronos Group)의 3D Format 작업반에서 제정한 표준이며, HTML5DevConf 2016 행사에서 처음 발표되었다. 효율성과 상호 운용성을 강조한 파일 포맷으로서, 실행에 필요한 부하를 최소화 하도록 설계되었다.

역사 

2012년 3월, 크로노스 그룹은 COLLADA와 WebGL을 결합하는 작업을 시작하였다. Fabrice Robinet은 JSON 포맷에 기반한 효율적인 이진 파일을 사용하는 방식을 제안하였고, 2012년 SIGGRAPH에서 개최된 WebGL meetup 행사에서 Brandon Jones와 Fabrice Robinet 이 첫번째 glTF 관련 데모를 보여 주었다. 초기에는 WebGL Transmissions Format (WebGL TF)으로 불리었다.

2013년 3월, Cesium에서는 glTF 채택을 공식 발표하였고, 2017년 8월 10일 3D Tiles  로 OGC Community 표준으로 채택되었다. 이 표준은 glTF 기반으로서 위치 데이터 정보, 메타데이터, 스타일 데이터를 대규모의 3차원 지형 데이터 세트로 저장하고 이를 스트리밍하는데 활용하였다.

glTF 1.0 

2015년 10월 19일 glTF 1.0 표준이 공식 발표되었다.

glTF 2.0 
2017년 3월 3일 GDC WebGL/WebVR/glTF Meetup 행사에서 마이크로소프트는 glTF 2.0을 3차원 자산 표현 포맷으로 자신의 제품군인 Paint 3D, 3D Viewer, Remix 3D, Babylon.js, and Microsoft Office에 사용한다고 공식 발표하였다. 같은 행사에서 Microsoft, Fraunhofer와 University of Pennsylvania 학생들은 glTF 2.0 컨텐츠를 WebGL, DirectX, and Vulkan을 이용하여 렌더링하는 것을 시연하였다.

2017년 3월, 구글은 glTF 기능 확장판인 Draco를 발표하였다. 이를 통해 point cloud 데이터와 메쉬 데이터를 압축할 수 있다.

glTF 2.0 표준은 2017년 6월 5일, Web3D 2017 Conference 행사에서 공식 발표되었다.

GLB 

GLB는 glTF에서 사용하는 이진 파일 포맷으로 외부 이미지를 참조하는 대신 직접 텍스처를 포함하는데 사용된다. glb 파일은 Facebook 3D Posts에 사용된다.

소프트웨어 생태계 

glTF 로더는 오픈소스 프로젝트인 WebGL engines 과 Three.js, Babylon.js, Cesium, PEX, xeogl, 및 A-Frame을 통해 얻을 수 있다.

오픈소스 glTF 변환 도구는 COLLADA, FBX 및 OBJ를 지원하며. Assimp는 glTF 내보내기 기능을 제공한다..

glTF 파일은 다양한 3D 편집도구를 사용해 내보내기를 할 수 있다. 여기에는 Blender, Vectary, Autodesk 3ds Max (using Verge3D exporter), Autodesk Maya, Modo, Paint 3D, Substance Painter, CLO 3D  등이 포함된다.

오픈소스인 glTF utility libraries를 이용하면 자바스크립트, Node.js, C++, C#, 자바, Go, 러스트, Haxe, Ada, TypeScript와 같은 다양한 언어에서 glTF를 활용할 수 있다.

오픈소스로 제공되는 glTF validator를 사용하면 만들어진 파일이 glTF 표준에 적합한지를 테스틀 할 수 있다.

관련된 소프트웨어 도구 정보는 glTF GitHub repository 웹 페이지에서 얻을 수 있다.

각주

외부 링크 
 glTF 공식 웹페이지
 glTF 2.0 표준

크로스 플랫폼 소프트웨어
그래픽 표준
웹 개발
WebGL
3차원 그래픽스 파일 포맷