GLTFLoader

glTF: Graphics Library Transmission Format,即图形语言交换格式,它是3D里的jpeg,由 Khronos Group 管理 https://www.khronos.org/gltf/. GLTFLoader 除了加载 gltf 文件,还能加载 glb 文件。添加到场景时,添加的是 gltf.scene.

下面这个模型的大小为 2.43M

function GLTFLoader( ) { } var loader = new THREE.GLTFLoader(); loader.load('---.gltf', function( gltf ){ scene.add( gltf.scene ); }, function ( xhr ) { console.log( ( xhr.loaded / xhr.total * 100 ) + '% loaded' ); }, function ( error ) { console.log( 'An error happened: ' + error ); } );

Attributes

manager : LoadingManager

Default value : THREE.DefaultLoadingManager
Description : 类型

dracoLoader : Array

Default value : null
Description : Draco 加载器.

Methods

load( url, onLoad, onProgress, onError ) : null
url String 加载路径
onLoad Function 加载完成函数
onProgress Function 加载进程函数
onError Function 加载错误函数

加载URL以及调用回调函数onLoad.

parse( data ) :
data 待解析的数据

解析数据.

markDefs( ) :

在 json 中标记特殊节点/网格以进行有效的解析.

getDependency( type, index ) :
type String 类型
index Number 索引

使用异步请求指定的依赖项.

getDependencies( type ) :
type String 类型

使用异步请求所有指定的依赖项.

getMultiDependencies( types ) :
types Array 类型数组

使用异步请求多个指定的依赖项.

loadBuffer( bufferIndex ) :
bufferIndex Number 索引

加载缓存.

loadBufferView( bufferViewIndex ) :
bufferViewIndex Number 索引

加载缓冲视图.

loadAccessor( accessorIndex ) :
accessorIndex Number 索引

加载存取器.

loadTexture( textureIndex ) :
textureIndex Number 索引

加载纹理.

assignTexture( materialParams, mapName, mapDef ) :
materialParams Object 材质参数
mapName String 纹理名称
mapDef Object 纹理定义

异步为给定的材质参数指定纹理.

loadMaterial( materialIndex ) :
materialIndex Number 索引

加载材质.

loadGeometries( primitives ) :
primitives Array 图元, 基元

从基元创建BufferGeometries.

loadCamera( cameraIndex ) :
cameraIndex Number 索引

加载相机.

loadSkin( skinIndex ) :
skinIndex Number 索引

加载皮肤.

loadAnimation( animationIndex ) :
animationIndex Number 索引

加载动画.

loadNode( nodeIndex ) :
nodeIndex Number 索引

加载动画.

loadAnimation( animationIndex ) :
animationIndex Number 索引

加载动画.

loadNode( nodeIndex ) :
nodeIndex Number 索引

加载节点.

loadScene( ) :

加载场景.