我使用AssimpJSONLoader在Three.js中加載了一個對象。 cube_cone對象是一個簡單的3D模型,它包含一個頂部有圓錐體的立方體。如何使用JSONLoader更改three.js加載對象的顏色
var loader1 = new THREE.AssimpJSONLoader();
loader1.load('models/assimp/cube_cone.json', function (object) {
object.scale.multiplyScalar(1);
object.material.color.setHex(0x666666);
scene.add(object);
}, onProgress, onError);
首先我想改變物體的顏色。我該怎麼做?我嘗試過:「object.material.color.setHex(...);」。
其次,我只想操縱子對象的顏色,例如只是錐體。 test_cone.json對象具有帶「name」的「children」:「3DSMesh_0」和「name」:「3DSMesh_1」。我如何訪問它們來操作對象的一部分而不是整個對象?
如果你能幫助我,我會非常感激,因爲我是一個Javascript初學者。
嘗試'VAR第一部分= object.getObjectByName( '3DSmesh_1');','然後part1.material.color.setHex (...);' – prisoner849
謝謝,用getObjectByName()我實現了操作子節點。但是用part1.material.color.setHex(0x666666);例如對象的顏色不會改變。 – ikasu
那裏有什麼類型的材料?像'console.log(part1.material);'。 – prisoner849