Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2 3 ... 14

Author Topic: Presentation (cavalier, isometric and 3/4TD projection)  (Read 43285 times)

Mike Mayday

  • Bay Watcher
  • gfx whr
    • View Profile
    • Goblinart
Presentation (cavalier, isometric and 3/4TD projection)
« on: November 19, 2008, 05:26:52 pm »

So now that I'm (temporarily) done with doing those silly graphics for DF, I thought maybe I could spend some time to summarize some elements of graphics support and (of course) expand on them. I'll try to include both pros and cons with the more complex subjects... (once again, I'm just throwing ideas around).

1.Rendering both the ground and what is on it. If there was only ONE graphic-support option supposed to be added, I'd take this one.

2.Zooming. In game switching between 16px tiles and 32px tiles (64? maybe some people like to view things up close from time to time). If a larger tile is not available, it could use an upscaled smaller tile. Generally the ability to switch between a simple and clean "map" view that clearly provides the most important information (most useful for larger battles and planning large constructions!) and a "detailed" view that provides more information in a smaller scope. Those who don't like to lose the large amount of tiles displayed wouldn't even need to use this mode. The wall tiles on the map come in 5 flavours only:

E is wishful thinking of course.
The symbol denoting the type of rock would be blended in with the icon.

On the "detailed" view however...

3... we could employ something more interesting. How about a 3/4 top-down view? All the tiles could have appropriate textures blended in (depending on material and wall type, as shown above).


Below is a quick mockup- no wall graphics, just the dimensions, enlarged x2! As you can see, basic side-view creature graphics work pretty well with this view. You can even move a creature 16px up (the dwarf on the right) and still clearly see where it's standing- so we could have 32x48 creature tiles.

As you can see, this requires that at least some wall tiles check their neighbourhood to see what kind of ground (or rock) should be displayed on this tile (even though it's still basically a wall tile). This only has to be done when forming the tile (or entering the area), thankfully. Here's a bunch of examples of how a wall tile inherits its "background" (full dot means wall/rock, empty dot means empty tile):

(the tile in the middle doesn't neeed such a check, as you can see).

4. Or how about a cavalier projection ala Ultima 7?


See how this would require completely different creature icons- those are somewhat harder to do. On the other hand, you could see more engravings, all the doors would be easily visible, less tiles would have to be checked for background:


And then there's the ultimate middle-ground between cavalier and isometric:

The tiles are still 32x32, the creature tiles can be somewhat larger AND we don't have to worry about walls obstructing the view!

5.Immediate mouse based looK command: all the time spent on pressing K and positioning the pointer on a tile to check what it is is a time NOT spent playing Dwarf Fortress. It would be glorious to have a small window that would always tell you what you're pointing at with your mouse. Check out this silly incomplete mockup: (it also illustrates some further ideas and I also put the walls from the previous mockup in there, but bear with me for a moment).

SILLY MOCKUP (credits to pixeljoint for most of the graphics)

6. RMB context menu? Why not? It works great for buildings and place designations. Need to issue an order to a perfectly quick dwarf? Holding down RMB pauses the game, now you can easily point at him and release RMB, which opens up the context menu (and unpauses the game, if you want it to!).


7. Height. Check out the silly mockup once again. Notice how the slopes are rendered, this is a simple finite set of handmade icons I've already finished. Now let's think of the image in layers:

MAIN VIEW
OPACITY MODIFIER
"DISTANCE HAZE"

I didn't know how to do it in photoshop The lower the height, the bigger the distance from the viewer (who is looking down)- so the opacity of the view is decreased and the "HAZE IMAGE" (it could be an image of clouds?) can be seen through.
(I'm not sure if I'm clear on this, on the mockup above there's a bluish layer for the lower level and a black layer for the even lower one. Instead, the opacity of the view should just be gradually decreased). You could set how many layers can you view at once before the opacity drops to zero.


8. 32x32 pixels is really a lot! If the skill synergy idea is implemented (the one with tool skills and material skills), a dwarf could be rendered with two layers: one for his body (the colour of clothes denoting his highest material skill) and one for the tool in his hands (his higher tool skill).


9.What if you could switch between displaying skills (as it is now) and orders? So a soapmaker who is ordered to only do hauling jobs would be displayed as a hauler, and an elite wrestler who's just been ordered to start using an axe will be displayed as an unexperienced axedwarf.

10Simple "animations". Smooth passing of units between tiles could be nice but it's not a must have. What would really sweeten the deal is if a unit pulled back a little then swung forth to denote a blow during combat. This would look glorious when sending the enemy flying with the force of the blow.
« Last Edit: December 03, 2008, 06:03:54 am by Mike Mayday »
Logged
<3

Christes

  • Bay Watcher
    • View Profile
Re: Presentation, OH NOES!
« Reply #1 on: November 19, 2008, 05:45:19 pm »

ASCII WILL LIVE FOREVER RAAAAAAAAAAAAAAAAA

*ahem*

That looks really really sexy, actually.  I'm not sure if there's a reasonable and attractive solution to elevation in an isometric view, though.
Logged

Reasonableman

  • Bay Watcher
  • ...Probably.
    • View Profile
    • Twitter is dead, long live Cohost
Re: Presentation, OH NOES!
« Reply #2 on: November 19, 2008, 07:05:49 pm »

I am a big fan of an isometric view, personally. Just kinda makes sense to me. I should also like to point out that a The Sims type wall system might work well, with borders of tiles being used for anything but the thickest stone walls. Just an idea.
Logged
A sane man must be reasonable, but a reasonable man need not be sane.

Tormy

  • Bay Watcher
  • I shall not pass?
    • View Profile
Re: Presentation, OH NOES!
« Reply #3 on: November 19, 2008, 07:37:59 pm »

Okay, just a note: Imho the 2d top-down display method is just perfect for a game like DF.

SILLY MOCKUP (credits to pixeljoint for most of the graphics)

This looks very good.  8)

Now...

Some of those images reminds me of Avernum.  :)




Btw, take a look at this isometric display method with transparency:on



« Last Edit: November 19, 2008, 07:53:23 pm by Tormy »
Logged

Reasonableman

  • Bay Watcher
  • ...Probably.
    • View Profile
    • Twitter is dead, long live Cohost
Re: Presentation, OH NOES!
« Reply #4 on: November 19, 2008, 08:27:46 pm »

If it's gonna be isometric, it'd have to be near top-down. Fallout (1+2) annoy me a bit because they're too flat, and there's big blind spots next to southern walls.
Logged
A sane man must be reasonable, but a reasonable man need not be sane.

Granite26

  • Bay Watcher
    • View Profile
Re: Presentation, OH NOES!
« Reply #5 on: November 19, 2008, 09:47:18 pm »

Nice post Mike, I think you hit a lot of salient points.

1.  Gifs have transparency layers... not sure how much it would take to impliment here.  Another option would be to make the tiles smaller than the square, so there's a 5% buffer on each side that displays the floor background (and then lining up the 'empty' square with it).

2.  Genius bit about zooming is extra detail.  You could use a 'military' tile for distant views and more specific one closer up.  (Or more, maybe separate tiles based on the level of armor?)  Anyway, zooming in allows more pixels per character which means you can reasonably put more detail in.

3.  Seems like people missed the pseudo :(... anyway, if you use the 5% buffers for the floortiles, you can set them according to your required area information.  Two birds with one stone.

Core Xii

  • Bay Watcher
    • View Profile
Re: Presentation, OH NOES!
« Reply #6 on: November 20, 2008, 02:04:32 am »

1.  Gifs have transparency layers...
GIF does not have a transparency layer. Only a 1-bit color key (one specific color can be fully transparent)
Logged
Reality is for people who lack imagination

Sowelu

  • Bay Watcher
  • I am offishially a penguin.
    • View Profile
Re: Presentation, OH NOES!
« Reply #7 on: November 20, 2008, 06:26:19 am »

Yeah, if the stuff ON the walls is important, you kind of need iso :/  I think a fair solution for elevations is to do a vaguely X-Com type thing:  X-Com let you toggle between "only display current level" and "display all levels".  I'd add "only display current levels AND LOWER".  So, you can get cutaways to wherever you're looking, but also see down the ramps (shaded).

Ability to rotate the view in 90 degree increments, v. important.  Hopefully engraving truly independent sides of a wall will go with that!
Logged
Some things were made for one thing, for me / that one thing is the sea~
His servers are going to be powered by goat blood and moonlight.
Oh, a biomass/24 hour solar facility. How green!

Footkerchief

  • Bay Watcher
  • The Juffo-Wup is strong in this place.
    • View Profile
Re: Presentation, OH NOES!
« Reply #8 on: November 20, 2008, 06:42:57 am »

I can't help but notice that none of those mockups have multiple Z-levels.

I have a long, insane .txt about layered, palette-swapped sprites in DF but I don't have the courage to post it yet.
Logged

Tormy

  • Bay Watcher
  • I shall not pass?
    • View Profile
Re: Presentation, OH NOES!
« Reply #9 on: November 20, 2008, 08:30:42 am »

Yeah, if the stuff ON the walls is important, you kind of need iso :/ 

Not really, everthing can be displayed in 2d top-down. In fact, I am not even sure that how could you see everything what is on the walls in isometeric, IF you cannot rotate the "camera".
Logged

Impaler[WrG]

  • Bay Watcher
  • Khazad Project Leader
    • View Profile
Re: Presentation, OH NOES!
« Reply #10 on: November 20, 2008, 08:49:39 am »

I'm in favor of some kind of depth based view but I find mikes mock up which maintains a vertical/horizontal grid to be disconcerting due to the way creatures are displayed in profile.  He admits the creature graphics would need a redesign with a tilted viewing angle.  I prefer the SimCity style of 'diamond' tiles and the screen shots by Tormy which demonstrate the 'translucent forward wall' effect common in RPG's that use this system.  It has the benefit of allowing profile characters to fit the scene without too much of a visual disjoint.

For 3D viewing I'd use a system of slicing in which the player can control two planes of slicing through the world, a bottom and top slice which can move independently through the z levels with the sole restriction that they maintain the arrangement their names indicate.  UI wise this could take the form of two markers attached to the depth indicator currently present on the right hand side of the screen, each can be grabbed with the mouse and moved up or down to change the top and bottom slicing planes, a third marker generated in the halfway point between the first two would move the whole slice up and down without altering its thickness.  Six keyboard commands would be linked to the same actions with my recommendations being Insert/Delete for top plane, PageUp/PageDown for bottom plane and  Home/End for the 'middle point' control.  This would combine with the arrow keys to provide smoth one hand navigation across the all three axis.  I already bind the z-axis controls to Insert/Delete and find it very handy.

Only that which is between the planes (aka the slice) is rendered and the objects within receive a gray scale shading proportional to depth.  The top most z level in the slice is unshaded and the shading increases each level down and would theoretically reach full black one level bellow the slice.  Because the shading is dynamically generated based on slice thickness the contrast between each adjacent layer can be heightened by narrowing the slice.
Logged
Khazad the Isometric Fortress Engine
Extract forts from DF, load and save them to file and view them in full 3D

Khazad Home Thread
Khazad v0.0.5 Download

Mike Mayday

  • Bay Watcher
  • gfx whr
    • View Profile
    • Goblinart
Re: Presentation, OH NOES!
« Reply #11 on: November 20, 2008, 09:13:30 am »

I can't help but notice that none of those mockups have multiple Z-levels.
This one does.

Also, guys. I think, for the sake of the discussion, we should use the proper terms for describing views.






Logged
<3

Footkerchief

  • Bay Watcher
  • The Juffo-Wup is strong in this place.
    • View Profile
Re: Presentation, OH NOES!
« Reply #12 on: November 20, 2008, 09:23:04 am »

I can't help but notice that none of those mockups have multiple Z-levels.
This one does.

Oh, that's what the dark areas area.  It's not terrain I'm worried about though, it's the walls, which I think are going to look really bad stacked on top of each other whether it's 3/4 or cavalier.
Logged

Duke 2.0

  • Bay Watcher
  • [CONQUISTADOR:BIRD]
    • View Profile
Re: Presentation, OH NOES!
« Reply #13 on: November 20, 2008, 09:32:09 am »


 And in standard DF we cannot even see walls on a different z-level, so as long as features on the current level are not obstructed, I support whatever is available. Except for Cvalier projection. That would just suck.

 Now as long as the game displays z-levels in 'slices', any of these could work. The problem with many of these is what I like to call the flying folly. Say you have a flying unit. When it reaches a sufficent altitude, it can appear next to some units while in reality be on the other side of the map. As long as we cannot see the z-level that bird is on or some other trickery, we could do this.

 I particulerly support better handling of slices lower in elevation. Wasn't one idea just to scale progressivly every z-level beneath the current one and use a parallax? That could work wonders with things like towers and pits, depending on if we scale up or down the size of lower levels.
Logged
Buck up friendo, we're all on the level here.
I would bet money Andrew has edited things retroactively, except I can't prove anything because it was edited retroactively.
MIERDO MILLAS DE VIBORAS FURIOSAS PARA ESTRANGULARTE MUERTO

Granite26

  • Bay Watcher
    • View Profile
Re: Presentation, OH NOES!
« Reply #14 on: November 20, 2008, 09:46:29 am »

1.  Gifs have transparency layers...
GIF does not have a transparency layer. Only a 1-bit color key (one specific color can be fully transparent)
Tomayto tomahto...

I'm still a fan of pseudo-iso(and 1 z-level) over true iso..

Pages: [1] 2 3 ... 14