![]() |
DDM君 (2010-02-04 13:45:17) |
球体的碰撞很很简单,初略的计算就是plane的 中点到sphere的中点距离是否小于sphere的半径 更精确的计算就是判断plane上有没有点,距离sphere的中心小于sphere的半径 |
![]() |
shavy (2010-02-04 16:11:11) |
当我new个plane出来的时候,该平面是接近垂直于camera的,所以我设置了plane.rotationX+=90,这时看起来像是个地面了。但是我trace了一下plane.geometry.vertices[0].x以及y跟z,发现在设置rotationX前跟后,这个坐标完全没变? 因此,当我在判断sphere的中心点跟plane上的点的距离的时候,岂不是永远都不会变?(假设整个场景就只有plane在旋转) |
![]() |
DDM君 (2010-02-04 17:34:07) |
有每帧更新的吗?需要在enterframe里面每帧更新才可以的获取新的位置的哟~ |
![]() |
shavy (2010-02-05 17:23:56) |
这个。。。我是在creatScene方法(初始化,还未执行开始每帧渲染的方法)中写入下面代码: trace(plane.geometry.vertices[0].x,plane.geometry.vertices[0].y,plane.geometry.vertices[0].z); plane.yaw(90); trace(plane.geometry.vertices[0].x,plane.geometry.vertices[0].y,plane.geometry.vertices[0].z); 很明显,两个trace是一摸一样的,中间多了个旋转。。。两个trace出来的结果没变化,这样也不对吧? |
|
|