Skip to content

Ballistic Solutions is a library for calculating interception times, impact positions, and firing vectors, taking into account the velocities and accelerations of both projectile and target.

License

Notifications You must be signed in to change notification settings

neclor/ballistic-solutions

Repository files navigation

Ballistic Solutions

Ballistic Solutions is a library for calculating interception times, impact positions, and firing vectors, taking into account the velocities and accelerations of both projectile and target.


Table of Contents

  1. Quickstart
  2. GDScript
  3. C#
  4. Demo
  5. Contributing
  6. How it Works ?

Quickstart

  1. Install the addon in Godot or reference the DLL in your C# project.
  2. In your scene, compute the vector to the target:
    to_target = target.global_position - global_position
  3. Call best_firing_velocity to get initial projectile velocity.
  4. Instantiate your projectile and assign velocity and acceleration.



Demo

You can test the addon using the included demo scene.


Contributing

  • Contributions are welcome. Open an issue or PR.
  • Demo scene is included for testing. Run it in Godot to validate behavior.

How it Works ?

  • The library sets up an interception equation between target and projectile motion and solves for t.
  • Each positive solution t corresponds to a valid hit time and gives a required initial velocity.
  • If no positive solutions exist, interception is impossible with current parameters.

See detailed Formula documentation.


About

Ballistic Solutions is a library for calculating interception times, impact positions, and firing vectors, taking into account the velocities and accelerations of both projectile and target.

Topics

Resources

License

Stars

Watchers

Forks