GLTF模型
glTF(GL传输格式)是Khronos的一个开放项目,它为3D资产提供了一种通用的、可扩展的格式,这种格式既高效又与现代web技术高度互操作。
The
gltf-model
组件使用glTF (
.gltf
或
.glb
)文件来加载模型数据。
请注意,glTF是一个相当新的规范,采用率仍在增长。规范工作可以阅读: three.js glTF loader。
目录
为什么使用glTF?
陈旧的obj格式只支持顶点、法线、纹理坐标和基本材质,而glTF提供了一组更强大的功能。除上述所有内容外,glTF还提供:
- 层级对象
- 场景信息(光源,相机)
- 骨骼结构与动画
- 更可靠的材质和着色器
对于没有动画的简单模型,OBJ仍然是一个常见而可靠的选择。
和COLLADA相比,支持的功能非常相似。然而,由于glTF侧重于提供“传输格式”而不是编辑器格式,因此它与web技术的互操作性更强。类似地,.PSD(Adobe Photoshop)格式有助于编辑二维图像,但图像会转换为.JPG格式以供在web上使用。同样,glTF是一种更简单的传输3D资源的方式,同时呈现相同的结果。
简而言之,glTF模型比COLLADA模型更可靠地与A-Frame一起工作。
例子
通过指定src
所指向的glTF文件来加载模型。
<a-scene> |
数值
类型 | 描述 |
---|---|
selector | 指向一个<a-asset-item> 的Selector |
string |
url() -glTF文件的封闭路径 |
Events
事件名 | 描述 |
---|---|
model-loaded | glTF模型已加载到场景中。 |
内联加载
或者,通过直接在url()
中指定路径。但是,场景在渲染之前不会等待资源加载。
|
更多资源
glTF格式是相当新的,很少有编辑器会直接导出.gltf
文件。相反,可以使用一些既有的转换器:
请访问 官方glTF规范来获取可用功能、社区资源和贡献方式。