Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

Imagine a game world like in Dungeon Keeper or Sim City with an (possibly rotatable) 3rd person view, where the game world can be accessed in all dimensions (in discrete steps). For example digging into the ground and accessing a whole new layer, but with the possibility of visible connections between the layers, like an underground dome that exposes a cross-section of several z-layers.

I imagine such a world rather hard to visualize so that it stays as easy and intuitive for the player to navigate as a game world limited to 2 dimensions or from first person. Problems I could see include obstructed areas, differentiating between z-levels, placing stuff in the wrong place, navigating back and forth between places of player interest, clicking the wrong stuff because of perspective issues.

I would be willing to go to great lengths to make navigation in such a world as non-hassling as possible, and I would rather abandon the concept instead of making a frustrating interface.

Do you know any solutions to this problem, maybe even examples where it has been solved in an actual game, or at least in a concept?

(Also, I propose the "perspective" tag, can't add it yet)

share|improve this question
    
isn't this more likely to be called isometric view? –  Victor Debone Sep 12 '11 at 16:50
    
Maybe take a look at what exploded view engineering diagrams, MRI or digital tomography slices, or even cutaway art books that show windows to interior workings of planes and ships are doing. –  Patrick Hughes Sep 12 '11 at 17:23
1  
@Victor The type of projection is not that important. en.wikipedia.org/wiki/File:Graphical_projection_comparison.png Can be any of those, but I would probably go for perspective projection. –  Hackworth Sep 12 '11 at 19:39
    
@Patrick Hughes Exploded views are nice indeed, but the trick, where I see the challenge, is making it work in an interactive way with only mouse and keyboard so that it's still usable and useful. –  Hackworth Sep 12 '11 at 19:43

3 Answers 3

Unless I'm misunderstanding you, this sounds like the presentation that Dwarf Fortress gives, at least from a top down perspective. Or, if you're looking for isometric, people have created visualizers for Dwarf Fortress that give that effect.

For example: enter image description here

As you can see the image shows multiple layers. The user is then able to "slice" down into the land. More images and information can be found on the Bay12 forums here.

Additionally you can see a video I made for my game, where I've implemented a slice feature to cut into the terrain (at 1:26). This allows the user to cut away layers of terrain to let them see inside and select terrain that would otherwise be obstructed.

Hope that helps!

share|improve this answer
    
+1, that's what I thought of. Of course, it's cell-based. The OP may or may not be referring specifically to vector-based cross sections. –  Nick Wiggill Sep 12 '11 at 18:33
    
In fact, DF was exactly the kind of game I had in mind. Though I'm not sure that the kind of cutaway you demonstrated in your vid would be exactly what I'm looking for, since one can see no information about the layers above, and about lower levels only where it is not occluded. But of course it is still be better than displaying only 1 level at any time, so +1. I will definitely take a look at the visualizer, but it seems it's not a game interface, is it? Is it only for displaying static snapshots of the fortress, or does the game continue on auto-pilot? –  Hackworth Sep 12 '11 at 19:32
    
From what I know of the visualizers, they are just for static viewing of a saved map file. But I could be wrong. However, it's really just supposed to give you an idea of how it could be done. Also you're right, it would be nice to be able to see some information about the layers above. Perhaps instead of removing the layers above they could be made almost totally transparent? Or go into wireframe mode? It's something to experiment with. –  Byte56 Sep 12 '11 at 21:14
    
For my purposes, information about layers you can't see should remain hidden. Which is why the material is black until it's "discovered" much like DF. It's on my to-do list, so I haven't done it yet, but I'm also adding the ability to slice from either side as well, giving the player a cross-section view. Should be useful in some situations. I'm interested to see what route you take. Thanks. –  Byte56 Sep 12 '11 at 21:22
    
Just went looked at the goblin vidoes... excellent! Thought of this question, maybe you want to go answer it definitively: gamedev.stackexchange.com/questions/16760/… –  Will Sep 13 '11 at 5:18

I can think of two good examples of the sort of discreet cross section of z-layers that you're talking about. The first is the various The Sims games. Each floor of a house is a different z-layer, and movement between them is done via icons on the interface, and (I believe) shortcut keys. In The Sims, the only points where movement between levels was possible was stairs, which were visible if you were "above" (on the second floor) or "below" (on the first floor) them. The stairs can problems if you're trying to click on something behind them, but it's possible to rotate the camera to solve that issue. The only real source of confusion in this case would have been if a Sim was on the second floor, and you/the camera was on the first floor. The Sim would effectively disappear from view. However, this is solved by allowing the player to double click on a Sim's portrait in the interface to zoom right to them. For the first Sims game, you only had access to 2 floors, so it was generally pretty easy for people to keep track of the 8 maximum people in a 2 story household.

The other example is Simutrans, a freeware transportation simulator. In some ways, the game is similar to Rollercoaster Tycoon, in that you can cut through the landscape at will, and go underground with the push of a button. The only different is that each z-layer can be "sliced", so that you only see what's on that layer (and maybe a minimal bit of the terrain above), you can see a bit of this here. Overall, this prevents confusion in terms of selecting objects and building underground, but it can be confusing for newer players, and it's harder to get an overview of everything that is going on. However, a game like Simutrans doesn't require as much micromanagement as The Sims, so it's generally fine to miss out on a bit of the overview. Again, moving between levels is simply a matter of using the keyboard/interface, and due to being able to rotate the camera, most other problems are solved as well.

Overall, the exact solution is going to depend on the game. The Sim City series (except the first one) had various underground views to build pipes and subways, effectively separating the views from each other. Most games take this route, sometimes providing a simplistic version of the aboveground, so you generally know where you are, but it's still fairly well hidden. Others, like Rollercoaster Tycoon simply hide the terrain and let you build underground with everything else in full (transparent) sight. It can easily get confusing, though this can be helped with a "currently building here" tile highlighted. My own game uses the "slice" technique, showing only the current floor to the user, while allowing them to see the walls of everything below the current floor. Exactly how to handle the floors above them, I'm still trying to figure out, though I have a few different ideas.

share|improve this answer
    
Thanks for the examples, though they're not exactly what I'm looking for. Since the game I think of, Dwarf Fortress, must be able to manage up to hundreds of layers, the visualization must be top-notch. And since there can be arbitrarily sized and shaped connections between layers, I wouldn't want the view to be restricted to a single layer. –  Hackworth Sep 12 '11 at 19:36

I would imagine a vertically oriented coverflow approach would be pleasing.

By this I mean showing the layers as a vertically-stacked rolodex that can be flipped through, showing the underside of layers above the current level with the layers hinged together at the far z.

It would also be suited to direct manipulation with touch screens, if wanted.

share|improve this answer
    
Yes, I had something similar in mind actually. The currently active layer would be rendered opaque, whereas a number of layers above and/or below would be rendered somewhat transparent. Has something like that been done for a game? –  Hackworth Sep 12 '11 at 19:28
    
not that I know of, but I can't see why it shouldn't be done in your game. If you had it in mind before posing the question, it seems like a go'er! –  Will Sep 13 '11 at 5:06

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.