Collision function is not triggered in C++

Hi,

I am trying to call my own Collision method whenever my object hits another object.

My objects extends the APawn class and uses a UPaperFlipbookComponent to render a sprite based animation.

Constructor (excerpt):

Sprite = CreateDefaultSubobject<UPaperFlipbookComponent>(AMyPawn::SpriteComponentName);
Sprite->SetSimulatePhysics(true);
TScriptDelegate<FWeakObjectPtr> onHitFunc;
onHitFunc.BindUFunction(this, "OnMyActorHit");
OnActorHit.Add(onHitFunc);

Hit function:

void AMyPawn::OnMyActorHit(AActor SelfActor, AActor OtherActor, FVector NormalImpulse, const FHitResult& Hit)
{
	GEngine->AddOnScreenDebugMessage(-1, 15.0f, FColor::Red, "Hit");
}

I placed my Pawn above another Sprite. At beginning it starts to fall down and it is affected by the other sprite since it stops falling down. However, my “OnMyActorHit” function is not executed.

I’ve checked the “Simulation Generates Hit Events” in my pawn.

It works actually by using Blueprints but not within my code …
Any idea?

Thank you.