Solar System Simulator

Hello MurrayTORONTO,
this version (v0.5) was created for Blender 2.68 but it should work for later version of Blender.

I tested the Addon with Blender 2.69 (r60991) and it worked without problems.
If you have problems reinstall the addon and try the example file (Planets.blend).
Still not working? Use Blender with an open console window, the addon will print much information there, copy everything and post it here.

I will release updates for bugfixes and other minor problems, but I don’t think there will be any more features in future versions.

Hope this helps.

Hello again,
because this Addon makes use of python drivers, you might run into problems with Blender’s Python Security Policy.

The following wiki page shows what’s going on there:
http://wiki.blender.org/index.php/Doc:2.6/Manual/Extensions/Python/Security

This means if you get this error in the console:
skipping driver ‘eval_planet_orbit(‘Scene’, ‘Mercury’, 0)’, automatic scripts are disabled

go to Blender’s User Preference window and under the File-tab activate “Auto Run Python Scripts”.

In case you get the following error:
Traceback (most recent call last):
File “<bpy driver>”, line 1, in <module>
NameError: name ‘eval_planet_orbit’ is not defined

Error in Driver: The following Python expression failed:
‘eval_planet_orbit(‘Scene’, ‘Mercury’, 0)’

go to the 3D-View Toolbar and hit the button labeled “Update Drivers”.

If you don’t want to use any drivers you can bake the animation. In the 3D-View toolbar use the button “Bake All” to create keyframes for all simulated objects. The keyframed animation will work without the Addon.

Thank you. Very much appreciated !

It was the “Auto Run Python Scripts” option causing my problem.

Cheers

I’m very interested in this plug in, but having a heck of a time installing it. I went to the http://wiki.blender.org/index.php/Doc:2.6/Manual/Extensions/Python/Add-Ons location and followed those directions and can’t seem to get Blender 2.69 to recognize the plug in.

Any helpful hints would be appreciated

Running on a Ubuntu 14.04 box

Looks pretty cool, I was wondering if I can throw in a comet and have it’s path perturbed by planetary passes?

Can you create Binary Solar Systems with this?

figured it out :slight_smile:

@Pete.Lindstorm
I tested the addon with Blender 2.71 on Ubuntu 14.04 and it works fine.
Where exactly do you run into problems? The SolarSystemSimulator05.zip file can be installed over the User Preferences, Addons-tab with “Install from File…”. It should now turn up in the Addon list if you search for “Solar System Simulator”. Also make sure that under the File-tab “Auto Run Python Scripts” is activated, else the animation will not work.

@3pointEdit
You can try to add force fields to the simulated objects. If you use a negative strength and a spherical falloff with Power set to 2 you can use a particle system to simulate comets.
After some playing around I got this:



(The particles are drawn as lines with a trail, the planet orbits counterclockwise.)

@Auuman Anubis
Simulating a binary star system directly is not possible because every solar system can have only one central object.
But you could use a few tricks to let it look like a binary star system. Just use two planets as your two stars and let them orbit around a common center. You need to adjust the orbital period of one of the stars. In the picture below the outer star needs 103 frames for one orbit around the center. I set this as the orbital period of the inner star. Also I set the “Ascending Node” to 180°, now the stars are on opposite sides of the center.


Brilliant! Thank you Markus :smiley:

Hi,
I would like to use your AddOn but sadly it doesn’t work properly :frowning:

I use Blender 2.72 and get the following ErrorMessage in the User-Preference Panel if I want to activate it:


Auto Execution is activated and I already installed from File (Ver.0.5), too.

Thank you,

Archaeopteryx

@Archaeopteryx
Problem fixed, Blender’s Python API changed to customize the tabs in the 3D-View Toolbar. The new version (0.6) adds a panel in the “Tools”-tab.

Oh, thank you very much.
I will test it later.

Hi Markus,
Nice work…I am very impressed of your work and I had a look to your scripts and tryed to modify it for sattelite orbit simulation based on keplerian orbital elements(eccentricity, mean anomaly, semi-major axis, inclination, argument of perigee and right ascension). The last two day this is the only thing I am doing and nothing. I can’t figure out how to modify it. Can you please give me some direction?

Thanks a lot!
Gabriel

Hi Gabriel,
it has been a long time since I last used the Addon, so I’m not so sure about the little details.
However I can try to give you an overview of the things the Addon is doing.

The objects that are actually simulated are Blender’s Empties, other objects such as meshes can be parented to them to show the sun, planet, etc. Simulated objects are arranged in a hierarchy, child-objects orbit around their parent.
Every object can be one of three types (stored in obj.sssim_obj.object_type):
CENTER: Root object of a solar system, has no orbit but can rotate.
PLANET: Orbits around a CENTER-object, can also have children (like moons).
SURFACE: Some object to represent the planet or center, will move and rotate with its parent. Otherwise useless.
Scaling of the whole scene is adjusted through a panel in the scene-tab. The passing of time is controlled with the “Evaluation time”-Property (scene.sssim_scene.eval_time).
The animation is done via drivers (two for every planet: one for the position, one for the rotation). Everytime Blender updates an object the driver is executed. It looks what orbital elements are set and what the time is and then calculates the right positon in space.

The Addon uses the following files:

calculation.py
Contains all the stuff used to calculate the correct orbits from the given orbital elements. The function true_anomaly does the main job, orbit_position and orbit_rotate are used to correctly orient the orbit in space. eval_planet_orbit and eval_planet_rotation are the drivers for the position and rotation of the object.

properties.py
Blenders PropertyGroups are used to store the orbital elements and other data. Every object in Blender has a sssim_obj, sssim_orbit, sssim_rotation,… property which is an instance of the respective class.

panels.py
GUI to modify the properties.

operators.py
Everytime something needs to be created or updated one of the operators in this file is executed.

opengl.py
Draw some handy information in the viewport.

init.py
Registers the PropertyGroups, Panels and Operators.

Can you give me a specific example of what you want to change?

Just wanted to say this is ABSOLUTELY AMAZING! I find asteroids and was looking for a better way to model their orbits. This is awesome. Thanks!!!

Here is an actual asteroid I found last week I’ve added into this addon. So neat.

http://www.rankinstudio.com/K16U28D


Is there a way to change the orbit colors? A different color for each object’s path?

@rankinstudio
great job, awesome use of Blender. :slight_smile:

Very usefull addon. Thanks

Has anyone tried this addon with Blender 2.8x? I can install the script, load the examples, delete planets, run animations based on the examples, but not much more - mainly because I am lost in the different designations of the buttons and tabs which I do not find in Blender 2.82. :frowning:

Hi,

Could someone help with installing this add on in Blender 2.8? Thank you