Hit Events no longer working

Hi,

I am current put on a project where I do not get ANY hit events (collision) from any actors interacting with eachother.
In a clean project it works fine. I do get hit events.

What I already tried.

  • Made sure the collision presets are as in a new project.
  • Collision is enabled (both query and physics).
  • Generate hit events in physics (turned off)
  • Generate overlap events turned off (overlap events DO work when this is turned on however)
  • Sweep is Turned ON when moving the actor.
  • Tried both from C++ and Blueprints with very basic objects (Cube and Sphere).
  • Added actions from all Hit events.
  • Added code that says EnableCollision for the entire Actor. Also in blueprint.
  • Collision profile was set so that BLOCK (aka hit) collision should occur.
  • I tried BlockAll with BlockAllDynamic, Custom and such that everything blocks with everything else.
  • I am not inheriting from a Character.

However, no hit event gets ever fired.

Also tried moving using ProjectileMovement component. Still no hit events do occur.

Simulation Generate Hit Events when Physics is turned ON works however.

Yes. you should have “Generate hit events in physics” turned on as otherwise it will collide or overlap but not actually generate the hit event.

Check out the documentation here:

No this is not true.
In the test project ( where it works ) is "Generate hit events in physics’ turned off. Furthermore, the objects do not collide, the moving object moves through the other one.
Thanks for the answer though.
Edit: Even when that is turned on it still doesnt work. Obviously I tested that already.

To be more clear. I ONLY get hit events when both Simulate Physics is turned on AND Generate ‘Hit’ events during Physics simulation is turned on. However, this is not the ‘Hit’ event I am interested in. I do not want to simulate physics. I just want the ‘Hit’ event from collision detection which should occur when 2 actors have a blocking interaction with each other.

I found the problem.
When creating a new Blueprint and a Sphere is added, collision with the Sphere will not work when using AddActorLocalOffset (or any other Actor movement) if the Sphere has not been made the Root Component.
Either, one has to use AddComponentLocalOffset (though this is usually not desirable) or make the collider the root component.
I would expect the first component added to be considered the root component, this is however not the case. The added sphere (or any other colider) must replace the DefaultSceneRoot first in order to have ActorMovement consider Sweeps.

Oh my jowijdfoijwodkfj thank you so much!

I’ve spent the last 3 hours trying to get hit events to generate without simulating physics. Didn’t know the collider had to be the root component. If anyone has an explanation, do tell!