Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

 
Advanced search

1075913 Posts in 44152 Topics- by 36120 Members - Latest Member: Royalhandstudios

December 29, 2014, 02:37:15 PM
TIGSource ForumsDeveloperTechnical (Moderators: Glaiel-Gamer, ThemsAllTook)Location on arbitrary 3D surface
Pages: [1]
Print
Author Topic: Location on arbitrary 3D surface  (Read 1126 times)
frezned
Level 1
*



View Profile
« on: July 07, 2009, 07:27:07 PM »

Just something I've been thinking about recently. Haven't started development on it or anything yet, just throwing around ideas and wondering if other people have anything to share?

Imagine an RTS. Could be any primarily 2D-gameplay thing, but let's go with an RTS.

You've got all of your units moving around on a map that is in most cases a rectangle of some kind. Each unit has an X/Y coordinate that represents its location, maybe a Z if there're multiple elevations on the map.

A more adventurous game might wrap one or both of these coordinates to get a sort of torus happening - Startopia did it to a certain extent, for example.

Basically (while they might have 3D graphics) all gameplay is locked to a 2D surface.

What I'm imagining is this same gameplay, but wrapped onto a 3D object. The gameplay is still locked to that surface, but wrapped around all sorts of ways.

I guess examples of this might be Super Mario Galaxy, where you're running around on a sphere a lot of the time, or more relevantly Shadow of the Colossus where you're climbing all over the colossi, which might be any shape (although there's still a definite down direction).

Anyway, does anyone have any thoughts about this? This isn't a "someone help me!!!" post, just something I find interesting.
Logged
mcc
Level 10
*****


glitch


View Profile WWW Email
« Reply #1 on: July 07, 2009, 08:41:20 PM »

Hm. Not sure if you're suggesting that the gaming surface would be displayed as a 3D surface, like as if it were a texture on a 3D object? Or that the game would be presented in 2D but that the 2D gaming surface portrayed would have a geometry corresponding to some arbitrary 3D surface. Though both options would be interesting...

If self-promotion is okay one valid example of this I think would be the game I made, Jumpman, which at a certain point runs through all the different possible ways of tiling on the plane:



I think I can say that technically all topologies of flat 2-manifolds are represented in Jumpman (except there's one configuration that I barred because of a bug... no one seems to have noticed). (If you're not sure what I mean by that maybe read this old everything2 article, it presents the standard math-textbook way of classifying manifolds but then uses Asteroids to explain what it means.)

Although I think most or all of these Jumpman levels can be embedded in 3-space (say as a torus or sphere or something similar), however, this is still a far cry from arbitrary 3D surfaces. For one big example no curved surfaces occur within the game...

I have a number of ideas about setting games within more unusual topologies but don't have anything to show for them yet...

Another interesting thing to look at here is Increpare's Mirror stage, which portrays some much more elaborate surfaces than Jumpman does (and surfaces which are easier to imagine as being "in" 3-space to boot?)... there's some sense though in which the surfaces in Mirror Stage are still all "flat" (my math vocabulary is starting to fail me here, sorry).

« Last Edit: July 07, 2009, 08:45:26 PM by mcc » Logged

My projects:<br />Games: Jumpman Retro-futuristic platforming iJumpman iPhone version Drumcircle PC+smartphone music toy<br />More: RUN HELLO
bateleur
Level 10
*****



View Profile
« Reply #2 on: July 07, 2009, 10:59:54 PM »

Anyway, does anyone have any thoughts about this?

Seems like the 3D-ness has two distinct effects:

1) Potential for interesting (non-Euclidean) surface metrics.
2) Potential for interesting topology.

The first of those two seems like it has potential for something like a race game, where you have to work out where the fastest route over the 3D surface lies. Trivial for simple surfaces, of course, so you'd need something seriously squiggly to be fun. Hmm... SSX in space, anyone? :-D

The second has already been explored quite a lot. Indeed, a lot of the ancient classic text adventures had mazes with extremely weird topology. And what is Portal if not a game about topology? If that doesn't prove topology is fun, I don't know what would.

Random game idea: Non-Euclidean Lemmings! (Or: Lemmings meets Portal!) Go on, someone implement it, I'm too busy! Grin
Logged

Ed
Level 5
*****



View Profile WWW
« Reply #3 on: July 08, 2009, 02:17:09 AM »

What about the Milkman Conspiracies level in Psychonauts? That takes place on a kind of twisted branching ribbon in 3d, with local gravity. (Watch up to 0:40 in particular)

When you say RTS on a manifold, I was immediately imagining driving your tank battalion to the edge of the manifold, that happens to overlook another bit of manifold with the enemy on it, and then firing up/down/away at them, off your bit of manifold and onto theirs.

Another similar-ish example I can think off is a certain sci-fi book that takes place in a giant castle from a previous age. A war occurs, and obviously being on the ceiling of a room above an enemy base/convoy/etc gives you a very strong position.

Maybe even have some special powers that let you bend the playing field around for tactical options?

Technically, maybe one fairly simple way to make the "surface" would be a mesh of triangles. Each unit/object has a UV pos on its current triangle, and can move between triangles by looking at the neighbours via the edges. Also this would give you a nice pathfinding framework, as you could use the triangles as the nodes in an A* solver.



Teapot Wars!
Logged

0rel
Level 4
****



View Profile WWW
« Reply #4 on: July 08, 2009, 02:43:10 AM »

this gamasutra article might be helpful.
Logged
frezned
Level 1
*



View Profile
« Reply #5 on: July 08, 2009, 05:00:53 AM »

Oh man Milkman Conspiracies was so awesome! My third favourite level on Psychonauts. (1. Black Velvetopia, 2. Waterloo-o) And yeah - that is actually what I'm getting at.

(despite my question being more about the displayed 3D surface rather than the topological behaviour, I did spend hours this evening playing through Jumpman and Mirror Stage Grin)

And using UV's for the coordinates is so simple I didn't even think of it! Even if you wanted a higher-resolution mesh for the actual display just using a "collision" one would be totally easy. Maybe a little CPU-intensive I guess? Although those things are so darn powerful nowadays...

I might start having a tinker with this idea for real.  Smiley
Logged
nihilocrat
Level 10
*****


Full of stars.


View Profile WWW Email
« Reply #6 on: July 08, 2009, 06:44:22 AM »

You know, I'm wondering about how you do something somewhat simpler: wrap the display such that if you travel in any one direction, you will do so indefinitely, so ultimately it's just wrapping the 2D playing area around a torus using OpenGL.

I sounds extremely tedious to manually move every single visible thing into the viewing area, and it would kind of screw up collision detection and such if you moved the Model representations of game objects.
Logged

brog
Level 7
**



View Profile WWW
« Reply #7 on: July 10, 2009, 01:03:51 AM »

I've been working on something a bit like this (image) for a while.  RTS on an arbitrary surface.  Movement is discrete, units can only occupy vertices, but you could easily do something more general.  Do it.
Logged
frezned
Level 1
*



View Profile
« Reply #8 on: July 11, 2009, 05:02:10 AM »

I'm doin' it!

My 3D skills are a lot rustier than I thought, though... Sad

BUT PROGRESS IS HAPPENING. Will post here if I come up with anything interesting :D

(also that torus thing looks pretty cool, and is totally the kind of thing I was talking about)
Logged
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic