防止对撞机移动父对象游戏对象

时间:2016-11-27 16:41:12

标签: c# unity3d

所以目前我的玩家拿着一支枪,这支枪是一个空的游戏对象,这是我玩家的孩子。在我的游戏中有障碍。当我的枪与其中一个障碍物碰撞器相撞时,它也将移动我的玩家,但这不应该是玩家应该说的情况。如何使玩家的对撞机不被枪的碰撞移动?

1 个答案:

答案 0 :(得分:1)

实现所需目标的一般方法是将枪用于玩家(就像你一样),但只能将对手设置为你的玩家。当然枪会穿过墙壁或物品(如果你玩过FPS游戏,你一定注意到它几乎总是如此),但是你可以通过使用图层来从玩家的角度来抑制它 strong>和第二个相机

  • 将您的枪作为您玩家的孩子(就像您所做的那样)。
  • 创建名为“ArmsAndWeapons”
  • 的新图层
  • 选择您的玩家武器和武器并将其图层设置为新创建的
  • 添加新的相机作为当前主相机的子项
  • 更改新的相机设置:将清除标志设置为“仅限深度”,将剔除蒙版设置为仅限新图层(您还可以减少 >远剪裁平面值)
  • 最后将新相机的深度设置为高于您拥有的主相机

希望这有帮助