Three.js материал для импортированной модели

Как назначить new THREE.MeshStandardMaterial() для импортированной модели?

scene.overrideMaterial = new THREE.MeshStandardMaterial();

Работает, но меня интересует материал для конкретной модели.

let test;

loader.load('/test.glb', function (glb) {
    console.log(glb);
    test = glb.scene;

    test.scale.set(0.05, 0.05, 0.05);
    test.position.set(0, 0.5, 0);
    test.rotateY(3.14159);

    scene.add(test);

}, undefined, function (error) {

    console.error(error);

});

Ответы (1 шт):

Автор решения: Breeng
test.traverse(child => {
    if (child.isMesh) {
        child.material = new THREE.MeshStandardMaterial();
    }
});

Не особо понимаю как это работает, но работает

→ Ссылка