| |
Environment is rendered using spherical
harmonic lighting vertex shader for ultra-realistic
soft shadows and subsurface scattering effects.
A refraction-based vertex shader is
used to give characters a translucent effect.
An anisotropic 'ramp lighting' vertex shader is used to simulate light-scattering, giving
the characters more color on their edges than in their
centers.
|
| |
In order to conserve screen-space, we wanted to
implement a 'radar-like' game device without actually
putting a radar on the screen. The solution we chose
was to use subsurface scattering when computing the
radience transfer for the environment. This allows
light to penetrate all geometry (with some decay factor),
enabling the player to see light scattered from objects
which are fairly far away.
For example, the player always knows when bad dreams
are approaching because bad dreams emit a reddish
glow. This glow is visible even when the bad dreams
themselves are offscreen - the scattered light still
gets to the player. Same goes for the good dreams,
which emit a green glow. In the end, this approach
turned out to be pretty successful - as long as there
aren't too many different types of enemies (in which
case you would need more distinctive colors), scattered
light works well as a psuedo-radar.
|