From 873cdbe5b9d25e8ec9f052d99dc46376d79163d4 Mon Sep 17 00:00:00 2001 From: liteng <930372551@qq.com> Date: Fri, 5 Oct 2018 16:11:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=88=9B=E5=BB=BA=E5=88=9A?= =?UTF-8?q?=E4=BD=93=E6=9C=AA=E8=80=83=E8=99=91=E7=BC=A9=E6=94=BEbug?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ShadowEditor.Web/src/physics/PlysicsUtils.js | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/ShadowEditor.Web/src/physics/PlysicsUtils.js b/ShadowEditor.Web/src/physics/PlysicsUtils.js index 866303d8..ed1da03d 100644 --- a/ShadowEditor.Web/src/physics/PlysicsUtils.js +++ b/ShadowEditor.Web/src/physics/PlysicsUtils.js @@ -5,6 +5,8 @@ var PlysicsUtils = { createRigidBody: function (obj, margin = 0.05) { var position = obj.position; var quaternion = obj.quaternion; + var scale = obj.scale; + var shape = obj.userData.physics.shape; var mass = obj.userData.physics.mass; var inertia = obj.userData.physics.inertia; @@ -14,13 +16,13 @@ var PlysicsUtils = { var sz = 0; if (obj.geometry instanceof THREE.PlaneBufferGeometry) { - sx = obj.geometry.parameters.width; - sy = obj.geometry.parameters.height; - sz = 1; + sx = obj.geometry.parameters.width * scale.x; + sy = obj.geometry.parameters.height * scale.y; + sz = 1 * scale.z; } else if (obj.geometry instanceof THREE.BoxBufferGeometry) { - sx = obj.geometry.parameters.width; - sy = obj.geometry.parameters.height; - sz = obj.geometry.parameters.depth; + sx = obj.geometry.parameters.width * scale.x; + sy = obj.geometry.parameters.height * scale.y; + sz = obj.geometry.parameters.depth * scale.z; } else { console.warn(`PlysicsUtils: 无法为${obj.name}创建刚体组件。`); return null;