مرحبًا ، أريد تحميل نموذج داي في برنامجي ، على سبيل المثال إبريق شاي وأريد الحصول على 10 أقداح شاي في المشهد ، أستخدم وظيفة الاستنساخ على النحو التالي ، ولكن يبدو أن الكائن يشير إلى والده ، ثم يشير إلى نفسه لذا لا يمكنني استنساخه ، كيف يمكنني الحصول على 10 نسخ من الشيء الخاص بي؟
var dae;
var dae = [];
var loader = new THREE.ColladaLoader();
loader.options.convertUpAxis = true;
loader.load( 'teapot.dae',function colladaReady( collada ) {
dae = collada.scene;
for(var i = 0;i < 10;++i){
daes[i] = clone(dae);
}
});
}
function clone(obj){
if(obj == null || typeof(obj) != 'object')
return obj;
var temp = new Object();//obj.constructor(); // changed
for(var key in obj)
temp[key] = clone(obj[key]);
return temp;
}
يجب أن تكون قادرًا على القيام بشيء مثل هذا:
var geometry = collada.scene.children[ 0 ].geometry;
var material = collada.scene.children[ 0 ].material;
for ( var i = 0; i < 10; i ++ ) {
var mesh = new THREE.Mesh( geometry, material );
mesh.position.set( i * 100, 0, 0 );
scene.add( mesh );
}
لم تنجح ، أواجه نفس المشكلة.
هذا هو غرضي collada.scene
من فضلك لا تنشر في المواضيع التي أغلقت لسنوات. افتح إصدارًا جديدًا بدلاً من ذلك ، وقدم ملفك dae
three.js
ورمز
التعليق الأكثر فائدة
من فضلك لا تنشر في المواضيع التي أغلقت لسنوات. افتح إصدارًا جديدًا بدلاً من ذلك ، وقدم ملفك
dae
three.js
ورمز