Как назначить материал для ColladaLoader или OBJLoader

Я просмотрел документацию, а также много примеров и нене в состоянии найти правильный синтаксис для назначения материала в файл Collada .dae или OBJLoader .obj.

Файлы Json, кажется, правильно работают при созданииMesh и наличие загрузчика в качестве геометрии и материала в качестве заданного материала.

Код как это работает

var loader = new THREE.JSONLoader();
loader.load( "modelPath.js", function(geometry){
  var material = new THREE.MeshLambertMaterial({color: 0x666666});
  mesh = new THREE.Mesh(geometry, material);
  scene.add(mesh);
});

Это не работает

var loader = new THREE.ColladaLoader();
loader.load( "modelPath.dae", function(geometry){
  var material = new THREE.MeshLambertMaterial({color: 0x666666});
  mesh = new THREE.Mesh(geometry, material);
  scene.add(mesh);
});

И это не работает

var loader = new THREE.OBJLoader();
loader.load( "modelPath.obj", function(geometry){
  var material = new THREE.MeshLambertMaterial({color: 0x666666});
  mesh = new THREE.Mesh(geometry, material);
  scene.add(mesh);
});

Я также пыталсяgeometry.material = new THREE.MeshLambertMaterial({ color: 0xff0000}); внутриfunction(geometry) безуспешно.

Формат .Dae, кажется, сохраняет цвет материала непосредственно из 3D-программ, таких как Cinema. Как правильно установить материал для этих загрузчиков? Если это даже возможно.

Ответы на вопрос(1)

Ваш ответ на вопрос