ドキュメントと多くの例を調べましたが、マテリアルを 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 形式は、Cinema などの 3D プログラムから直接素材の色を保持しているようです。これらのローダーにマテリアルを適切に設定するにはどうすればよいですか? これさえあれば。