【问题标题】:How to detect If a character got in a room?如何检测角色是否进入房间?
【发布时间】:2022-10-06 00:30:49
【问题描述】:

我得到了这个问题:如何检测角色是否进入房间?

情况是:我正在做这个人可以进去的电梯,每次一个棋子进入电梯,电梯都会得到这个棋子的重量,看它是否会过——重量。

但我无法检测典当是否进入电梯。

我在电梯的边缘设置了一个“Box Collision”,每当“Box Collision”被一个pawn重叠时,它会得到pawn的参考和一切。如所示图片。 enter image description here enter image description here 但问题是:每一次pawn越过“Box Collison”,就会触发两次甚至更多次。我真的不明白这个?

或者有没有一种先进的方法来检测棋子是否进入了这个电梯或这样的空间?

如果你不明白这个问题,请告诉我。

无论如何,我们将不胜感激!

标签: unreal-engine4 unreal-blueprint


【解决方案1】:

您的 pawn 中的多个组件可能与此触发框重叠。如果您打印“Other Comp”的名称,您将看到哪个。

更重要的是,对于您要检测的内容,这似乎是错误的形状。这会告诉你一个棋子是否越过了通往电梯的线。它不会告诉你棋子当前是否在电梯中。你无法知道一个棋子是进出还是离线有点近。将碰撞盒设置为整个电梯的大小会更理想,然后将 BeginOverlap 和 EndOverlap 都处理为 pawn 进/出电梯的指示器。

【讨论】:

    【解决方案2】:

    测量电梯的总重量在处理它进入时有一些要点,但它也有一个问题,它必须测量退出。 当添加为 BoxCollision 时,在整个电梯中放置一系列东西并使用 Add Unique 来添加新的东西。对于退出,您可以为此数组调用 remove。

    【讨论】:

      【解决方案3】:

      最好创建一个电梯房间大小的触发盒。 蓝图是这样的 enter image description here

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-12-03
        • 1970-01-01
        • 1970-01-01
        • 2018-01-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多