unity2d创建一个侧面对撞机

时间:2017-08-10 16:34:53

标签: c# unity3d unity2d

我有一个枫树游戏演示

我需要角色可以从一侧跳过对手

我的角色和地面中的对手是这样的:

character:capsulecollider2d

地面:polygoncollider2d

enter image description here

所以角色可以站在地上

enter image description here enter image description here

也可以跳到地上

但现在我想要从地下跳跃角色,它无法正常工作

enter image description here

那么,我该如何解决这个问题呢?是否有配置可以使对撞机只有一侧?

------------------------------------- 2017 08 11 ------- ------------------------------

非常感谢每一个人

谢谢@EmreE @Jeroen De Clercq

我使用@EmreE

提供的Platform Effector 2D解决了这个问题

enter image description here

首先:在我的地上添加平台效应器2d 并选择"使用单向"

第二:选择"由Effector"

使用

enter image description here

现在有效:)

enter image description here

1 个答案:

答案 0 :(得分:3)

  • 将你的地板放在一层;
  • 将您的平台放在一个层中;
  • 当你跳过与平台层的碰撞时,直到你到达指向地板的方向。
  • 当您按下键时,移除与平台的碰撞,直到您通过一个平台层。

此处有更多信息; https://docs.unity3d.com/ScriptReference/Physics.IgnoreLayerCollision.html