3D 파일의 종류

joohyo1·2024년 1월 13일

3D 모델은 이미지나 비디오처럼 웹 브라우저에 img>나 video처럼 src 특성만 지정하는 형태로 바로 사용하는 것이 불가능하다. 3D 모델을 WebGL을 통해 렌더링하려면 canvas 태그를 사용해 WebGL 컨텍스트를 받아와 렌더링하는 코드를 직접 작성할 필요가 있으며, 3D 모델 파일(glTF, FBX, OBJ 등) 또한 일종의 인코딩된 형태이기 때문에 실제 사용할 데이터를 받아오려면 파일을 로드하여 디코딩하는 과정을 거쳐야 한다. 이 과정은 Three.js나 Babylon.js와 같이 각종 3D 형식의 로드 및 디코딩을 지원하는 라이브러리를 사용하거나, View3D와 같은 3D 뷰어 컴포넌트를 활용하면 단순화할 수 있다.

또한 3D 모델은 일반적으로 다른 콘텐츠에 비해 파일 크기가 큰 편이고, 데이터를 스트리밍하여 받아오기도 어렵기 때문에 상대적으로 최적화가 더 필요한 편이다. 물론 3D 모델 간에도 상대적인 차이는 있다. 예를 들어 4K 비디오와 480p 동영상의 파일 크기가 다르듯이, 3D 모델도 어떻게 구성하느냐에 따라서 파일 크기가 천차만별일 수 있다.



glTF

texture와 binary파일을 별도로 분리하면서 포맷 자체는 json형식과 동일.
fbx에 비해 가볍다. 포맷이 json과 같기 때문에 자바스크립트 객체로 사용할 수 있기 때문에 웹에서 3D 오브젝트를 표현할 때 유용하게 사용된다.

FBX

Autodesk는 glTF의 상용화를 위해 자사가 개발한 FBX를 포기했다. 특히 glTF는 최근 3D업계의 이슈가 되고 있는 "리얼타임 랜더링"을 지원하는 PBR을 사용할 수 있다. 페이스북은 2018년부터 3D 뷰어에서 glTF포맷을 사용하고 있고, 향후 웹기반 VR, AR프로그램에서 glTF사용량이 더욱 증가할 전망이다.

references:
https://d2.naver.com/helloworld/6152907

profile
트라이 에브리띠이잉

0개의 댓글