void UProjectileMovementComponent::StopSimulating(const FHitResult& HitResult)
{
Velocity = FVector::ZeroVector;
PendingForce = FVector::ZeroVector;
PendingForceThisUpdate = FVector::ZeroVector;
UpdateComponentVelocity();
SetUpdatedComponent(NULL);
OnProjectileStop.Broadcast(HitResult);
}
Ok nice, couple of more debug questions. I see that you giving a new velocity which is good.
Is anything running on projectile stop event? Like something spawning etc that modifies projectile base?
Can you try with bounce enabled? Like OnBounce bring back to pool and spawn again.
Also assuming its not on the same tick? When you spawn from pool?
So we can pinpoint problem space.