我有一个椭圆形状的岩石围绕自己的中心旋转,我想跳到那块岩石上。 当我跳跃时我的播放器/控制器不会与那块岩石一起旋转。我的岩石上有胶囊colider但是没有选中复选框Is Trigger。 当我检查它只是通过岩石。当摇滚乐与摇滚一起旋转时,让控制器/播放器变得很热吗?
答案 0 :(得分:0)
我必须说我没有找到任何仅使用物理的解决方案。
Unity3D物理引擎dosnt支持这种旋转(对我的知识)。首先,我认为这是因为玩家对撞机(胶囊)的形状,它只有一个点接触其他对撞机(正在旋转的那个)。但我也检查了盒子对撞机,对象(玩家)也没有旋转。
所以你不会只用物理学来得到这个。
这里有一个答案,但已删除解决方案。此解决方案是将父级分配给玩家gameObject。这个父母将是这个旋转对象(摇滚)。由于这个玩家对象将从岩石中恢复所有移动。
当检测到碰撞时,您应该将岩石指定为玩家的父级。 OnCollisionEnter(Collision)
player.transfrom.parent = rock.transform;
当玩家离开碰撞时,将玩家的父级设置为null。 OnCollisionExit(Collision)
player.transfrom.parent = null;