Jump to content


Photo

Breaking The Dimensional Barrier


  • Please log in to reply
92 replies to this topic

#1 Marius

Marius

    GMC Member

  • GMC Member
  • 203 posts

Posted 11 October 2007 - 11:17 PM

A while ago, I saw someone who had made a 3D version of pong in gamemaker. Recently, I've been thinking if it is possible to extend it into another dimension. This would be rather complicated, of course, because the 4th dimension doesn't exist in our world (except in quantum physics, but don't mind those), and is thus very hard to comprehend.

However, I've made some research, and I've figured it would be possible. But I'm not sure how easy it would be for the players to understand. I'd like to try to make something very easy and known to begin with. Therefore pong.

Do you think this would be doable?
  • 0

#2 Chessdude

Chessdude

    King of the Chess Board

  • New Member
  • 1123 posts

Posted 12 October 2007 - 01:20 AM

Marius make head hurt.

No, seriously, comprehending anything beyond the third dimension can cause brain tissue damage.

Can you be a bit more specific?

-Chess
  • 0

#3 tasty_tater

tasty_tater

    GMC Member

  • New Member
  • 59 posts

Posted 12 October 2007 - 01:40 AM

I would like to know how you plan to present a 4D universe on a 2D screen to humans who can visually comprehend only 3 dimensions.

EDIT: If talk of additional dimensions is making your brain hurt, take some time to atch this video.

Edited by tasty_tater, 12 October 2007 - 01:45 AM.

  • 0

#4 StapleGun

StapleGun

    GMC Member

  • New Member
  • 721 posts

Posted 12 October 2007 - 01:42 AM

Someone has made a 4 Dimensional Rubik's Cube and a 5 Dimensional Rubik's Cube for that matter.

[theory]

In 2D pong, the bat can move in 1 dimension (Up and Down) in 3D pong it can move in 2 dimensions (Up and Down, Left and Right) so naturally in 4D pong, the bat can move in 3 dimensions. In any dimension your playing pong in, the bat must be at a specific coordinate to hit the ball. (Eg; if the balls coming to the top in 2D pong, you can't hit it from the bottm) So in 4D pong, you must work out a way that the bat must be in a certain spot to hit the ball. In order for us to visualise this in 3D there would have to be 6 balls on the palying field. It's very difficult to visualise but take a look at the following image:

Posted Image

The bat would be able to move anywhere inside the inner cube. Now there would be one ball moving between a face of the outer cube and the inner cube bouncing between the faces. Not matter what, the balls will converge at an abitrary point within the inner cube. So the bat itself will also be a cube which you will have to move.

Now this is where 3D limitations really get annoying. In order for us to visualise this in 3D, both players would be playing inside the inner cube, but on different fields. This would get really confusing, but in the fourth dimension it would be crystal clear. So that's the main hitch you'll have to get past.

[/theory]

So, using that informaiton, let's see how you go. ;)
  • 0

#5 Chessdude

Chessdude

    King of the Chess Board

  • New Member
  • 1123 posts

Posted 12 October 2007 - 02:33 AM

If talk of additional dimensions is making your brain hurt, take some time to atch this video.

<{POST_SNAPBACK}>

I found that quite interesting, actually.

Not mentioning the fact that my head popped off.

But I was able to stitch it back on well enough, eh?

-Chess
  • 0

#6 lacorp

lacorp

    GMC Member

  • New Member
  • 53 posts

Posted 12 October 2007 - 03:08 AM

Watch Flatland if you want to know a lot about dimensions. Portraying 4D on a 2D object would be hard but not necessarily impossible. If a 3D object were to enter a 2D world the 2D beings, if their were any, would see a 2D shape. But, the 3D object would be able to move it's Z Axis so it would be able to alter its appearance.
You would also have some some problems with what the 4th dimension is. Many people say it is time but there is no way to prove that as we are 3 dimensional beings.
  • 0

#7 StapleGun

StapleGun

    GMC Member

  • New Member
  • 721 posts

Posted 12 October 2007 - 03:27 AM

I would like to know how you plan to present a 4D universe on a 2D screen to humans who can visually comprehend only 3 dimensions.

EDIT: If talk of additional dimensions is making your brain hurt, take some time to atch this video.

<{POST_SNAPBACK}>


That video discusses physical dimensions and isn't event that accurate to string theory. We're talking about 4 mathematical dimensions for 4D pong.

Edited by StapleGun, 12 October 2007 - 03:27 AM.

  • 0

#8 Marius

Marius

    GMC Member

  • GMC Member
  • 203 posts

Posted 12 October 2007 - 10:16 AM

Understanding the mechanics of the game itself, is quite easy when you understand it.

In a hypercube, there will be four coordinates - The 3-dimensional coordinates (x,y,z) and a hyper coordinate (H). If you give the ball a coordinate, for instance (120,115,40,65), it would be quite easy to find the exact point in any given hypercube.

Think of it like this:
In a 2D square, you can find the center by drawing a line on the middle of the width, and on the middle of the cross. Where the two points intersect is the middle. If all sides are 100 pixels, you can use this script to show it
draw_line(50,0,50,100);
draw_line(0,50,100,50);

If you bring this into 3D, by giving it depth, you would get a cube with two squares in it. These two squares are the two lines you drew in the rectancle, which has been extended from 1D to 2D. These two squares intersect more than one space (i.e., along a line through the middle of the cube). One of these squares is perfectly on the x-plane and the other is on the y-plane. If you add another square on the z-plane, you will have one spot where all the squares intersect. This is the center of the cube.

A tesseract is technically two cubes, with the same (x,y,z) coordinates, but with a different H-coordinate. Therefore, if you copy this cube and place it next to the previous one, and then draw lines between their vertices, you get a hypercube. If you take the squares that defined the center in the 3D-cube, and add another dimension, they will all intersect on a part of the hypercube. Then you could add a fourth cube, at the middle of the H-dimension, and this would give you the center of the tesseract.

Quite complicated, eh? I'm trying to make a sketch that can illustrate this better.
  • 0

#9 StapleGun

StapleGun

    GMC Member

  • New Member
  • 721 posts

Posted 12 October 2007 - 11:58 AM

Understanding the mechanics of the game itself, is quite easy when you understand it.

In a hypercube, there will be four coordinates - The 3-dimensional coordinates (x,y,z) and a hyper coordinate (H). If you give the ball a coordinate, for instance (120,115,40,65), it would be quite easy to find the exact point in any given hypercube.

Think of it like this:
In a 2D square, you can find the center by drawing a line on the middle of the width, and on the middle of the cross. Where the two points intersect is the middle. If all sides are 100 pixels, you can use this script to show it

draw_line(50,0,50,100);
draw_line(0,50,100,50);

If you bring this into 3D, by giving it depth, you would get a cube with two squares in it. These two squares are the two lines you drew in the rectancle, which has been extended from 1D to 2D. These two squares intersect more than one space (i.e., along a line through the middle of the cube). One of these squares is perfectly on the x-plane and the other is on the y-plane. If you add another square on the z-plane, you will have one spot where all the squares intersect. This is the center of the cube.

A tesseract is technically two cubes, with the same (x,y,z) coordinates, but with a different H-coordinate. Therefore, if you copy this cube and place it next to the previous one, and then draw lines between their vertices, you get a hypercube. If you take the squares that defined the center in the 3D-cube, and add another dimension, they will all intersect on a part of the hypercube. Then you could add a fourth cube, at the middle of the H-dimension, and this would give you the center of the tesseract.

Quite complicated, eh? I'm trying to make a sketch that can illustrate this better.

<{POST_SNAPBACK}>


A tesserect is not a 4 dimensional cube. A tesserect is the shadow of a 4 dimensional cube, which is impossible for us to comprehend. It seems I forgot to convey that 2D pong is playing pong in the shadow of 3D pong. 3D pong is playing pong in the shadow of 4D pong.

You cannot just change the rules of pong to make it look like your playing a game with a similar theme to pong, which is what it looks like your leading into, even if you don't mean it. The main thing to remember is that when you add another dimension to the possible position the bat can be in. (ie; Depth) you must be only able to hit the ball from one spot. This is the most important thing to remember.

Edit: I just completed the design specifications for the game. If you would like to make 4D pong a reality I think it is quite easily possible and I'd love to work on it with you.

Edited by StapleGun, 12 October 2007 - 12:18 PM.

  • 0

#10 Marius

Marius

    GMC Member

  • GMC Member
  • 203 posts

Posted 12 October 2007 - 03:32 PM

3D pong is playing pong in the shadow of 4D pong.


It would rather be like playing pong in the shadow of the shadow of 4D pong. Since the computer screen is two-dimensional. This seems to me the biggest issue, since you lose so much information when it drops down two dimensions.

Maybe I explained a little bad (after all, everything I know about this is what I have discovered myself). But I'm not planning to change the basic rules. In every pong, the objective is to stop the ball from leaving teh arena on your side.
In 2D pong, two edges are missing in the square. In 3D, two surfaces are missing in a cube. This would mean that in 4D, two cells should be missing in the tesseract.

I'm with you on the thought that it is quite easy to make in some ways, but I imagine it could be rather difficult to play. I would like to make it, but I'm working on another project right now. Though, as you say, the game would be quite easy to make. And we don't need good graphics, so it should be rather fast to complete.

If we can finish it in about 2-4 weeks, I would be happy to do so.
  • 0

#11 StapleGun

StapleGun

    GMC Member

  • New Member
  • 721 posts

Posted 12 October 2007 - 04:31 PM

The only pitfall in this project would be controlling the bat. You would need to be able to move the bat quickly in 3 dimensions, which means you'll probably have to work with 2 hands, which make get a little confusing.
  • 0

#12 netbreak

netbreak

    GMC Member

  • New Member
  • 171 posts

Posted 12 October 2007 - 04:47 PM

Has It's been metioned before, a third variable to pong, not just vertical and hroziontal movemente (2d) also color variable (3d) and maybe time (4d).

But seriously those aren't dimension, those are variables...
  • 0

#13 Freelancer Studios

Freelancer Studios

    GMC Member

  • New Member
  • 462 posts

Posted 12 October 2007 - 05:16 PM

I did some searching, and this picture should explain the entire concept of 4D pong:
Posted Image

If you don't get it, this picture shows that motion in 4D space requires six instances, or images, to split at the starting point, take the same path in mirrored ways, and converge on the end point (to be shown in 3D). So, the best way to do pong in 4D would be to allow the user to move along the X, Y, and Z axes, and must have the paddle at the end point in order to hit the ball, if it's not at the end point, then the AI scores a point, and vise-versa. Also, for the movement, I think when you move, it should rotate the paddle around the center of the "room", allowing the paddle to always face the ball when directly in it's path. Also, allow the player to move closer, or farther away from the center of the room. When the ball collides with a bat, take into account the motion and position of the bat and motion of the ball (in 3D physics of course) to calculate the end point.

I hope that clears things up a bit, and good luck (I may help you if you ask nicely).

FLS
  • 0

#14 Marius

Marius

    GMC Member

  • GMC Member
  • 203 posts

Posted 13 October 2007 - 10:56 AM

I was thinking that it would be better to move along the X,Y,H axis. So for example, if we give the room dimensions of 500x500x500x500, we could place the camera around (250,250,-200,250). Now we would see one paddle very close up, and the other one far away in perspective.
Of course, it could also work with moving in X,Y,Z axis.

The main problem is not making it work as we want, but to create a UI that's easy to understand. But I'd like to call this more an experiment than a game, so maybe it doesn't matter much if you need some insight to understand it.
  • 0

#15 StapleGun

StapleGun

    GMC Member

  • New Member
  • 721 posts

Posted 13 October 2007 - 01:24 PM

I did some searching, and this picture should explain the entire concept of 4D pong:

<Freelancer's Posted Image>

If you don't get it, this picture shows that motion in 4D space requires six instances, or images, to split at the starting point, take the same path in mirrored ways, and converge on the end point (to be shown in 3D). So, the best way to do pong in 4D would be to allow the user to move along the X, Y, and Z axes, and must have the paddle at the end point in order to hit the ball, if it's not at the end point, then the AI scores a point, and vise-versa. Also, for the movement, I think when you move, it should rotate the paddle around the center of the "room", allowing the paddle to always face the ball when directly in it's path. Also, allow the player to move closer, or farther away from the center of the room. When the ball collides with a bat, take into account the motion and position of the bat and motion of the ball (in 3D physics of course) to calculate the end point.

I hope that clears things up a bit, and good luck (I may help you if you ask nicely).

FLS

<{POST_SNAPBACK}>

Your image displays the net of cube in the fourth dimension, which helps me to convery why there needs to be 6 balls moving simultaneously in order for 4D pong to work. Your also correct in stating that the paddle must move in 3D and be at the end point of the balls movement path in order to hit the ball.

I was thinking that it would be better to move along the X,Y,H axis. So for example,  if we give the room dimensions of 500x500x500x500, we could place the camera around (250,250,-200,250). Now we would see one paddle very close up, and the other one far away in perspective.
Of course, it could also work with moving in X,Y,Z axis.

The main problem is not making it work as we want, but to create a UI that's easy to understand. But I'd like to call this more an experiment than a game, so maybe it doesn't matter much if you need some insight to understand it.

<{POST_SNAPBACK}>


It is impossible to display a room of 4 dimensions in any state of our 3 dimensional world, so I'm not quite sure how your going to just create a "room of dismensions 500x500x500x500" here. However, you are correct that the interface is going to be the main problem. How are we going to make the paddle move easily in 3 dimensions to the user.

I made a more indepth post on a more, well, technologically sound forum. I conveyed my theory of 4D pong and here is the exact post here. Sorry if it is a little redundant to my first post.

In traditional Pong (or 'Tennis for Two' for all you purists) is in the 2nd dimension. The bat can move only in the 1st dimension. (Up and Down) Now in 3D pong, the bat can move in the 2nd dimension (Up and Down, Left and Right). So naturally, in 4D the bat should be able to move in 3 dimensions right?

So where is the ball going to go? The ball moves in the same dimension the game is being played, which means it will be moving in 4 dimensions in 4D pong. This presents a problem for us in the 3rd dimension. If we were playing 4D pong in the 4th dimension we would see only one ball. However, since we are playing in 3D, mathematically speaking we will be seeing the balls shadow. (I think ...) To us it would look like 6 3D balls bouncing on all 6 sides of the cube which binds the bat. Think of a tesserect. There's 6 small chambers which seperate the outer cube from the inner cube. The 6 balls would be bouncing between the outer cube and the inner cube.

Another reason why there must be 6 balls is because in any pong game the bat can only hit the ball in one spot, or it will miss. In 4D pong, if the bat can move in 3 dimensions and there is only one ball. Then there could be hundreds of places the ball could be hit. It could be hit early as it enters the cube which bounds the bat movement, or the bat could hold back and return the ball later. If there are 6 balls all converging on a single point inside the inner cube, then the bat must be in that spot to return the ball.

As for two players, the second player would be controlling a single bat, but it would be mapped to the 6 faces of the exterior cube, so there would still be 3 dimensions of movement.


  • 0

#16 Marius

Marius

    GMC Member

  • GMC Member
  • 203 posts

Posted 13 October 2007 - 04:21 PM

It is impossible to display a room of 4 dimensions in any state of our 3 dimensional world


That is partly untrue. On a computer screen, you can display a 3D world, while the screen is only 2D. Also, the human eyes don't *really* see the world in 3D. But since we have two eyes, and things are shaded, we can understand what depth is.

It could be hit early as it enters the cube which bounds the bat movement, or the bat could hold back and return the ball later. If there are 6 balls all converging on a single point inside the inner cube, then the bat must be in that spot to return the ball.


This is also wrong. If you used a hyperdimensional ball (i.e. that moved through 4 dimensions), one ball would be enough. The paddle could move anywhere in one part (or one cube). The other player can move anywhere in the other part of the room. Since the room is 4D, player 1 can only touch the ball when it's H-coordinate is 0 and the other one can only touch it when it is 500.

Therefore, there will only be one time you can hit the ball, and not for a long time, as it seems as you think.

Am I right?
  • 0

#17 Freelancer Studios

Freelancer Studios

    GMC Member

  • New Member
  • 462 posts

Posted 13 October 2007 - 06:34 PM

Ok, you seem to have the mindset that this is 3D. You don't want that, you want 4D, you just don't understand it yet. If there is one ball, then you don't know when to hit it, if there are six, you can actually see where it's going to end up, in other words, where to hit it. Also, and pay attention, in order to show a 4 dimensional object in a 3 dimensional room, on a 2 dimensional screen, you must, and I stress MUST, show six objects. Think of a cube mapped to a 2D syrface. What does it look like? Herem see for yourself:
Posted Image

See the cross shape? That's the cube in 2D. See how there are six squares? If we mapped 3D pong to 2D, one square would represent the start point, one the end point, and the other 4 would be mirror images of the ball. So, in order to show 3D pong in a 2D room, you need 4 instances of the ball. In order to show 4D pong in a 3D room, you need SIX instances. Once again, six, six, six, six, six instances.....SIX INSTANCES!

Thank you, and please take no offence,
FLS

EDIT: Oh, and, at the moment, WE CANNOT SHOW A 4D ROOM IN GAME MAKER, so you just can't say "No, I think I'll make a hyperdimensional ball instead of 6 different balls." That doesn't work. Why? Becuase it's in 3D, NOT 4D, you're just making it act like it's 4D, but having to show it in 3D.

Edited by Freelancer Studios, 13 October 2007 - 07:25 PM.

  • 0

#18 Marius

Marius

    GMC Member

  • GMC Member
  • 203 posts

Posted 14 October 2007 - 11:51 AM

I guess I understand...

If I do, I conclude that it is impossible to make 4D pong. Because you can't display a 4D room perfectly, and thus it will naturally never be like it would if we really were living in four dimensions.

Then my theory is:
You HAVE to make it act like 4D, and display it in not 3D, but 2D.
3D games are not in 3D, they are in 2D. But they act like 3D. The cube on your picture is not in 3D, it is in 2D, but because the human mind are very, very used to understanding three rather than two dimensions, we think of it as a 3D object with nothing wrong about it.

As long as it acts and looks 4D, I'd say it can be considered a 4D-game.

I'm probably either wrong about this, or I just said the same as you, just in another way. But please forgive me, I'm 16 years, I shouldn't even know about this, and I've been studying this deeply for only two weeks.

And I'm not offended, I'm happy that you bother explaining.
  • 0

#19 StapleGun

StapleGun

    GMC Member

  • New Member
  • 721 posts

Posted 14 October 2007 - 12:04 PM

I actually can't stop thinking about this. I won't rest until I have a working model of 4D pong lol. Technically speaking, as long as there are 4 dimensions of ball movements it can be considered 4D pong, even if that does require there to be 6 balls working in parallel.
  • 0

#20 Freelancer Studios

Freelancer Studios

    GMC Member

  • New Member
  • 462 posts

Posted 14 October 2007 - 12:26 PM

I'm pretty sure you've got it. Sorry if I was a bit harsh. Oh and, by the way, I'm 15.

FLS
  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users