Sign in to follow this  

MMORPG(WoW) Terrain Streaming

Recommended Posts

Hello, I am very interested in terrain rendering and have read already several papers about terrain LOD (Chunked LOD, Geomipmapping etc.). I've also implemented a terrain rendered which uses a quadtree and Geomipmapping, so I am not a total beginner in this field. Now I want to go one step further and want to implement an out-of-core terrain renderer for huge terrains like in World of Warcraft (WoW) for example. I've read the paper "Rendering Very Large, Very Detailed Terrains" ( ) which uses a combination of Chunked LOD and geomipmapping to implement an out of core terrain renderer. So I already have a brief overview of how to implement out of core rendering, but I also have some questions: 1. In this paper they use Chunked LOD. This means they have a quadtree, where each node represents a part of the terrain at a certain level of detail. Their heightmap is a square N x N grid and now I wonder how I could implement a renderer that is able to render non-square terrain heightfields. Take for example the WoW worldmap: . Each continent has a longish rectangular form, so they couldnt use a simple quadtree with a square heightmap. How could I adapt Chunked LOD (or any other LOD algorithm) to render a HUGE non-square area? 2. My biggest problem: Their terrain is static, but I want to write a terrain editor, to edit (lower, raise etc) the terrain. For example: The user specifies the size of the terrain (lets say a 10,000 x 20,000 heightmap) and then edit the huge heightmap as he wants (of course with out of core rendering). Chunked LOD uses a nested error inside the quadtree, so when I edit some vertices I must propagate the new error values up through the whole quadtree, which sounds slow. Short question: Is it possible to use out of core Chunked LOD for a dynamic terrain? Thanks in advance!

Share this post

Link to post
Share on other sites�

Can go more specific. Been there done that. Best performance and ease of implementation for editor is achieved using vertex textures, but you must have PS 3.0 compatible card on development machine.

If you want more information or some code/algorithm for vertex texture based editor ask here so other people can learn or PM me if you have lots of small questions about topic :P

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this