Hi everyone,
This is my situation.
I have a sphere collision component within my character that I want to receive OnHitComponent events for when it collides with any static meshes in the game world, such as the walls/floors/props/etc.
This component is attached to a hand bone in my character that moves with the bone when I perform a melee animation. Hence, this animated motion, and subsequent collisions, are being driven kinematically.
I have ensured that both the static meshes in the world and my sphere component are set to “BlockAll” in their collision preset, with collisions enabled.
However, I have discovered that the only way for me to actually get hit events is if one of the two colliders is “Simulating Physics”, and the sphere is set to “Simulation Generates Hit Events”.
However, I don’t want the meshes in the world, nor the sphere to have simulated physics. I simply want to detect a collision.
One workaround is to setup the sphere to detect an “overlap” instead. This works fine, but I would much prefer a hit event, because I don’t want to have to set every single static mesh in my world to “Generate Overlap Events”. Also, I’ve read that hit events provide more data than overlap events.
I have read mixed messages on this topic from the forums and the documentation, so I’d like a definitive answer on this if possible.
Can I receive hit events on components when I’m not simulating physics, or is the ‘hit event’ feature limited to ‘simulated physics’ objects only?