如何获得具有重力且不受玩家推动的拾取能力加成?

时间:2019-04-09 19:29:10

标签: unity3d game-physics

我在游戏中遇到对撞机和刚体时遇到了麻烦。

我有一个加电功能,当玩家触摸时,会为玩家提供武器升级,只需使用onTriggerEnter2D()并将加电功能上的对撞机设置为触发器即可实现。但是问题在于扳机甚至都没有检测到玩家正在跑步的地面对撞机,它只是掉落在地面上。

当我禁用对撞机上的触发器时,生成的通电会掉落在地面上并照常停留在其上,但是玩家无法将其拾起,因为它只是被推向四周而不是被冲破

我的敌人也有类似的问题,应该杀死玩家接触。当我将对撞机设置为触发器时,它们会按预期杀死玩家,但由于它们具有触发器对撞机,因此会掉落地面。但是,当我删除触发选项时,敌人会像往常一样在地面上奔跑,但是却永远不会碰到玩家,因为敌人的对撞机和玩家的对撞机会相互推开,而游戏对象实际上不会碰到。

如何解决这个问题?

谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用方法OnCollisionEnter2D(Collision)来检测与非触发对撞机的碰撞,而不是OnTriggerEnter2D(),它仍将使您的对象与地板碰撞而不掉落。 / p>