UE4 Объекты перекрывают положение после столкновения

Я новичок в нереальном движке, я пытаюсь добавить большую силу к объекту с помощью коллайдера коробки, но после того, как он сталкивается с другим объектом (просто еще одним экземпляром), они перекрываются друг с другом и становятся как один объект и движутся друг с другом .

Такси кто-нибудь объяснит свое поведение и как мне решить эту проблему?


person iartist93    schedule 19.11.2017    source источник


Ответы (2)


Здесь происходит то, что оба объекта постоянно сталкиваются друг с другом. Чтобы исправить это, вы можете попытаться отключить OnOverlap()-Event на перекрывающемся объекте или на сталкивающемся объекте.

В схемах вы можете добиться этого, установив Generate Overlap Events-Variable одной из сталкивающихся статических сеток перекрывающихся объектов на false.

В C ++ вы можете просто удалить обратный вызов динамического события для одного из таких сталкивающихся объектов:

CollidingComponent->OnComponentBeginOverlap.RemoveDynamic(this, &ACollidingActor::OnBeginOverlap);

Где CollidingComponent - это компонент вашего объекта, который вызывает срабатывание события перекрытия.

person Alex    schedule 20.11.2017
comment
К сожалению, это не решает мою проблему! Я все еще веду себя странно, когда они сталкиваются. Проблема в том, что иногда они просто отлично сталкиваются, а иногда проявляют такое странное поведение. - person iartist93; 21.11.2017

Как сказал @Alex, они пересекаются друг с другом снова и снова. Если вы не знали, вы можете добавить точки останова в свои узлы схемы, как и в коде, щелкнув узел правой кнопкой мыши и выбрав Включить точку останова < / strong> (или что-то в этом роде). Ваша игра остановится при достижении этого и переключится на эту точную точку на вашем чертеже. Затем вы можете навести указатель на этот узел и увидеть все входящие и исходящие значения переменных.

Надеюсь, это поможет вам научиться использовать Unreal Engine.

person spacebarisdefect    schedule 20.11.2017