Tuesday, February 12, 2013

Planets

Planets are now becoming well-formed.  They have a placeholder atmosphere object, but will get a dedicated scattering shader.

Their atmosphere detects entry and the Planet Flight App Module is instigated.  This sets up the rendering pipeline slightly differently.  Flags are set on the spaceship physics model, for atmospheric flight.

In future this app module will also begin the streaming of planet cities, detail objects, etc.



Friday, February 1, 2013

An Update

I have to get back into blogging this thing, so this update is just a refresher to remind me how to log in to blogger etc.  Here's a screenshot of the cityscapes these days :


What we've got here is

  • A tile-based city that is read streamed from a bitmap.  The tall building you see in the centre is an example of specific placement of buildings - it's not just a procedurally generated cityscape.  This is so that players will be able to grow cities on planets, but also do specific terraforming and building and truly customise their planets.
  • A nice example of arbitrary backgrounds used as image-based lights for the scene.  While the background is currently a static mesh and bitmap, it's implemented in a way that's totally dynamic.  This way when I get around to doing the atmospheric scattering simulation (for planets) or procedurally generated nebulae in space, the models will all sit in their surroundings no matter where on the planet you are and what time of day it is.  The environment is baked into a cubemap, which is used for specular reflections (see the sides of the buildings), SSDO (the colours in the shadows) and far-z blending (aka fogging)
  • Shadow-mapped sunlight
  • Shadow-mapped internal cockpit lighting
  • Depth blur
  • Player's spaceship with internal lights and fully dynamic control centre UI.  The ring of icons represent all the ships systems - there's 4 thrusters, 2 pulse lasers, a stabiliser and missile rack.
I've implemented the transition from Space Flight to Planetary Flight, which means the plumbing is in place for two awesome new features - the planetary atmosphere scattering simulation, and placing the cityscape on the surface of planets, such that you can fly down from space seamlessly into an environment just like the above screenshot.