Categories
Uncategorized

Moon

I’ve made some additions to my noise library. Most notably the random generation of rings. A bunch of combinations etc and I’ve got:

A Moon

Categories
C++ Tutorial

C++ Variant Type Walkthrough

Considering the amount of pain I had trying to work out how to do this; I thought I’d write up something lengthy to explain how it works. It also helps me find if there’s anything in it that I don’t fully understand, else I wouldn’t be able to explain it.

The full Variant types header file has already been posted. This is the code I’m going off of.

Categories
Uncategorized

Back

Back from a break.

Categories
Uncategorized

Noise Factory

I’ve started work on tools. First off the rank is Noise Factory which I’ve made so that I can quickly preview and put together noise modules from my noise library.

noiseFactoryScreenshot

Categories
Uncategorized

Additional Engine Work

I’ve spent a few weeks working on engine enhancements to what I’m calling “spaceengine”. In addition, I’ve cleaned up a lot of the code and made some corrections here and there.

A New Sun
A New Sun

You can faintly see the planet, but what’s great is the successive levels of bloom.

Atmosphere
Atmosphere

And here you can see my very simplistic atmosphere being rendered. I had attempted to implement proper atmospheric scattering but the topic is very complex and I was having a lot of difficulty with it.

All of the samples for atmospheric scattering I’ve seen rely on earth-like parameters and coefficients, which is fine, but I know in advanced I’m going to need very non-earth like planets.

So for now I’ve opted for a simpler approach that essentially let’s the planet define the colour and density of it’s atmosphere, and the shader simply checks for eye ray length through the atmosphere and adjusts the colour accordingly. It works well enough for now.

An Eclipse
An Eclipse

Finally, I’ve implemented shadows for nearby objects.

Next, I’m working on object picking and then I’ll be revamping my noisemachine to work sort of like libnoise by using modules. This will help me get my planet and moon textures looking good.