Solar Explorer E-mail
Wednesday, 25 May 2011 21:25

I initially started off writing this project as a simple orbit simulator for the eight planets in our Solar System As usual, my ambitions grew and I included some moons, then more moons, before finally I decided to just include everything over about 200KM in diameter, out to the orbit of Pluto.

Of course, all these planets and moons without some nice textures would have been a waste. Unfortunately, we don't have complete photos of the surface of many moons in the outer Solar System beyond Saturn. I started with what was available and extrapolated the rest. The only "made up" ones are Pluto, Charon and Ceres as all we've got right now are blurry shots, though even these three are somewhat accurate, as I took the light and dark pattern from the blurry images and laid it onto textures from moons that are thought to have a similar composition.

The biggest issue I had with writing this was Lua's number precision, which ended up taking a few days to work around. Because the Solar System is so huge, attempting to shrink it to fit a small screen caused massive rounding errors which manifested as stuttery rotations and orbits. This meant that I had to keep the planets relatively close to each other, and because I made sizes accurate, it meant that Jupiter and Saturn were so big, that they were visible from the surface of every planet in my universe. Not very realistic!

I worked around the size issue by cheating. As the camera pulls away from a planet, the planet scale is reduced until it is invisible, making it look like the camera is rapidly accelerating away from the planet. Once the planet is too small to see, it's simply made invisible. This also helped with the frame rate as it reduced the number of planets that had to be drawn at the same time.

I've included two sets of textures with the application. One is the original high-def texture set, which is intended for use on high end phones and tablets like the Galaxy S, HTC Desire or Tegra 2 tablets. The second set is low-def for older generation phones. The user can switch between the texture sets using the options menu on the toolbar.

In general it runs quite well to excellent on every device I've tried it on so far, including the HTC Legend, HTC Desire, Galaxy S, Galaxy Tab, Optus MyTab (ZTE V9, incidentally a cheap, but very good tablet), and the Viewsonic 10s. The biggest performance drain seems to be the music, which can be disabled from the options menu by reducing the volume to zero. To be honest, the only device I've seen that arguably needed to have the music turned off was the HTC Legend.

Solar Explorer is available now for Android

blog comments powered by Disqus