How to assign a material to ColladaLoader or OBJLoader

前端 未结 1 1550
慢半拍i
慢半拍i 2020-12-21 07:56

I have looked through the documentation as well as many examples and wasn\'t able to find correct syntax for assigning a material to either a Collada .dae or OBJLoader .obj

相关标签:
1条回答
  • 2020-12-21 08:38

    Follow this pattern for OBJLoader:

    var loader = new THREE.OBJLoader();
    
    loader.load( 'model.obj', function ( object ) {
    
        var material = new THREE.MeshLambertMaterial( { color: 0x666666 } );
    
        object.traverse( function ( child ) {
    
            if ( child instanceof THREE.Mesh ) {
    
                child.material = material;
    
            }
    
        } );
    
        scene.add( object );
    
    } );
    

    For ColladaLoader, the pattern is similar.

    var loader = new THREE.ColladaLoader();
    
    loader.load( 'model.dae', function ( collada ) {
    
        var dae = collada.scene;
        scene.add( dae );
    
    } );
    

    three.js r.62

    0 讨论(0)
提交回复
热议问题