总目录 >> threejs入门进阶到实战(目前已更新入门篇、基础篇和进阶篇)

原文: https://github.com/KhronosGroup/glTF-Tutorials/blob/master/gltfTutorial/gltfTutorial_001_Introduction.md
越来越多的应用程序和服务是基于3D内容的。在线商店提供具有3D预览的产品。博物馆通过三维扫描将其文物数字化,并允许游客在虚拟画廊中探索其收藏品。城市规划者使用三维城市模型进行城市规划和信息可视化。教育工作者创造了交互式的、动画的人体三维模型。其中许多应用程序直接在web浏览器中运行,因为所有现代浏览器都支持使用WebGL进行高效渲染。

各种应用对3D内容的需求与日俱增。在许多情况下,3D内容必须通过web传输,并且必须在客户端高效地呈现。但到目前为止,在运行时应用程序中,3D内容的创建和3D内容的高效渲染之间还存在差距。

3D 内容管道(content pipelines)

在客户端应用程序中呈现的三维内容来自不同的软件,并以不同的文件格式存储。维基百科上的三维图形文件格式列表显示有70多种不同的三维数据文件格式,服务于不同的目的和应用案例。
例如,可以使用3D扫描器获得原始3D数据。这些扫描仪通常提供单个对象的几何数据,这些数据存储在OBJ、PLY或STL文件中。这些文件格式不包含有关场景结构或如何被渲染的信息。
更复杂的三维场景可以使用创作工具创建。这些工具允许用户编辑场景的结构、灯光设置、相机、动画,以及场景中出现的三维几何体。应用程序以自己的自定义文件格式存储这些信息。例如,Blender将场景存储在.blend文件中,LightWave3D使用.lws文件格式,3ds Max使用.Max文件格式,而Maya使用.ma文件。
为了呈现这样的3D内容,运行时应用程序必须能够读取不同的输入文件格式。必须分析场景结构,并将三维几何数据转换为图形API所需的格式。三维数据必须传输到图形卡存储器中,然后才能用图形API调用序列描述渲染过程。因此,每个运行时应用程序必须为支持的所有文件格式创建导入(importer)程序、加载程序(loader)或转换(loader),如图1b所示。

glTF: 3D 场景的传输格式

glTF的目标是以适合运行时应用程序的3D内容标准。当前存在的文件格式并不能满足场景传输条件,原因是有些不包含任何场景信息,而只包含几何数据;而有些则是艺术创作的3d格式,尽可能多地保留有关三维场景的信息,从而生成通常很大、复杂的文件,从而很难分析。除此以外,还必须对几何数据进行预处理才能在客户端渲染。
现有的文件格式都不是为在web上高效传输及高效渲染而设计的。但glTF并不是“另一种文件格式”,而是对3D场景的传输格式的定义:
• 场景结构是用JSON描述的,它非常紧凑,易于解析。
• 对象的3D数据以一种可由通用图形api直接使用的形式存储,因此没有解码或预处理3D数据的开销。
越来越多内容创作工具(软件)现在支持导出glTF。越来越多的客户端应用程序能够使用和呈现glTF。其中一些应用程序如图1a所示,因此glTF可能有助于弥补内容创作和渲染之间的差距,如图1c所示。


越来越多的内容创建工具将能够直接提供glTF。或者,可以使用Khronos glTF仓库中(repo)给出的开源代码,将其他文件格式转换为glTF格式。例如,几乎所有创作应用程序都可以以COLLADA格式导出其场景。因此COLLADA2GLTF工具可以用于将场景和模型从转换为glTF。OBJ文件可以使用obj2gltf转换为glTF。对于其他文件格式,可以使用自定义转换器创建glTF,从而使3D内容可用于各种运行时应用程序。

GLTF格式学习:glTF介绍( 基于WebGL相关推荐

  1. Mars3D开发基础学习:glTF小模型

    glTF全称是 Graphics Language Transmission Format (图形语言传输格式),是一种针对GL(WebGL,OpenGL ES以及OpenGL)接口的运行时资产传递格 ...

  2. STEP、IGES、STL各类3D模型转换为适用Web的glb,gltf格式并压缩

    STEP.IGES.STL各类3D模型转换为适用Web的glb,gltf格式并压缩 格式介绍 STEP和IGES格式 STL格式 GLTF格式 输出GLTF格式的思路 环境安装 实现转换(方法1) p ...

  3. unity 导入gltf_Unity3D使用glTF格式三维文件,glTF在unity中如何呈现,glTF导入unity

    1,什么是glTF文件? 一直在研究如何优化检查三维模型的问内容,单独从三维文件来说,有很多可以优化规范的内容,最近在看到有一个压缩格式,话说这个方式是要做一个三维文件的通用格式,比如图片的jpg格式 ...

  4. Mars3D(含Cesium)数据及服务篇:单体小模型转为glTF格式

    glTF是用于小场景的三维模型. Cesium支持包含关键帧(key-frame)动画.骨骼(skinning)动画 的glTF格式的三维模型,并且支持模型节点(node)的拾取. glTF是 Khr ...

  5. glTF格式初步了解

    glTF格式初步了解 近期看到Qt 3D的进展.偶然了解到了一种新的格式:glTF格式.这样的格式据说比现有的3D格式更加符合OpenGL应用的须要.这引起了我的好奇.于是我在Qt 3D的外部链接中找 ...

  6. glTF格式模型导出方式

    一.什么是glTF glTF是一种3D内容的格式标准: glTF的设计是面向实时渲染应用的,尽量提供可以直接传输给图形API的数据形式,不再需要二次转换: 通俗来讲,我们可以理解他为3D领域的JPEG ...

  7. 3dsmax导出html,3dsmax导出gltf格式插件

    [实例简介] 3dsmax导出gltf格式插件,里面包括插件,插件使用说明,插件功能介绍: [实例截图] [核心代码] 3dsmx_to_gltf格式插件 └── 3dsMax to gltf 2 ├ ...

  8. 3DMAX模型转换为gltf格式总结与问题汇总

    众所周知,cesium平台所支持的三维模型格式为3dtiles和gltf,这两种格式都是开源的.对于建的的精模如果数据量不是很大的话(单个文件在2G以内),可以使用gltf格式,但是在模型转换为glt ...

  9. three.js使用外部模型创建动画,使用GLTF格式文件动画创建动画(vue中使用three.js71)

    使用GLTF格式文件动画创建动画 1.demo效果 2. 实现要点 2.1 加载GLTF文件 2.2 创建AnimationMixer动画 2.3 render中更新动画 3. demo代码 1.de ...

最新文章

  1. 如何读懂MEMS惯性器件的精度指标
  2. 服务器邮箱群发,独立IP独立账号日发万封的邮件群发服务器
  3. 今日Google图标——Frank Lloyd Wright诞辰138周年
  4. 【转】使用ssh-copy-id 快速的配置免密登录
  5. 你真的知道 NoSuchMethodError 发生原因和解决办法吗
  6. rsync 3.1.1源代码编译安装配置
  7. camera android 版本,Camera for Android
  8. matlab制作强光效果代码,自己动手做一个雷达PPI显示器的动态效果图(附Matlab代码)...
  9. eb8000软件怎样上传_威纶通触摸屏 如何上传程序 到电脑需要怎么处理
  10. 考研英语 词根词缀单词1-10
  11. Linux 设备树 status 详解
  12. [流行偶像]分析王菲唱腔的精辟文字(转载)
  13. 计算机科技手抄报内容,科技手抄报内容-科技在我身边
  14. VirtualBox+Vagrant快速搭建linux虚拟环境
  15. C++17之省略不必要的拷贝Copy Elision
  16. XP下安装IIS6.0的办法
  17. KSImageNamed 安装后无效解决方法 亲测有用
  18. 缺陷修改实践——replace函数的运用|思考?
  19. 【vscode】 远程:Unauthorized client refused: auth mismatch)
  20. 新近诗作 - 我在找寻什么

热门文章

  1. python主题更改_IDLE怎么将主题修改成Darcula样式?
  2. python3爬取新浪微博_Python3爬取新浪微博头条
  3. Docker入门笔记(1)
  4. 1. 在 SAP ABAP 事物码 SEGW 里创建 SAP OData 项目
  5. 养殖专家告诉你在农村养啥赚钱
  6. Anima2D动画简单理解
  7. 用php求圆柱圆锥的面积,认识圆锥体a href=http://ruiwen.com/friend/list.php(教师中心专稿)/a...
  8. C#图片压缩,等比例缩小
  9. 2020NPDP产品经理认证考试备考心得-郑沂
  10. #535. 「NOIP2018」填数游戏