Event Hit - Normal Impulse is always zero
Brand new to UE4. I'm listening with an "Event Hit" node for collisions between my Actor and the player character. The event fires when the player jumps and lands on the actor, but the normal impulse vector is always (0, 0, 0). Could this be a collision configuration issue or is there some type of mass assignment I need to do?
asked Aug 09 '14 at 10:05 PM in Blueprint Scripting
This is returning 0 right now because the character controller is not actually simulated. We're talking about the best way to solve this in a general way so that we give you a reliable impulse. It gets a little complicated when you consider all cases.
However, for your case specifically you could manually compute the impulse by calling GetVelocity on the actor that's moving and multiply it by its mass which you can get by calling GetMass.
Hope that helps, let me know if you run into more issues. Hopefully we'll get a proper solution soon
answered Oct 09 '14 at 07:30 PM
[Epic]Ori Cohen STAFF
We were able to reproduce this issue on our end and have entered a bug report, TTP# 348357 to be assessed by the development staff.
answered Oct 01 '14 at 06:59 PM
Rudy Q ♦♦ STAFF
I have worked out how to do what I asked originally, if anyone is interested.
so if you want to get a realistic collision force for damage you might want to multiply by the mass if you have objects of different sizes but more importantly you can multiply the velocity by the impact normal and get the length of that so for example in a car game you would take more damage from hitting a wall you are driving towards than if you glance off a wall running almost parallel to the direction you are travelling.
I think what you are looking for is the impact normal. If you are wanting to register the exact location that the player hit, use the impact normal and it should return the values you are looking for.
answered Sep 26 '14 at 07:32 PM
Follow this question
Once you sign in you will be able to subscribe for any updates here