Tuesday, July 20, 2010

Terrain Rendering Progress

Terrain Rendering

It isn't Crysis or Just Cause 2 yet, but my terrain rendering system is coming along nicely.

Here is a flyover video. Any stuttering in the video is from the capture and encoding process - it runs butter-smooth.

Techniques I'm currently using:
  • Terrain generation with L3DT.
  • Skybox rendered with Terragen and cube-maped with AMD CupeMapGen.
  • Texture splatting for landscape detailing.
  • Water shading based on a modified version of Kyle Hayward's water component with the addition of variable water transparency depending on water depth.
  • Bloom and Lens Flare based on Microsoft's XNA samples.
  • Simple terrain Level-Of-Detail system. It currently works at a whole-island level - I'll likely have to move to a more complicated approach.


  1. Awesome!
    Maybe you should consider implementing some sort of Rayleigh and Mie light scattering?

  2. Hey, just wanted to say the island looks beautiful and I can't wait to see what game will come out of this!

  3. Thanks guys! I'm definitely planning on adding as much eye candy as I have horsepower for.

    To be honest, I'm not sure yet myself what game will come out of this - currently I'm just working on the underlying technology.

  4. Truly amazing stuff man. I'm liking your camera handling skills too :]

  5. Thanks Lotus. The camera is actually being driven by my current flight model. Right now it is just a pretty simple lift/drag/thrust model, but it is almost good enough to be used in arcade flight game.

  6. Very nice. I really like the features, you really nailed the JC2 look. Would you mind sharing the L3DT settings you used, if you still have the project lying around?

  7. Hi Derek - thanks! I don't recall the exact L3DT settings, but I don't think I did anything very complicated. If you just mess around with L3DT a bit, you should be able to get similar results pretty easily.