Creating a beautiful dungeon terrain

Started by
2 comments, last by hplus0603 2 years, 2 months ago

Hi,

I am wondering how one would go about generating a beautiful dungeon “terrain” like seen in games like Dungeons 2 (similar to Dungeon Keeper).

Here are some screenshots from their official steam page with some questions that I hope someone here might be able to answer.?


In the following screenshot the walls seem to consist of larger stones that look like they have a depth. I would assume this is just a 2d texture with stuff like, normal, bump/displacement maps.
However, what I am wondering is how that stone wall is blended with the rest of the terrain when transitioning into the “normal” map cubes (i.e. at the top of the walls).
Also I am wondering whether the top-side of the map cubes have a flat geometry and also just use shaders to create that 3D-effect or whether there is actually bumpy geometry.

In another screenshot one can see strengthened (brick) walls.
Here I am wondering whether there is extra geometry for these brick walls or whether the previous texture was just replaced with the brick wall texture.
I would think the former, because this time the brick wall is not blended with the rest of terrain (at the top, when transitioning to the top of the cube), but it rather looks like it sits on top/outside of the cube.

Dungeons 2 (and for that matter also Dungeons 3) is made using the Unity Engine (hence the “Unity” tag) and I am wondering whether someone could give tips how one would go about creating such walls using Unity.

Thanks for your time and kind regards,

Lukas

Advertisement

Hard to say, but looks like all of this is low poly geometry tiles with normal maps. And they spend some extra work to break the obvious repetitive tiling. You can look up ‘Wang Tiles’, which i think is a system to achieve such breaking. But not sure - no experience and never used that myself. There are other, similar tiling systems as well. You could also try to get there just by intuition and tweaking variations, but i guess it’s very hard to deal with discontinuities without a proper tiling system / theory backing it.

lukas3 said:
Here I am wondering whether there is extra geometry for these brick walls or whether the previous texture was just replaced with the brick wall texture.

Many games do a mix of both. Have see that just recently in Elden Ring castles. They have tiling textures of bricks, but if there is some damage to the wall, or an edge requiring extra decoration, they can generate geometry bricks matching the same spacing as the textures have. Surely an automated system is involved, which artists have to respect and adjust. But after that, generating geometry bricks where needed is little work.
Then they can pull the geometry bricks out, rotate a bit, etc. And it still blends pretty seamlessly with the nearby texture bricks.

It's not at all clear that the rocks are just flat quads. You could easily model the rocks as a few hundred triangles per section, and no graphics card will have a particular problem rendering the twenty sections that would be on screen at a time, even back 15 years ago.

Alternatives to get the rocks to blend correctly at the intersection with the ground, include alpha testing, perhaps with a height-based alpha comparison, and per-pixel Z offset, which is easy to implement but does have a per-pixel shading cost. In non-complex top-down views like these, that cost may be small. Also, per-pixel Z offset works well together with parallax maps, so perhaps they use that. But my bet would be just use geometry. Geometry is cheap.

enum Bool { True, False, FileNotFound };

This topic is closed to new replies.

Advertisement