Hit event doesn't always fire

Hello,

I have an issue with hit event generation. In my BrickBreaker game, I have all the bricks simulating physics, and the balls are simulating physics as well. Both of them have “Simulation Generates Hit Events” enabled.

The brick has the following event attached:

//in constructor
OnActorHit.AddDynamic(this,&ABrickClass::OnHit);

//the event func
void ABrickClass::OnHit(AActor* SelfActor, AActor* OtherActor, FVector NormalImpulse, const FHitResult& Hit )
{
	if (!OtherActor) return;
	if(OtherActor->GetClass()->IsChildOf(ABallActor::StaticClass()))
	{
		ABallActor* ball = (ABallActor*)OtherActor;
			
		//increment score
		//spawn some particles
		//begin an animation
	}
}

So basically it’s an event, which reacts to the ball actor and I can always tell if it has been fired or not, because the results of the event are purely visual. Well, the issue is, that sometimes the event isn’t fired even though physically the objects interact correcly(I mean, the ball bounces off bricks as it should).

It’s quite annoying and disturbing type of glitch, especially in this type of game, so I’d rather solve it as soon as possible. What could be the reason of that?

Thanks in advance.

Hi,

Can you tell me which version of the engine you’re using?

I am currently using the 4.5 preview, but I had this issue in 4.2 as well.

Since the question has remained unanswered for 4 days, I bump it. I’m aware that i could have not provided enough information about the issue, but to be honest I don’t even have any idea what kind of information i should give.

Hi VeTi,

This is a bug, I’ll try and get to it soon. Thanks for the feedback

Hi VeTI,

Just a quick update on this. This is related to a PhysX bug that’s been fixed and integrated into our main branch. The updated PhysX libs likely won’t be in until the 4.6 release.

Do you know if you are using multiple collision shapes for the bricks?

I don’t really know how to check it. But all the bricks have only one static mesh that is simulating physics, and the mesh asset is set to default Shape_Cube. I didn’t mess with the collision settings too much, so I suppose I’m not using multiple collision shapes.

Thank you for the feedback, I’ll be looking forward to getting that 4.6 then. :slight_smile:

Hello. I’m experiencing a similar issue in UE 4.7.3
I have noticed that the Hit event does not fire when the collision lasts a very small amount of time.
Basically, if the colliding objects are moving very fast, the Hit event does not fire, even though the objects are actually bouncing off each other.

I am experiencing the same problem in UE 4.7.3 as well. I changed the problematic collision to per poly collision as this collision has no event firing bugs.

same problem here with 4.9

but it only happen on mobile, on computer hit event fire correctly