Применить MeshLambertMaterial к загруженной сетке OBJLoader2

У меня есть файл obj, который я отображаю с OBJloader2. Я ищу способ применить MeshLambertMaterial к нему.

Я могу сделать это с OBJLoader с помощью следующего кода, вызываемого в функции onLoadedCallback:

 material = new THREE.MeshLambertMaterial(
                                                    {
                                                        color:0x6e6e6e,
                                                        emissive:0x282727
                                                    });

// called when resource is loaded
function ( object ) {
    object.traverse( function ( child ) {
                if ( child instanceof THREE.Mesh ) {
                    child.material = material;
                }
            });

scene.add( object );

К сожалению, я не могу сделать то же самое с OBJLoader2. Я что-то пропустил? Все примеры, которые я нашел, импортируют материал из файлов.mtl, это единственный способ?

Благодарю.

0 ответов

Другие вопросы по тегам