three.js GLTFExporter
2023-02-16 17:51 更新
glTF 2.0 的出口商。
glTF(GL 传输格式)是一种用于高效交付和加载 3D 内容的开放格式规范。资产可以 JSON (.gltf) 或二进制 (.glb) 格式提供。外部文件存储纹理(.jpg、.png)和其他二进制数据(.bin)。 glTF 资产可以提供一个或多个场景,包括网格、材质、纹理、皮肤、骨架、变形目标、动画、灯光和/或相机。
扩展
GLTFExporter 支持以下内容 glTF 2.0 extensions:
- KHR_lights_punctual
- KHR_materials_unlit
- KHR_texture_transform
外部用户插件支持以下 glTF 2.0 扩展
代码示例
// Instantiate a exporter
const exporter = new GLTFExporter();
// Parse the input and generate the glTF output
exporter.parse(
scene,
// called when the gltf has been generated
function ( gltf ) {
console.log( gltf );
downloadJSON( gltf );
},
// called when there is an error in the generation
function ( error ) {
console.log( 'An error happened' );
},
options
);
例子
构造函数
GLTFExporter()
创建一个新的 GLTFExporter。
方法
.parse ( input : Object3D, onCompleted : Function, onError : Function, options : Object ) : undefined
input — 要导出的场景或对象。有效选项:
- 导出场景
exporter.parse( scene1, ... )
exporter.parse( [ scene1, scene2 ], ... )
exporter.parse( object1, ... )
exporter.parse( [ object1, object2 ], ... )
exporter.parse( [ scene1, object1, object2, scene2 ], ... )
onCompleted — 将在导出完成时调用。参数将是生成的 glTF JSON 或二进制 ArrayBuffer。
onError — 如果在 gltf 生成期间有任何错误,将被调用。
options — 导出选项
- trs - bool. 导出位置、旋转和缩放而不是每个节点的矩阵。默认为假
- onlyVisible - bool. 仅导出可见对象。默认为真。
- binary - bool. 以二进制 (.glb) 格式导出,返回一个 ArrayBuffer。默认为假。
- maxTextureSize - int. 将图像的最大尺寸(宽度和高度)限制为给定值。默认为无穷大。
- animations - Array<AnimationClip>. 要包含在导出中的动画列表。
- forceIndices - bool. 为非索引几何生成索引并与它们一起导出。默认为假。
- includeCustomExtensions - bool. 导出在对象的 userData.gltfExtensions 属性上定义的自定义 glTF 扩展。默认为假。
从输入(场景或对象)生成 .gltf (JSON) 或 .glb(二进制)输出
源码
examples/jsm/exporters/GLTFExporter.js
以上内容是否对您有帮助:
更多建议: