Unity3d project for simplest orbits simulation, using 2-body solution model.
This repository contains whole Unity Project for basic demonstration setup. There are multiple ways of importing project:
- Manual copying of all files from Asset directory to your unity project directory;
- Importing asset store package;
- Importing 'src' branch as submodule, which contains only Assets folder content.
This plugin has the ability to customize orbits using the editor inspector and scripts. Scripting is fully optional. Some usage examples:
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(); 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.
