Rendering Shiny Ships

Rendering objects in space realistically is a big problem aesthetically.

Space is black, lots and lots of black – more precisely, there’s very little light. That might surprise you when you look at nice brightly lit pictures of moons, and planets – especially if I told you the surface of Luna (our moon) is about as reflective as a ploughed field here on Earth. Yet it’s dazzling white in the night sky, how so?

Well, for the same reason space is black, there’s nothing for light to hit, nothing for it to pass through, to agitate and make it glow. Nothing to disperse it, or defract it, or absorb it. All of the light hitting the moons surface pretty much bounces right back off it, there is no atmosphere of consequence (about 1cm thick if I recall correctly?) to absorb light energy, or diffuse it. Our atmosphere largely glows blue as light passes through it, because the gases in our atmosphere (chiefly Nitrogen if I recall correctly) scatter blue wavelengths more than any other. It also diffuses the light from the sun, which means we get a nice global ambience during the day – this  means the shadows we cast are still filled with some amount of light.

In space, there is no such ambience, no diffuse glow. An object facing the sun gets a full frontal assault of photons, but the dark side is jet black.
This can be quite a dramatic effect – pictures of the craters on Luna stand out starkly as they transition from piercing white to jet black.
But, generally, it means you only get to see half the detail.

It makes specularity (the ‘shiny’ on shiny surfaces) very effective however.

But, it’s not so bad for our space scenes. If you are flying above the day side of a planet, we now have two light sources. The local star itself, and the reflected light from the planet below. This gives us a nice effect, white starlight on one side of our ship, and a nice glowing blue perhaps on the other.

Now lets jump into stellar space, away from a planet. We’re now only getting starlight on one side.

Now let’s jump deep into interstellar space. It’s now jet black all around. Super powerful light amplification and long exposures might reveal our ship, but generally speaking – we’re now a jet black object in a jet black scene studded by stars. You can only make out our super shiny ship by looking for starlight being obscured from view by our hull.

This all makes a ‘realistic’ lighting model problematic from a gameplay view as well. It’s now incredibly easy to hide from sight. It also doesn’t show off our ship models. It’s a nightmare for artists to balance textures properly. We have (at least) three lighting models, and more if we cater for light reflected from large space stations, or satellite moons.

None of these are major issues in their own right. but they mount up fairly quickly to give us an ongoing headache if we choose unwisely.
The solutions? Well, fake ambience is one way – we pretend there is always an ambient light level – we can colour it based on the current scene’s lighting contributions for continuity.

side-by-side-1

The other is to accept ‘realistic’ and balance gameplay accordingly. Night vision modes to spot ships lurking in the blackness of space, giant spotlights on the ships to illuminate areas of interest, and the player comes to accept the visual ‘stylistic’ choice and look in-game. And we make the artists potentially unhappy.

side-by-side-2

I’d like both real and pretty – with the player in charge of which they see. But then when we go MMO these user options can conflict. A player could be skulking in the shadow of a large asteroid in cosy blackness on his screen, and nicely lit be ambient light on another players screen – bang goes his ambush!

Dominion 2013-02-10 16-10-05-35

At the moment we’ll stick with ‘realistic’, as it portrays the pseudo-reality I want in the game universe, and things like enhanced-vision are all on the list to be planned in anyway. We’re talking far, far future tech here – I think it’s reasonable to assume that most space-going vessels would be capable of enhancing electromagnetic emissions 😉

SHARE THIS POST

  • Facebook
  • Twitter
  • Myspace
  • Google Buzz
  • Reddit
  • Stumnleupon
  • Delicious
  • Digg
  • Technorati
Author: Mak View all posts by

One Comment on "Rendering Shiny Ships"

Get an awesome sticky message bar!Download