Trending Games | Guild Wars 2 | Firefall | H1Z1 | ArcheAge

  Network:  FPSguru RTSguru
Login:  Password:   Remember?  
Show Quick Gamelist Jump to Random Game
Members:2,852,054 Users Online:0
Games:733  Posts:6,226,622
Rift (Rift)
Trion Worlds | Official Site
MMORPG | Genre:Fantasy | Status:Final  (rel 03/01/11)  | Pub:Trion Worlds
PVP:Yes | Distribution:Download | Retail Price:Free | Pay Type:Free | Monthly Fee:Free
System Req: PC | Out of date info? Let us know!

General Discussion Forum » The Pub at MMORPG.COM » 3D perspective? Isometric view? Why not both?

3 Pages 1 2 3 » Search
57 posts found
  Quizzical

Guide

Joined: 12/11/08
Posts: 13319

 
OP  4/01/13 10:01:44 PM#1

Some people prefer a 3D perspective viewpoint of a game.  Some prefer a 2D isometric view.  The solution that I think is obvious is to give them both what they want.

No, I don't mean that they can go play different games.  I mean making the perspective choice user-selectable in a single game.  For example, here's a screenshot of a project that I'm working on in a 3D perspective viewpoint:

You can get a larger picture of any of these screenshots by clicking on them.  Here's a screenshot of the player in the same place with an isometric viewpoint:

Same place, same city, same random seed, even.  Or to give another example, here is a screenshot with a 3D perspective viewpoint:

And here is the same location with an isometric viewpoint:

While isometric is traditionally used for games that are fundamentally 2D, typically because the game developers couldn't make it 3D (20 years ago because hardware wasn't ready; today because they don't have much in the way of math skills), it doesn't have to be that way, and there have been exceptions.

The above isometric view screenshots are of exactly the same 3D game world as the 3D perspective screenshots.  It's not tile graphics; it's modern 3D graphics with OpenGL 4.2 and extensive use of tessellation and geometry shaders.  That means that you can readily zoom in or out:

Or you can freely rotate the camera:

That has the camera rotated in the theta direction by about 45 degrees.  You can also rotate in the phi direction for a near overhead view:

Now, you might think that for a game to offer both, you'd have to change a ton of things.  But you'd be wrong.  In particular, the underlying game mechanics do not have to change.  At all.  The art assets likewise do not have to change at all.  Ever.  Any of them.

So what does have to change?  For me, the bulk of the work to add an isometric perspective option was created by my insistence on having a round world.  That creates a ton of work in certain areas of the world, as running in a circle around certain points only requires you to turn by 348 degrees, not 360.  That leaves a 12 degree crack in the world.  I stuck huge walls on top of those points, but still have to prevent players from seeing all sides of them at once, or else there will be a 12 degree crack in the ground that you can see the sky through.

For a 3D perspective view, I could make it so that that the camera could never go above the top of the walls, so that you could never see over them to see the crack in the ground behind the wall.  For an isometric view, the camera is effectively infinitely high, so forcing it below the top of the walls was impossible.  Rather, I had to force the camera to zoom in when you got near to a city wall, so that you couldn't see all sides of it at once.

Any game that does not have a round world (i.e., basically every game ever made) doesn't have to touch that.  At all.

The bulk of the rest of the work was in changing the tessellation degree to not depend on the distance of the camera from the object.  However, in an isometric viewpoint, the tessellation degree should depend on how far zoomed in the camera is.

Any game that does not use tessellation (i.e., nearly all of them) doesn't have to touch that, either.

So what had to change that most games would have to address if they wanted an isometric viewpoint?  The way that 3D graphics is traditionally done is that you compute the location of a vertex in camera coordinates, i.e., a rectangular coordinate system with the camera at the origin, the -z axis in the direction that the camera is facing, the y-axis going above the camera, and the x-axis going to the right of the camera.  Then you append a 1 on the end to make it a 4-dimensional vector, and multiply by a fixed 4x4 matrix to convert to clip coordinates.

For a 3D perspective viewpoint, you use one particular matrix:

http://www.opengl.org/sdk/docs/man2/xhtml/glFrustum.xml

For an isometric view, you use a different particular matrix:

http://www.opengl.org/sdk/docs/man2/xhtml/glOrtho.xml

To further simplify things, in the 3D perspective view, A and B are usually zero, while in the isometric view, tx, ty, and tz are usually zero.  So you're not merely multiplying by a 4x4 matrix; you're multiplying by a fixed 4x4 matrix most of whose entries are zero and with the exact formulas already worked out by someone else so that you just copy it and use it.  (Well, you don't necessarily write multiplication of a 4x4 matrix into shaders; so many entries are zero that there are mathematically equivalent ways to do it faster.)

If you take exactly the same shader and only change the perspective matrix, you change from 3D perspective view to isometric view and back.  That's it.

Now, to be fair, that does break some other things.  Any code for back-face culling that doesn't rely on the signed area approach will have to change, as which faces are back faces will be different for a 3D perspective view versus isometric.  Computations to determine that something will not appear on the screen and thus can be safely scrapped also have to be redone.  But you're likely looking at redoing tens of lines of source code for those things, not hundreds, let alone many thousands.

The only other problem with an isometric view that I've found is that it means that you can't force the camera down to see a character inside of a building or a cave or some such.  That means that you could have your character running around inside of a building, but you can't see him as he moves around.  You can flag particular portions of the building as part of the ceiling and simply tell the game not to draw them when the player is inside.  That does require adding a little bit to your art assets.  But I had already done that for a 3D perspective view anyway, to give players a different option rather than having the camera forced to zoom way in when the player enters a building.

So imagine playing WoW or Guild Wars 2 or Rift or whatever you're into with the option to switch between a 3D perspective view and an isometric view whenever you feel like it.  It's not only possible, but it likely wouldn't be that hard to do.  So why isn't it done?

  Mtibbs1989

Elite Member

Joined: 12/17/10
Posts: 2609

4/01/13 10:06:39 PM#2
I don't see what you're getting at... You don't play both views in a fully 3D world? While many games adjust your camera and what not. There are still a few that allow you to freely move them without fear of the game automatically doing it for you. I know personally because I like an Isometric feel while playing games. It allows me to see more around me (especially in a PvP environment).


Somebody, somewhere has better skills as you have, more experience as you have, is smarter than you, has more friends as you do and can stay online longer. Just pray he's not out to get you.

  Quizzical

Guide

Joined: 12/11/08
Posts: 13319

 
OP  4/01/13 10:09:57 PM#3
Originally posted by Mtibbs1989
I don't see what you're getting at... You don't play both views in a fully 3D world? While many games adjust your camera and what not. There are still a few that allow you to freely move them without fear of the game automatically doing it for you. I know personally because I like an Isometric feel while playing games. It allows me to see more around me (especially in a PvP environment).

A lot of games with a 3D perspective viewpoint let you zoom the camera in or out and rotate it.  But I haven't seen any commercial games that let the user choose between a 3D perspective viewpoint and an isometric view.  Are you aware of any?

One could think of an isometric viewpoint as being the limit of a 3D perspective viewpoint as the camera gets infinitely far away, with the frustum scaling constant changing such that the maximum distance along the ground that you can see converges to something positive and finite.  But 3D perspective games basically never let you zoom out far enough to be anything remotely like an isometric viewpoint.

One hallmark of an isometric viewpoint is that nothing can ever possibly be culled for being behind the camera, as there is no "behind" the camera.  Another is that you can never look up and see the sky, because you if the camera were rotated such that it was pointing upward, it would effectively be under the ground and all that you would be able to see is the ground blocking the view of the area where the game is played.

  Disdena

Novice Member

Joined: 3/05/10
Posts: 1098

4/01/13 11:09:57 PM#4
Originally posted by Quizzical

So why isn't it done?

Because for most gamers, isometric view is synonymous with "fixed angle overhead view". There's no need to render things a different way; there is no discernable difference to the end user unless they're really looking for it.

  osiriszoran

Novice Member

Joined: 11/29/11
Posts: 87

4/01/13 11:25:32 PM#5
also it would lead to game balance issues especially for pvp oriented people. You would be forced to play in isometric view to see whose behind you, etc.
  mmoski

Novice Member

Joined: 6/27/08
Posts: 263

4/02/13 12:05:54 AM#6

I think Savage 2 may have used this kind of style, as the Players were playing in first person mode and the commander was playing in isometric style, but don't quote me on that, and yeah isometric was basically used in the past (hardware limitations etc.. game dependent, 2D etc..), its pretty easy to simulate true isometric, with some fake camera ness ness, and the issues with not being able to see a character can be pretty easily nullified by doing a inverse ray to character poly test  (blob with hits) and either removing or just changing the materials alpha on the it polys/models (systems dependent) (ok there may be a few other issues with that, but that's how I would go about it).

These kinds of systems may become more prevalent as games cross the boundaries of what a single game experience should entail, nice to see you trying out different things.

  rojoArcueid

Elite Member

Joined: 8/13/09
Posts: 5450

"It is double pleasure to deceive the deceiver". - Niccolo Machiavelli

4/02/13 12:15:16 AM#7

I have never been a fan of isometric gameplay, but i will play it as long as it has WASD movement. Most companies think that because its isometric it has to be point and click like Diablo. Perfect World Entertainment has two games inspired by Diablo (War of the immortals and Battle of the immortals) and they work flawlessly with WASD movement. While those games arent that good imo the WASD works great with isometric.

 

Also The Witcher 1 lets players choose between full 3D and isometric gameplay and it works. Maybe it would be harder to add both into an mmo, i dont know, but i think it is possible.

My endgame begins with character creation and ends with a new mmorpg

  Konfess

Hard Core Member

Joined: 10/10/07
Posts: 702

4/02/13 12:26:28 AM#8
Yeah, Warcraft 3 did this.  You could zoom in or rotate the 3D camera out of isometric. So it has been done before, and is probably still being done today but unnoticed.

Pardon any spelling errors
Konfess your cyns and some maybe forgiven
Boy: Why can't I talk to Him?
Mom: We don't talk to Priests.

  Quizzical

Guide

Joined: 12/11/08
Posts: 13319

 
OP  4/02/13 9:46:40 AM#9

Google image searches for The Witcher and Warcraft 3 failed to produce any evidence that either offered an isometric perspective.  Could you track down a screenshot of either showing an isometric viewpoint?

You cannot switch between isometric and 3D perspective just by zooming out.  At the moment, I'd have to recompile shaders and relink programs to switch between them, which means that the game stops rendering entirely for about a second.  While I could just compile all of the shaders and link the programs for both ahead of time and switch back and forth that way, I haven't done that yet.  Regardless, there would still be an obvious jump when you switched from one to the other.

If you really, really wanted to make it possible to zoom in and out and go from isometric to 3D perspective and back that way, you could do it, but it would be something of a pain.  For starters, you'd have to set the depth buffer manually when using a 3D perspective rather than using the fixed-function version of it.  That means you can't use early fragment tests, so it would bring a considerable performance hit.

  MMOExposed

Spotlight Poster

Joined: 6/17/10
Posts: 5981

4/02/13 4:15:43 PM#10
Originally posted by Quizzical

Some people prefer a 3D perspective viewpoint of a game.  Some prefer a 2D isometric view.  The solution that I think is obvious is to give them both what they want.

No, I don't mean that they can go play different games.  I mean making the perspective choice user-selectable in a single game.  For example, here's a screenshot of a project that I'm working on in a 3D perspective viewpoint:

You can get a larger picture of any of these screenshots by clicking on them.  Here's a screenshot of the player in the same place with an isometric viewpoint:

Same place, same city, same random seed, even.  Or to give another example, here is a screenshot with a 3D perspective viewpoint:

And here is the same location with an isometric viewpoint:

While isometric is traditionally used for games that are fundamentally 2D, typically because the game developers couldn't make it 3D (20 years ago because hardware wasn't ready; today because they don't have much in the way of math skills), it doesn't have to be that way, and there have been exceptions.

The above isometric view screenshots are of exactly the same 3D game world as the 3D perspective screenshots.  It's not tile graphics; it's modern 3D graphics with OpenGL 4.2 and extensive use of tessellation and geometry shaders.  That means that you can readily zoom in or out:

Or you can freely rotate the camera:

That has the camera rotated in the theta direction by about 45 degrees.  You can also rotate in the phi direction for a near overhead view:

Now, you might think that for a game to offer both, you'd have to change a ton of things.  But you'd be wrong.  In particular, the underlying game mechanics do not have to change.  At all.  The art assets likewise do not have to change at all.  Ever.  nto with the option to switch between a 3D perspective view and an isometric view whenever you feel like it.  It's not only possible, but it likely wouldn't be that hard to do.  So why isn't it done?

Problem is, with two different views, people expect different kind of gameplay.

 

people don't expect a WoW kind of gameplay from a view point like UO. It has two different fan bases.

  Quizzical

Guide

Joined: 12/11/08
Posts: 13319

 
OP  4/02/13 4:54:09 PM#11
Originally posted by osiriszoran
also it would lead to game balance issues especially for pvp oriented people. You would be forced to play in isometric view to see whose behind you, etc.

While that is a concern, it's not so clear cut as isometric being better.  With a 3D perspective view, you could allow the camera to go very far behind the player.  You can also make the frustum as wide or as narrow as you want, to let players see off to the sides.  With an isometric view, you could shift the camera such that the center of the screen is far in front of the player.

  MumboJumbo

Hard Core Member

Joined: 7/18/10
Posts: 3142

Veni, Vidi, Converti

4/02/13 5:34:31 PM#12

This is an awesome OP, gj Quizzical.

I can't answer the tech reasons, but I prefer the isometric as it reminds me of a boardgame miniature I'm controlling. The 3D camera I think want some of that but with a bit more immersion in the world. Full immersion going towards FP and even beyond to Oculus Rift I guess.

-

Some games are allowing FPS and 3D over the shoulder camera view points. I guess the iso is considered redundant in mmorpg for appeal so they don't bother with it? Moba and Diablo are more iso 2.5d is that correct?

  Lille7

Novice Member

Joined: 12/08/08
Posts: 303

4/03/13 6:43:16 AM#13
Originally posted by MumboJumbo

-

Some games are allowing FPS and 3D over the shoulder camera view points. I guess the iso is considered redundant in mmorpg for appeal so they don't bother with it? Moba and Diablo are more iso 2.5d is that correct?

No, Diablo 3 is a 3D game.

I think there is some confusion of what an Isometric perspective means. A game can still be 3D and have a top down ( or slightly angled top view, like Diablo 3 / Warcraft 3), thats not what isometric means.

Now I suck at explaining these things but if Quizzical could post some screenshots with a similar view but one being Isometric and one being 3D I think that could explain it better.

  MumboJumbo

Hard Core Member

Joined: 7/18/10
Posts: 3142

Veni, Vidi, Converti

4/03/13 7:56:08 AM#14
Originally posted by Lille7
Originally posted by MumboJumbo

-

Some games are allowing FPS and 3D over the shoulder camera view points. I guess the iso is considered redundant in mmorpg for appeal so they don't bother with it? Moba and Diablo are more iso 2.5d is that correct?

No, Diablo 3 is a 3D game.

I think there is some confusion of what an Isometric perspective means. A game can still be 3D and have a top down ( or slightly angled top view, like Diablo 3 / Warcraft 3), thats not what isometric means.

Now I suck at explaining these things but if Quizzical could post some screenshots with a similar view but one being Isometric and one being 3D I think that could explain it better.

My bad, I know D3 uses a 3d engine and just uses that perspective to bring the same isometric atmosphere.

I guess the definition would be technical.

As said, it's likely they can have that viewpoint but either it gives advantage in pvp? Or causes problems with houses as already pointed out or is a feature the devs deem not popular enough to warrant using/adding?

As said, I like that viewpoint the most - more of a "puppeteer (iso) than a driver" (fps) and guess the follow-behind camera is like being a "backseat driver" ? ;)

  Quizzical

Guide

Joined: 12/11/08
Posts: 13319

 
OP  4/03/13 12:15:22 PM#15

There seems to be some confusion as to what exactly an isometric projection is.  A Google search didn't turn up any explanation that I was happy with, so I'll have to try my own.

The red, blue, and green lines up top are objects in the game world.  Black lines are projection lines that are just to show what goes where.  The yellow line is the screen that you project onto.  As you can see, the game world itself is the same in both projections, with two identical objects in it.

On the left side, we have 3D perspective projection.  You pick the point where the camera is, and draw a line from a vertex of the object you're drawing to the camera's location.  Wherever that line intersects the screen is where the vertex appears on the screen.

On the right side, we have an isometric projection.  Here, the camera doesn't exist at some particular point in the game world.  Rather, the projection lines go straight down.

Note that in the 3D perspective, the two objects appear different on the screen.  On the left one, we can see a good chunk of the green face.  On the right, we can't see the green face at all, but we can see the red one, albeit at a sharp enough angle that it looks very small.

In the isometric projection, the two objects appear exactly identical.  We can see the blue and green faces, but not the red one.  Furthermore, the green face takes up exactly the same amount of space on the screen for both objects.

This is the isometry from which isometric projection takes its name.  If you move an object around, it appears exactly the same, no matter where you move it.  (An isometry is a function that preserves distances.  More precisely, if X and Y are metric spaces and f : X -> Y, then f is an isometry if the distance from a to b in X is always the same as the distance from f(a) to f(b) in Y.)

The traditional advantage of isometric projection is that you can draw an object once, put it anywhere on the screen, and it will always look the same.  For example, 2D sprites moving around on the screen is implicitly an isometric projection.  Twenty years ago, this was about as much as hardware could handle.  For a proper 3D perspective, objects have to appear different as the move around the screen, which means you have to do a lot of work to redraw them.

Isometric projection is still used for some engineering and architectural purposes today, even with tools made by people who are plenty smart enough to make a proper 3D perspective if they wanted to.  If you're trying to build something, you need a good handle on how all of the parts fit together in the real world, not just what it looks like from one particular angle.  If an object in "front" is drawn to be much larger than an identical object in "back", it's harder to follow how parts fit together.

-----

But with a 3D perspective, the camera has to go at some particular position.  You can implicitly move that position closer to or further from the screen.  Here we have the camera position closer to the screen, to draw a wider frustum:

That's still at the same place in the game world as the third picture above.  Notice how the wider frustum makes everything appear smaller.  We can compensate for that to some degree by zooming in.

That gives you a frustum view that is twice as wide, but at half of the camera distance.  The player looks about the same as before, but objects in the distance look smaller, while those up close appear larger, or are now behind the camera entirely.

And, of course, we can also do the opposite, with a narrower frustom:

That doesn't let us see so much as before.  We can again partially compensate by zooming the camera out so that it is twice as far from the player:

That basically has the opposite effects of widening the frustum and zooming out.

-----

One might think that a proper 3D perspective is better, because it draws things in the correct perspective for your screen.  But that's actually not true, unless either you have a very narrow field of view or you sit very close to the screen.  If you have a 24" 1080p monitor and have a 90 degree field of view, then it's perspective correct for player whose eyes are a little over 10" from the screen.  If you want a 120 degree field of view, make that about 6" from the screen.  Basically no one sits that close.  For a small laptop monitor, you'd have to be closer yet to make it perspective correct.

If you make the game perspective correct for where you actually sit, then you could easily end up with a 40 or 50 degree field of view.  That would make the game awkward to play because you could see so little.  The next to last screenshot above is probably the closest to that.

-----

And now to help you see the sort of thing that you may wish to unsee, but will never be able to:  (no, this isn't NSFW)

Look at the tree on the left side of my first screenshot of this post.  See how it's tilted outward?  Unless the camera is either parallel or orthogonal to the ground, 3D perspective always does that.  The wider the field of view and the further the camera's vertical angle is from being either parallel or orthogonal to the ground, the more it does it.  People who try an Eyefinity or Nvidia Surround monitor setup are likely to get a very bad case of it, as the very wide monitor resolution gives you a wder field of view.

If you give the player a very wide field of view, it can look like trees are falling over.  It's also somewhat dizzying to watch as you move around.  This is why games commonly either give players a narrow field of view or force the camera to be parallel to the ground.  The problem with that is that it doesn't let you see what's going on very well.  It's a trade off of making the game harder to play, in order to make screenshots look better--and one of many reasons why I don't think that screenshots alone are a good gauge of how good a game's graphics are.

But this only happens for objects near the sides of the screen.  A tree in the exact center will appear to point straight up, regardless of how wide or narrow the field of view is.  The further off to the side the object is (in angle in the game world), the more it will be distorted.  The narrower field of view "fixes" this by simply not allowing you to see objects far off to the side.

An isometric projection also fixes this.  Remember that a tree in an isometric projection will appear the same, no matter where on the screen it is.  That lets it always point straight up.  You can see the trees in my isometric screenshots of the original post as examples.

  mmoguy43

Spotlight Poster

Joined: 3/31/09
Posts: 2300

4/21/13 12:46:24 AM#16

Is "why not?" a legitimate reason to include it in a game? I understand the reason is to give player the option, but for what reason? What does having both accomplish to improve the game? Is there a game?

Let's build the ultimate MMO 1 feature at a time
http://www.mmorpg.com/discussion2.cfm/thread/398555/page/1

  StonesDK

Apprentice Member

Joined: 8/06/11
Posts: 1833

4/21/13 12:57:27 AM#17

Dungeon Keeper did it with a spell that let you see through minions eyes. Then there's those RTS/FPS hybrids although not true Isometric

 

Problem as other has stated is if there's an advantage to use one over the other then that will become the desired feature. Then might as well not have options

  ozmono

Hard Core Member

Joined: 3/12/06
Posts: 1045

4/21/13 1:02:42 AM#18
Originally posted by mmoguy43

Is "why not?" a legitimate reason to include it in a game? I understand the reason is to give player the option, but for what reason? What does having both accomplish to improve the game? Is there a game?

I think if it doesn't require that much effort as he says than why not is a valid reason indeed. People have different preferences so why appeal to one when you can appeal to two?

  BahamutKaiser

Novice Member

Joined: 3/08/13
Posts: 297

On hiatus for a while guys, MMOs still aren't interesting me.

4/21/13 1:26:24 AM#19

Ceilings, multiple story locations with players overlapping eachother, and Z axis mechanics in combat...

I'm fine with isometric games, I think it's a good avenue for lower budget games to come into being without as much graphical cost, but once you do put it into 3D, and actually detail a world, it's a shameful waste to play isometrically, and doing so also makes it difficult to include any hieight elements.

There are also wildly different advantages and disadvantages to both, so gameplay has to be limited to something that will work with both angles, anyone who plays smite can attest to this fully.

Before you criticize someone, walk a mile in their shoes.
That way, if they get angry, they'll be a mile away... and barefoot.

  jalexbrown

Apprentice Member

Joined: 4/19/13
Posts: 122

4/21/13 1:32:47 AM#20
I just want an MMO made and designed around first-person play for a change.
3 Pages 1 2 3 » Search