0
var ShipGeometry = new THREE.Geometry();
var ShipModule1geo = new THREE.SphereGeometry(150.0, 40, 30);
ShipGeometry.merge(ShipModule1geo); // this works
var ShipModule2geo = new THREE.BoxGeometry(5.0, 5.0, 600, 1, 1, 1);
var matrix = new THREE.Matrix4().makeTranslation(0,0,450);
ShipGeometry.merge(ShipModule2geo,matrix); // this works too
var ShipModule3geo = new THREE.CylinderGeometry(150, 150, 20, 32);
var matrix = new THREE.Matrix4().makeTranslation(0, 0, 850).makeRotationZ(Math.PI/2);
ShipGeometry.merge(ShipModule3geo,matrix); // only rotation is applyed
shipMesh = new THREE.Mesh(ShipGeometry, ShipMaterial);
....
我的问题,为什么applyed 只makeTranslation(0, 0, 850)
,不makeRotationZ(Math.PI/2)
在最后一种情况?3 JS几何合并矩阵
如何合并前合并?
谢谢你的回答,而对于三个JS! – Martin 2014-11-05 15:33:50