How to calculate trajectory of RigidBody2D?

Godot Version 4.2.1

I am making game like angry bird. I want to show the trajectory of the object.

The way I achieve it is using RigidBody2D. Prevent it falling I am setting freeze to true and freeze mode to static. And store position of mouse press and calculating difference (delta) using mouse motion. On the mouse release I calculate initial velocity (vector) and and set it to rigid body’s linear velocity and set freeze to false.

And I am calculating trajectory using s = ut + 12 at2. where u is initial velocity a is gravity and t is time.

All are fine. But my RigidBody2D did not follows the my calculated. It’s trajectory always smaller than calculated trajectory. So I changed linear_damp_mode to Replace. Now the error is smaller but not equal.

What I am doing wrong here please help me.


light blue is RigidBody2D’s trajectory
blue is calculated trajectory