Skip to main content
GameDev.net gamedev.net
🔒 Locked

walk around engine

Started by WildFire716 Mar 17, 2005 at 4:04 PM 2 replies 650+ views
Original Post
WildFire716
WildFire716
Hey guys i was looking at the water screen shots and was wondering if someone could give me a link or something to something that would help me make a "walk around engine"nothing fancy but i would like to learn how to do terrain.
evanofsky
evanofsky
You'll have to choose one to use: DirectX or OpenGL. I'd suggest DirectX simply because I use it :D If you use DirectX, get the book, "Introduction to 3D Game Programming with DirectX 9.0" by Frank Luna. Have fun!
Fahrenheit451
Fahrenheit451
WildFire, What's your understanding of OpenGL and rendering simple polygons? If I know that I know what point to jump in at with some advice.
cwhite
cwhite
Quote:
Original post by evanofsky
You'll have to choose one to use: DirectX or OpenGL. I'd suggest DirectX simply because I use it :D If you use DirectX, get the book, "Introduction to 3D Game Programming with DirectX 9.0" by Frank Luna. Have fun!


By that logic, it is imperative that he must use OpenGL, because I use that. [grin]

There isn't just one tutorial for making a terrain engine. There are a lot of things that go into making compelling terrain. You have to generate a heightfield, you need a sky, you need to somehow apply realistic textures to different parts of the terrain to differentiate between things like rock, grass, sand, mud, etc, and you need systems that manage shrubbery like grass, trees and bushes. Optionally, you can also have things like water and animated clouds that will further enhance the realism of your terrain. I think that rather than finding a terrain tutorial, you should look for individual tutorials on all of these aspects and then integrate these aspects together to create your terrain.

Here are some things that might be useful:

For animated grass:
-GPU gems has an article called "Rendering countless blades of waving grass." It's pretty easy to re-implement if you know GLSL or HLSL.

-ATI has a demo with source code at http://www.ati.com/developer/Samples/Grass.html

For heightfield rendering:
-Start out with brute force triangle strips in OpenGL. It's a fast way to get an engine up and running without worrying about level of detail.

-Use libnoise to create your heightfield. They have extensive tutorials on creating heighmaps with their noise library.

-If you want to challenge yourself and make your terrain go faster, read the paper Fast terrain rendering using Geometrical MipMapping and try and re-implement it. It is a level of detail technique for terrain acceleration.

For texturing
-Some things to google for: Texture splatting or detail textures.

-Additionally, you will have to learn how to use register combiners and multi-texturing or you will have to learn GLSL to do the texturing.

For a sky
-For a really nice procedural sky, I recomment A practical model for analytic daylight by preetham.

-Alternatively, and probably easier, you can use a skybox. Google for skybox to find tutorials on how to create them.

For water
-Again, GPU gems has an excellent article on natural water rendering called "Effective water simulation from physical models." This paper cites an e-lecture given by none other than GameDev's own Yann L: clicky

You can also read Yann L's Hard Core article on water rendering. I can't find it at the moment, but I'm sure somebody will have the link.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.