Bit of a milestone today as I've finally gotten round to uploading some screenshots of the Geo project to the Geo Screenshots Page. I've been putting this off day after day even though the small amount of time I have to work on it is gradually resulting in a degree of progress as I am sure I'm not alone in suffering from "Oh, I'll just add feature X or tweak effect Y before taking screenshots" syndrome. Anyway, I decided if I waited until I had it looking good enough to make me happy with it I would probably never take any screens at all so I've just bitten the bullet and done it.
Recent additions include better support for the solar system data structures which has enabled the removal of some of the bodged information to do with sun and lighting from the planet rendering as this is now calculated 'properly' from the relative position of planet and it's closest star along with data from the planet's atmosphere, star colour and intensity. Although there is only one planet so far the solar system structures should now make it pretty easy to add some more - I want to improve the planet texturing first though to enable me to make a decent looking moon for a start. I've written the system to be able to deal with arbitrary numbers of stars too so binary star systems (or more) shouldn't be a problem.
I've also been playing about with the atmosphere shaders to see if I could come up with a 'bodge' version that was cheaper than the more physically correct examples that can be found on the internet but still produce a nice effect - good enough for games or simulations anyway. It's taken quite a bit of fiddling but I don't think the current effect is too bad although it does need a bit of work in the colour graduation calculations - the simple lerp would be better replaced with a colour ramp lookup to allow more chromacity variations especially at sunset - but it is cheap and I think pretty chearful.
I've had an interesting idea too about planets with rings around them. I was idly wondering what a good way to tackle them might be then I realised that the voxel based geometry generation might simply be able to be used pretty much as-is just by using a new density function to produce what would essentially be a disc shaped planet with a noisy density distribution, worth a shot anyway. My main concern is that from a distance the high frequency nature of the density might cause significant LOD aliasing or even complete disappearance of the ring geometry, so it may need to be augmented with a texture 'ring' of some sort - shadow calculations would also be required so the planet shadow is visible on the ring which will be necessary.