SimpleKeplerOrbits
SimpleKeplerOrbits copied to clipboard
Unity3d static 2-body orbits simulation
SimpleKeplerOrbits
Description
Unity3d project for simulating simple orbits using 2-body solution model.
Importing
This repository contains the entire Unity Project for basic demo setup. There are several ways to import the project:
- Manually copy all files from Asset directory to your unity project directory;
- Import asset store package;
- Import of the 'src' branch as embedded package.
Usage
This plugin has the ability to customize orbits using the editor inspector and scripts. Some scripting usage examples:
Initializing orbit from orbit elements (JPL database supported)
var body = GetComponent<KeplerOrbitMover>();
body.AttractorSettings.AttractorObject = attractorTransform;
body.AttractorSettings.AttractorMass = attractorMass;
body.AttractorSettings.GravityConstant = GConstant;
body.OrbitData = new KeplerOrbitData(
eccentricity: eValue,
semiMajorAxis: aValue,
meanAnomalyDeg: mValue,
inclinationDeg: inValue,
argOfPerifocus: wValue,
ascendingNodeDeg: omValue,
attractorMass: attractorMass,
gConst: GConstant);
body.ForceUpdateViewFromInternalState();
Initializing orbit from orbit vectors
var body = GetComponent<KeplerOrbitMover>();
body.AttractorSettings.AttractorObject = attractorTransform;
body.AttractorSettings.AttractorMass = attractorMass;
body.AttractorSettings.GravityConstant = GConstant;
body.OrbitData = new KeplerOrbitData(
position: bodyPosition,
velocity: bodyVelocity,
attractorMass: attractorMass,
gConst: GConstant);
body.ForceUpdateViewFromInternalState();
For more detailed scripting snippets go to the included manual.
Contributing
This repository is closed for contributions.
Published version
License
MIT