glTF格式初步了解

  • Post author:
  • Post category:其他



glTF格式初步了解



最近看到

Qt 3D


的进展,偶然了解到了一种新的格式:


glTF


格式。这种格式据说比现有的


3D


格式更加符合


OpenGL


应用的需要,这引起了我的好奇,于是我在


Qt 3D


的外部链接中找到了有关


glTF


的相关链接。






上海萌梦信息科技有限公司(微博:

http://weibo.com/qtdream


)原创文章,首发地址:



http://qtdream.com/topic/140


。欢迎同行前来探讨。



glTF

的官网介绍在




这里



。它介绍了

glTF


的一些特性、发起者以及应用情景。官网中,介绍了


glTF


是一种可以减少


3D


格式中与渲染无关的冗余数据并且在更加适合


OpenGL


簇加载的一种


3D


文件格式。


glTF


的提出是源自于


3D


工业和媒体发展的过程中,对


3D


格式统一化的急迫需求。官网的一张图片可以简单地说明这一点:






也就是说,

glTF


立志成为音频界的


mp3


、视频界的


H.264


,图片界的


jpeg







在官网的截图上我们看到,在没有

glTF


的时候,大家都要花很长的的时间来处理模型的载入。很多的游戏引擎或者工控渲染引擎,都使用的是插件的方式来载入各种格式的模型。可是,各种格式的模型都包含了很多无关的信息。比如说


.blend


格式包含了场景、灯光、摄像机信息,也包含了


blender


的元信息,这样在载入的时候会浪费很多的载入时间。这需要一次模型的再加工工序(这道工序是否需要,有待观察)






当有

glTF


之后,可以将模型再加工成为


glTF


,这样渲染的程序只需要支持


glTF


格式就可以很顺利地处理各种情况了。







给大家简单介绍了一下

glTF


这个格式,下面我说一下我对


glTF


这个新的


3D


格式的看法。





1、



为什么要有

glTF


这个格式的提出呢?




首先,一切新的事物的发明都是为了为了解决以前不方便的情况。就

glTF


格式而言,虽然以前有很多


3D


格式,但是各种


3D


模型渲染程序都要处理很多种的格式。对于那些对载入格式不是那么重要的软件(不是那些类似“格式工厂”那样的软件),可以显著减少代码量,所以也有人说,最大的受益者是那些对程序大小敏感的


3D Web


渲染引擎,只需要很少的代码就可以顺利地载入各种模型了。此外,


glTF


是对近二十年来各种


3D


格式的总结,使用最优的数据结构,来保证最大的兼容性以及可伸缩性。这就好比是本世纪初


xml


的提出。


glTF


使用


json


格式进行描述,也可以编译成二进制的内容:


bglTF





glTF


可以包括场景、摄像机、动画等,也可以包括网格、材质、纹理,甚至包括了渲染技术(


technique


)、着色器以及着色器程序。同时由于


json


格式的特点,它支持预留一般以及特定供应商的扩展。






2、



为什么要提出一个新的格式而不是发展现有的格式比如说

collada







我认为这个是对

3D


通用格式的解释权的一种争夺战。大家已经知道


OpenGL


已经成为事实上的工业渲染标准,作为现有


OpenGL


的维护组织,


khronos


也迫切希望在


3D


格式上进行一次统一,让


glTF


成为类似


jpeg





mp3


等常见的格式,


khronos


也有威望,可以让行业的大厂们协同一起来参与新标准的制定。对于


collada


这样基于


xml


格式的竞争对手,


glTF


的提出给大家提供了一个新的思路以及解决方案。就好像


json


当初没有提出的时候,大家都会倾向使用


xml


来描述通用的可交换的数据格式,可是随着


json


的发展,


xml


不再是一枝独秀,逐渐形成了两强的局面,大家也有了更多的选择。上图我们可以看到,我们可以利用现有的格式转换工具很轻松地将


collada


格式转换为


glTF


格式,而


glTF


对于


OpenGL


的兼容性,我想会因


khronos


而变得更好。





版权声明:本文为jiangcaiyang123原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。