글TF
glTF![]() | |
파일 이름 확장명 | .gltf, .glb |
---|---|
인터넷 미디어 유형 | model/gltf+json, model/gltf-tf-tf |
개발자 | 크로노스 그룹 |
초기 릴리즈 | 2015년 10월 19일;[1] | 전
최신 릴리즈 | 2.0.1 2021년 10월 11일; 전[2] |
형식 유형 | 3D 컴퓨터 그래픽스 |
웹사이트 | khronos |
glTF(Derivative Short form of Graphics Language Transmission Format 또는 GL Transmission Format)는 3차원 장면과 모델을 위한 표준 파일 형식이다.glTF 파일은 .gltf(JSON/ASCII) 또는 .glb(이진)의 두 가지 가능한 파일 확장자 중 하나를 사용한다..gltf 및 .glb 파일 모두 외부 바이너리와 텍스처 리소스를 참조할 수 있다.또는 이진 데이터 버퍼(.gltf 파일에 base64로 인코딩된 문자열 또는 .glb 파일에 원시 바이트 배열로)를 직접 내장하여 두 형식을 모두 포함할 수 있다.[3][4][5]크로노스 그룹이 개발하고 유지하는 개방형 표준으로 3D 모델 기하학, 외관, 장면 그래프 계층 구조, 애니메이션을 지원한다.[4]앱에 의한 파일 크기 및 런타임 처리를 최소화하면서 3D 자산 전달을 위한 효율적이고 상호운용 가능한 포맷을 목표로 한다.[4][6]그만큼 크리에이터들은 3D의 JPEG라고 표현했다.[4]
릴리스
glTF 1.0
파일 형식은 COLLADA 워킹 그룹의 멤버들에 의해 2012년에 고안되었다.[7]크로노스는 SIGGRAP 2012에서 당시 WebGL TF(Transmissions Format, WebGL TF)라고 불렸던 glTF의 데모를 선보였다.[5]2015년 10월 19일, glTF 1.0 사양이 공개되었다.[5]
오큘러스는 2016년 시그그래프(SIGGRAPH)에서 난자 형식과 유사하다는 이유로 glTF 채택을 발표했다.[6][8]마이크로소프트는 2016년 10월 크로노스의 3D Formats 워킹그룹에 합류해 glTF에 협력했다.[9]
glTF 2.0
두 번째 버전인 glTF 2.0은 2017년 6월 출시됐으며 버전 1.0부터 파일 형식을 전면 개편한 것으로 대부분의 툴이 2.0 버전을 채택하고 있다.[4][5]물리 기반 렌더링(PBR)이 추가되어 glTF 1.0에서 사용된 WebGL 셰이더를 대체하였다.[10]그 외 업그레이드에는 안면 애니메이션과 같은 기술에 대한 희박한 접근자 및 형태 대상, 더 빠른 인덱스 기반 액세스를 위해 최상위 수준의 glTF 객체 특성을 어레이로 대체하는 등 코너 케이스나 성능에 대한 스키마 수정 및 파괴 변경 등이 포함된다.[11]Unity와[12] 통합 멀티엔진 뷰어/검증기에서 수출입 작업이 진행 중이다.[13]
2017년 3월 3일 마이크로소프트는 자사 제품 라인 전반에 걸쳐 페인트 3D, 3D 뷰어, 리믹스 3D, 바빌론.js, 마이크로소프트 오피스 등 3D 자산 형식으로 glTF 2.0을 사용한다고 발표했다.스케치팹도 glTF 2.0 지원을 발표했다.2019년 현재, UX3D, 스케치팹, 페이스북, 마이크로소프트, 오큘러스, 구글, 어도비, 박스, 터보 스퀴드, 언리얼엔진 등의 기업에서 glTF와 GLB 포맷을 사용하고 지원하고 있다.[6][5][14][15]이 포맷은 Autodesk Maya, Autodesk 3ds Max, Poly와 같은 모델링 소프트웨어와 통합되어 증강현실을 위한 중요한 표준으로 주목되어 왔다.[16]
2020년 2월 스미스소니언 협회는 오픈 액세스 이니셔티브를 출범시켜 약 280만 개의 2D 영상과 3D 모델을 공개 도메인에 공개하고 3D 모델을 glTF로 제공했다.[17]
확장
glTF 파일은 .gltf 또는 .glb 확장자를 사용한다.PBR 확장은 실제 물체의 물리적 특성을 모델링하여 개발자가 물체의 실제 재료에 해당하는 현실적인 3D 자산을 만들 수 있도록 한다.새로운 PBR 확장이 출시됨에 따라 glTF 프레임워크 내에서 PBR 기능을 지속적으로 확장하여 보다 광범위한 장면과 객체를 3D 자산으로 현실성 있게 렌더링할 수 있게 되었다.[18][19]
범용 텍스처 압축을 위한 KTX 2.0 확장은 glTF 형식의 3D 모델을 고도로 압축하고 기본적으로 지원되는 텍스처 형식을 사용할 수 있어 파일 크기를 줄이고 렌더링 속도를 높일 수 있다.[20]
Draco는 3D 파일의 크기를 줄이기 위해 3D 메쉬를 압축 및 압축 해제하는 메쉬 압축용 glTF 확장자다.정점 속성, 정규, 색상, 텍스처 좌표를 압축한다.[21]
GLB
GLB 파일 형식은 질감을 외부 이미지로 참조하는 대신 포함하는 2진법 형태의 glTF이다.GLB는 glTF 1.0의 연장선상에서 도입되어 glTF 2.0에 직접 편입되었다.[4]
파생형식
2015년 8월 10일, 현재 제안된 OGC 커뮤니티 표준인 3D 타일은 대규모 이기종 3D 지리공간 데이터셋을 스트리밍하기 위한 공간 데이터 구조, 메타데이터, 선언적 스타일링을 추가하기 위해 glTF를 기반으로 구축되었다.[22][23][24]VR 모델 포맷인 VRM은 .glb 포맷으로 구축된다.[25]3D 휴머노이드 아바타 사양과 파일 형식이다.[26]
소프트웨어 생태계
glTF 샘플 뷰어는 Khronos가 glTF 생태계의 일부로서 glTF 자산을 검증하는 Validator와 함께 유지한다.[27]
glTF 로더는 PlayCanvas, Three.js, Bylon.js, Cesium, PEX, Xeogl, A-Frame 등 오픈소스 WebGL 엔진에 탑재돼 있다.고도트 게임 엔진도 glTF 형식을 지지하고 추천한다.[28][29]
COLADA, FBX, OBJ에서 오픈 소스 glTF 컨버터를 이용할 수 있다.Assimp는 glTF를 수출입할 수 있다.
또한 Blender, Vectary, Autodesk 3ds Max(Berge3D 내보내기[30] 도구 사용), Autodesk Maya(바빌론.js 내보내기[31] 도구 사용), Modo, Houdini,[32] Painte 3D, Material Paintor 등 다양한 3D 편집기에서 직접 파일을 내보낼 수도 있다.[33]
glTF 파일은 게슈탈토르에서 직접 편집할 수 있다.
자바스크립트, Node.js, C++, C#, 자바, Go, Rust, Haxe, Ada, TypeScript 등 프로그래밍 언어에 오픈소스 glTF 유틸리티 라이브러리를 이용할 수 있다.
오픈 소스 glTF 검증자는 3D 모델이 glTF 규격을 준수하는지 검증할 수 있다.[34]
참고 항목
참조
- ^ "Khronos Finalizes glTF 1.0 Specification - Khronos Group Press Release".
- ^ "KhronosGroup/glTF".
- ^ "glTF 2.0". blender.org. Retrieved 29 October 2020.
- ^ a b c d e f "glTF (GL Transmission Format) Family". loc.gov. Retrieved 29 October 2020.
- ^ a b c d e Simkin, Aliaksei. "Behind the scene of 3D Magic". globant.com. Retrieved 29 October 2020.
- ^ a b c Hamilton, Ian. "Oculus Executive Calls For 3D Equivalent Of JPEG To Build The Metaverse". uploadvr.com. Retrieved 29 October 2020.
- ^ Houston, Ben. "glTF: Everything You Need to Know". threekit.com. Retrieved 29 October 2020.
- ^ "Update" (PDF). www.khronos.org. 2016. Retrieved 2019-06-19.
- ^ "Bringing 3D to everyone through open standards". Windows Developer Blog. 28 October 2016.
- ^ "glTF 2.0". augmania.com. Retrieved 29 October 2020.
- ^ "glTF 2.0 syntax changes and JSON encoding restrictions · Issue #831 · KhronosGroup/glTF". GitHub. Retrieved 2017-09-26.
- ^ UnityGLTF: Runtime GLTF Loader for Unity3D, The Khronos Group, 2017-09-26, retrieved 2017-09-26
- ^ "Web-based client-side preview and validation · Issue #1081 · KhronosGroup/glTF". GitHub. Retrieved 2017-09-26.
- ^ "Introducing new APIs to improve augmented reality development with ARCore". Google Developers Blog. Retrieved 2018-09-28.
- ^ Haslam, Oliver. "Adobe's new Aero app lets you create AR experiences on iPhone and iPad". imore.com. Retrieved 29 October 2020.
- ^ "glTF is a huge deal for VR + AR". worldviz.com. Retrieved 29 October 2020.
- ^ Burns, Chris. "Smithsonian Open Access initiative releases loads of 3D models to public domain". slashgear.com. Retrieved 29 October 2020.
- ^ "The glTF ecosystem adds further PBR realism for web renders". Develop 3D. 3 December 2020. Retrieved 20 December 2021.
- ^ "New glTF Extensions for 3D Asset Visual Realism". Embedded Computing. 16 July 2021. Retrieved 20 December 2021.
- ^ "Khronos KTX 2.0 Ratified: Compress Your Textures with RapidCompact". Rapid Compact. 21 April 2021. Retrieved 20 December 2021.
- ^ "Draco Compressed Meshes with glTF and 3D Tiles". Cesium. 9 April 2018. Retrieved 20 December 2021.
- ^ "Cesium 3D Tiles".
- ^ "OGC is considering a proposed work item for 3D Tiles as a Community Standard".
- ^ "3D Tiles Community Standards Justification".
- ^ "VRM specification". github.com. Retrieved 29 October 2020.
- ^ "VRM" (PDF). khronos.org. Retrieved 29 October 2020.
- ^ "Khronos 3D Viewer Program". Graphic Speak. 16 June 2021. Retrieved 20 December 2021.
- ^ "Importing 3D scenes". Godot Engine documentation. Retrieved 2021-09-27.
- ^ Engine, Godot. "Godot Engine - Why we should all support glTF 2.0 as THE standard asset exchange format for game engines". Godot Engine. Retrieved 2021-09-27.
- ^ "How to make Facebook 3D posts". 3D Print Tech Design. Retrieved 2018-05-07.
- ^ "Export Maya scene as glTF". Retrieved 2021-02-01.
- ^ "glTF ROP output driver". Side FX.
- ^ "GLB Tutorials". Facebook Developers. Retrieved May 7, 2018.
- ^ "Overview" (PDF). www.khronos.org. Retrieved 2019-06-19.