Hi Guys. I currently want to build a snooker game. I am not using the unreal physic simulate system for my snookerball. I am updating the ball location at the actor tick function so I wanted to know how to calculate the angle of the snooker ball when ball A hit the ball B. Here is how i want them to move

I could calculate the angle of reflect of ball A but I don know how to calculate the angle of reflect of ball B.

I calculate the reflection of Ball A using this formula from a tutorial:

FVector ReflectedVelocity =-2 x FVector::DotProduct(MyballVelocity, HitNormal) * HitNormal + MyballVelocity;

The MyballVelocity is a FVector type which store my ball CurrentVelocity. The HitNormal is provided by the EventHit blueprint function.

I Update my ball location on the Event Tick by doing this

SetActorLocation(GetActorLocation() + MyballVelocity * DeltaTime, true);

My question is how to calculate the Ball B reflected velocity in Fvector.

Any help will be appreciated.