Not logged in, Join Here! or Log In Below:  
News Articles Search    

Submitted by Jon Creighton, posted on December 03, 2000

Image Description, by Jon Creighton

Here is a image from the game I am currently developing, 'Wolf'. It shows off a few of the features of the rendering engine.

The landscape uses an adaptive quadtree both for storage and progressive mesh rendering, with multitexturing to add detail and shadow maps. This allows a massive area to be stored and effectively rendered. It also supports wrapping to extend the terrain indefinately.

The sky is a series of domes, with the texture coordinates of cloud layers distorted to appear flat. The cloud layers move across each other at different speeds to give variety to the formations.

The geese, trees and footprints (that are just visible in the foreground) are rendered using an adaptive quadtree which manages all the visibility, level-of-detail and culling.

The geese themselves fly around using flocking rules to maintain their formations. It's very cool just to follow them around, and they're easier to take care of than real animals.

The image was captured on a Celeron 366 machine with a GeForce2 MX card running under DirectX 8.

For more information about the project, have a look at my web site at:

Image of the Day Gallery


Message Center / Reader Comments: ( To Participate in the Discussion, Join the Community )
Archive Notice: This thread is old and no longer active. It is here for reference purposes. This thread was created on an older version of the flipcode forums, before the site closed in 2005. Please keep that in mind as you view this thread, as many of the topics and opinions may be outdated.

December 03, 2000, 12:12 PM

looks really nice.. the flocking is something interesting, have you had any tutorials, wich describet it or something?

Kasper Fauerby

December 03, 2000, 12:22 PM

This might be a stupid question - but if you want your sky
to appear flat then why not simply use a plane ?

It's a very nice screenshot btw :)

Kasper Fauerby

David Olsson

December 03, 2000, 01:24 PM

Looks pretty cool.

I'm trying to do something similar only I generate the landscape at
runtime using fractals.
That way I can have enormous landscapes with infinite detail.


December 03, 2000, 01:39 PM

Very cool!
How many triangles are processed in a typical frame in your engine for landscape rendering (that is, not including other objects)?
A minor obs: I think the horizon line is a little too high and because of that, the sky appears to end too abruptly (this is especially visible on the left side in the screenshot).


Richard D Shank

December 03, 2000, 02:06 PM

I went to your site. I love the concept for the game. Keep us updated!!!


December 03, 2000, 02:15 PM

This is a good place to visit if you want to find out more about flocking.



December 03, 2000, 02:22 PM

This is another one: (found on the site)

Did you procedurally generate the trees?
Anyway, they look terrific.
I look forward to playing a demo of your game...


December 03, 2000, 04:59 PM

Certainly one of the more interesting IOTD's, especially for the
concept of the game!

If you target HT&L hardware, why not use vertex lighting for the
landscape? You say you're using light maps, but the landscape looks
pretty flat in the screen shots. Perhaps cranking up the modulation
will improve that?

Jon Creighton

December 03, 2000, 06:14 PM

Thanks to everyone for the comments, Iíll try to address the questions as best I can.

There are plenty of good flocking tutorials on the net, a good place to start is with the man who invented the concept, Craig W. Reynolds.
The fantastic book ĎGame Programming Gemsí has a very good tutorial by Steven Woodcock.

The sky is a really important part of the visuals, not only does it take up half of the screen but also because it indicates the direction of the wind - which is necessary to the flow of scents around the landscape, so I had a very clear concept of what I wanted to achieve. I used a collection of domes because it allows me to create the illusion of a really huge sky that appears to be far larger than the actual game world, and that makes the whole environment appear bigger. It also allows me to add lots of other effects; a subtle curve to the cloud layer, colour gradient effects, a moving sun and moon, stars etc.

I used fractals for some of my early terrains but the landscape plays such a huge part on the gameplay that it needs to be tailor-made for the situations.

The landscape was performing really well under DX7; 7,000 - 9,000 triangles per frame at 60-70 frames per second, but DX8 has changed the rules a lot so it now only gets about half that rate. Iíll have to re-optimise it once I have a chance. The horizon line is a result of the huge ugly cliffs that bound the game world, and really have to be fixed up.

I create the trees by hand in MilkShape, with discrete LODís so that they are only billboards in the distance. The fir trees in the pictures have a maximum of about 100 polygons each. The entity rendered is optimised for hardware TnL.


December 03, 2000, 07:10 PM

The screen shots on your site look great! The game concept is brilliant-- I can't wait to play :)


Chris Killpack

December 03, 2000, 07:13 PM

You can't use vertex lighting with an LOD terrain rendering algorithm - you get horrible visual changes as LOD is performed. You have to use a lightmap.

In addition lighting is very expensive (relatively speaking) and fillrate is cheap. So it makes sense from a performance point of view to precalculate the lighting into a lightmap and then just perform a multi-texturing pass (base texture * lightmap).



henry ludemann

December 04, 2000, 12:34 AM

I realise you LOD are discrete, but are you simply blending between different levels (either warping the mesh, or alpha blending the two models)? If you just switch between the levels, does this create an obvious change as it switches from one LOD to another? Looks good...


December 04, 2000, 01:17 AM

If you have a flat sky on a flat plane there is a cloudless band between the cloud plane and the ground plane. It looks pretty bad in a landscape shot (I know, I've done it). The dome with distorted texcoords is a great idea, you get clouds all the way to the horizon. I will be sure to steal this idea :)

Joakim HŚrsman

December 04, 2000, 06:37 AM

Wow, it both looks great _and_ has an original concept. That's way too rare today. When is it coming out :-)

The Wolf

December 04, 2000, 05:58 PM

Looks awesome !!! the framerate is solid too, great work.

But most of all I like the name :)

Jon Creighton

December 06, 2000, 06:00 PM

I thought that I would just close off this thread by thanking everyone for the comments and emails. I am working to get the project up to alpha and I'll provide a demo as soon as the art and AI are up to scratch.

Henry, the geomorphing of the entities simply uses alpha blending to fade out the billboard objects.



Robert Hayes

December 10, 2000, 03:38 PM

Look carefully at Sacrifice next time you play it. What they do is use a plane and a sphere. The plane simply sits at a height which blends well with the sphere (fairly high up). This avoids the "missing sky at the horizon" syndrome while at the same time achieving flatness, and two directional sky scrolling by rotating the sphere and scrolling the plane texture.

This thread contains 17 messages.
Hosting by Solid Eight Studios, maker of PhotoTangler Collage Maker.