我有一个旋转的物体,上面有一个盒子碰撞器,当它旋转时,它会与另一个物体上的网格碰撞器接触,因为这样做,网格会根据盒子撞击的位置而变形。我需要知道盒子撞击到哪里才能进行这些变形,但是我也希望盒子不要感受到网格的任何力,因为当我这样做时,我的整个父结构会飞出并飞到很远的地方土地。
如果有人可以提供帮助,那就太好了,
谢谢
编辑:我不一定需要碰撞信息,只是盒子内的每个点都会碰撞发生碰撞时与之关联的游戏对象,从那里我可以检查值
我有一个旋转的物体,上面有一个盒子碰撞器,当它旋转时,它会与另一个物体上的网格碰撞器接触,因为这样做,网格会根据盒子撞击的位置而变形。我需要知道盒子撞击到哪里才能进行这些变形,但是我也希望盒子不要感受到网格的任何力,因为当我这样做时,我的整个父结构会飞出并飞到很远的地方土地。
如果有人可以提供帮助,那就太好了,
谢谢
编辑:我不一定需要碰撞信息,只是盒子内的每个点都会碰撞发生碰撞时与之关联的游戏对象,从那里我可以检查值
请访问此链接....
http://docs.unity3d.com/ScriptReference/Collider.OnCollisionEnter.html
http://docs.unity3d.com/ScriptReference/Collider.OnCollisionExit.html
您将需要使用 OnCollision 以便获得碰撞信息,但您不能使用 OnTrigger,因为您只会获得缺少您请求的信息的 Collider。
问题是,当您有一个对 OnCollison 做出反应的对象时,无论如何您都会得到碰撞的物理反应。
您可以做的是在每个固定更新中存储对象速度和/或角速度,然后在碰撞后将它们读回。我不确定您是否可以读回 OnCollisionEnter 中的值,或者您是否需要用布尔值记录碰撞,然后在下一个固定更新中进行