查看emissive和emssiveMap:
如果使用环境光看到黑色(或者其他纯色),将emssive设置为material.color,如果有纹理,将纹理赋值给emssiMap。
代码如下:
var loader = new THREE.GLTFLoader();
loader.load( 'xxx.gltf', function ( gltf ) {
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//需要添加的部分
gltf.scene.traverse( function ( child ) {
if ( child.isMesh ) {
child.material.emissive = child.material.color;
child.material.emissiveMap = child.material.map ;
}
} );
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
scene.add( gltf.scene );
}, undefined, function ( e ) {
console.error( e );
} );
网友回复