My question is as follows: it is possible to completely remove impulse on hit, when we’re talking about two actors that simulate physics and both have they mass and velocity?
In my case, I have an actor that represents a light particle that moves at high velocity, and when it hits a cube it gets destroyed and invokes some functions. Right now I’m using an overlap event, but that doesn’t always work if velocity is too high. Using hit events allows using CCD, but then the cube receives an impulse from the particle and moves/budges, and I want to get rid of that.
I can’t lessen the distance because there are various forces that apply to the light particle that can make it travel faster or slower, and I can’t set its mass to almost zero, because it will make those forces affect the particles too much.
And I can’t increase the collision size because it won’t be right from the visual perspective.
Thank you for your input. Unfortunately, I can’t use that; I need the cube to continue simulating all other aspects of physics: falling, being affected by other forces and cubes; so basically everything save receiving impulse from the light particle.
You can solve your issue by using OnOverlap instead of OnHit. As for your light actor missing your target due to fast trajectory, you can solve it by filling the collision gaps. Below is an example how I solved mine:
Preface: My issue was that my sword attack animation doesn’t have a smooth swing animation which resulted to collision gaps, hence missed attacks.
SaveCollisionTransform event. We now save the current Sword Collision transform as previous collision transform (this includes: Center, Box Extent, and Rotation of Sword Collision). This will be used by TraceCollisionGap for the next frame.