I'm quite curious as to whether the speed of light across the game space decreases instantaneously when you pick up an orb or whether the change in the speed of light propagates at the speed of... umm light.
Also they definitely need to have a black hole or 2 chucked in and maybe some miniature binary stars orbiting at relativistic speeds
Since the speed of light doesn't change in real life, and there is no answer at what speed a changing speed of light would propagate in real life, does it really matter how it's implemented in this game? My guess is that they took the easiest route and made it change instantaneously for the whole world.
The various visual effects seem to be render-time transforms, so I suspect the speed change is propagating instantly across the gameworld.
Can you think of a way to model a non-instantaneous propagation of this change that doesn't involve simulating oodles of photons wandering around the world?
Light from source A travels at the speed determined by the last speed-wavefront that passed it. This can be modeled by storing the speed on the sources, or by calculating from all gathered orbs in the world, and selecting the most-recent, when the time is calculated by (<time picked up> at <distance when picked up> at <speed of light before picked up>).
All such waves will be entirely contained within the previous wave because you cannot go faster than light and the speed only decreases, so all that matters is the speed before it was picked up, which is the speed the wave-front moves at (or does it move at the new speed? eh, pick either one, it doesn't matter.)
Then, for each orb picked up since the most-recent that affected the source, the time for the light to reach the observer is based on <distance to orb N> at speed <before orb N> until <distance to orb N-1>. Then repeat for orb N-1 until you run out of orbs. In this case, N would be the oldest orb whose wavefront has not yet passed the source.
It's a piece-wise calculation (the reverse of what's described), so it would be slower than instantaneous changes, but there's no need to model photons. And I would guess there's a reasonably-efficient way to calculate this on a GPU, so it could probably be real-time. Or it will be in a year or two.
It's instantaneous. There's no answer in physics for what should happen when you change the speed of light because that simply just can't happen. Therefore we didn't bother doing something like prorogation at the speed of light.
We don't do gravity calculations, along with a few other things because we didn't have time and they make the other effects hard to see.
In the future I would have liked to continue with the project and implement some of this though.
It's Motion Sickness Simulator 2012! No, seriously, I've never had motion sickness from FPS games but this one made me feel pretty uncomfortable. Those who do get motion sickness should consider themselves warned.
This game was not very much fun either, but there was some promise, because at the end once I'd gathered all the orbs by moving slowly and methodically, I enjoyed skating around the level and trying to go as fast as possible without bumping into things. Hopefully someone will use the engine (they say they're releasing it next year) to do something really good.
Really cool concept! It takes a little while to wrap your head around what's going on but as you get deeper into it things start to make sense. The faster you move backwards the more light you lose which is rather disconcerting.
It's totally worth getting to the end (took me about 10 minutes) so you can play around for a moment without the colour shift affects. Would be really cool to have a version where you could do that.
Some users have reported that the game may run on Windows XP and 2GB RAM. A known bug will crash the game on computers with some Intel graphics chipsets.
I have one of those hybrid graphics setups for laptops, so maybe that's the problem.
I may be off-base here, but isn't the length contraction backward? Things should appear closer as you approach the speed of light, not farther away. And, it should not matter if you move backward or forward to observe that effect, yet it does (try moving backwards).
Also, relativistic motion doesn't appear to affect the movements of the other actors, though it's kind of hard to tell for certain.
With my very limited understanding, my impression is this:
As you move in relativistic speeds, your eye hits more photos, even those going sideways (or backwards), because the photons at an angle are slower than your eye (imagine a car moving fast through the rain, even drops that go in the other direction will hit your windshield).
Therefore, your field of vision grows (you can see things behind you), but only when walking forward.
I haven't read anything about going backwards, but I imagine that your field of vision would shrink, as you are now faster than photons that would previously hit your eye. My guess is that you would only see photons coming directly to you from your front, until you reached the speed of light and went blind (or could see 360 degrees, moving forward).
You aren't listening to me. The speed of the photon is c in the direction it's traveling, a photon traveling due west is going north with no speed at all.
Here, speed is a measure of the magnitude of velocity. It's perfectly acceptable to describe velocity (or a component thereof) as speed in a particular direction.
I think I got it. Lengths will contract, but when you're moving toward something very quickly, the speed of light remaining constant, it will seem farther away. And the reverse is true when you're moving away from it.
It actually helps to just forget about relativity for a moment, and think about the angles light from distant objects will have to take to intercept you. Then it becomes more clear.
Yes, exactly. Your eye intercepts photons from a wider angle the faster you're moving, therefore you get a wider field of view, even seeing things behind you.
I'm not sure I'm missing a step going from "wider fov" to "things seem farther away", maybe I am...
We don't have some magic sensor that tells us how far away an object is -- it's all gleaned from the light, and distorting the angles, in particular, will throw off this perception of distance.
It would be nice to see a write up of exactly what effects they considered, though.
There are two separate effects at relativistic speeds.
One is that the actual size of things changes. That's length contraction.
But the other is that, because you are moving at such high speeds, how you observe objects is also affected. That's what StavrosK discusses in the adjacent post.
Looks very psychedelic. It's interesting how simulating a variable speed of light creates the same visual effect as that produced by ingesting psychedelic mushrooms or LSD. Not just the color spectrum, but also the distance/space distortions one reports while tripping. I guess those mushrooms in the game are not a coincidence.
Wonder what the connection is there then.
Our initial plans involved mushrooms that grew due to the time dilation. They were nice because they could grow straight up so we had easy time calculating past positions. We only later realized the connection that you could make.
This is both very interesting and a little painful for me. It's one of those ideas that I've always wanted to try, but never got around to. In a way it's nice that someone tried it anyway.
With 0x10c around and discussions on space combat realism I was thinking about some form of semi-realistic space "naval battle"/wargame.
So the first thing I thought was, well low-scale speed of light giving wonky graphics is both cool and help getting the feel of relativity, but what about some Homeworld or a Master of Orion type of game with relativity ingrained inside the game rules and mechanics? Probably the music sounding Homeworld-esque helped.
I imagine it would be quite difficult to have working multiplayer relativistic mechanics. So far, I can only see single player mechanics working, which would restrict the appeal of such a game.
Consider a turn-based game: a turn being irrevocably discrete and the same for all players, each entity, depending on its relative speed - hence time dilation/compression ratio - would get a different number of action points to spend each turn. You can globally compute each item action points because you're simulating the game universe.
You can extend this to virtually continuous time by compressing/dilating time depending on the player's relative reference frame, and then you could cap the flow of time so that min_flow=real_time or max_flow=real_time, or even mean_flow=real_time. I could see this becoming a problem for say, a FPS game where the player would feel relativity as time slows down or goes faster, but for a much more global game applying such a scheme would make him witness each unit/planet/whatever relative reference frame time dilations/contractions from a sort of god-like reference frame. In a single player scenario (where you don't need base time flow synchronicity between players) this god-player could even change his own reference frame by scaling his base time flow between say min_flow and max_flow.
I encourage you to look at Achron http://www.achrongame.com/ , a RTS with timetravel as an integral gameplay mechanic. It doesn't deal with relativity explicitly, but does have multiple independent timestreams.
It was considered but there are some equations that still need to be worked out. We'd need to store the history of each player but I believe we decided it could be done.
Once you get all 100 orbs and you get close to the speed of light you're in for a treat. It gets rid of the funny color saturation effects and you only see the Lorentz transformation.
I'd like to know the secret incantations to be able to modify the speed of light manually. (Once you walk fast as light, the game abruptly ends)
I think if you don't go under the white arch, you can stay indefinitely in Lorentz transformations mode. At least, I stayed that way for several seconds if I avoided that arch.
Man, the perils of tech. I read these comments over lunch at my desk, bought the book on my phone and read the first chapter. It's _way_ too easy to spend money these days.
On the plus side, I think I'm really going to enjoy this one. Thanks for the recommendation. :-)
Another recommendation for Redshift Rendezvous. It REALLY is science fiction, and not just fiction (most things classified "sci-fi" these days are pure fantasy; where's the science in e.g. Star Wars?).
It's a good story, (acceptably) good science (for a story book), and if I recall correctly from 20 years ago, very well written.
The goal we were given at the start of the summer was just to create a tech demo, the team tried to make a game out of it as much as possible though. The original plan was to release a tech demo at the end of the summer and then make a game with it after, the after part hasn't started yet though, and I'm not sure if it will.
The best definition I've seen for what constitutes a game is this: A game is an experience created by rules.
That captures what distinguishes a game (as an artform) from other media. You could throw in some qualifiers to perhaps narrow it down (is paying your taxes a a game?) but it's not really necessary.
With sound waves, your speed is added to the speed of sound and you hear a different note. With light, the speed remains at c, but perceived energy of the photons is still affected (energy must be preserved after all). And energy ~ wavelength ~ color.
You can also think about it being one of these "zero (weight of a photon at rest) multiplied by infinity (energy of objects moving at c) gives a finite number (actual energy of a photon)". The last number still behaves nicely.
So, the speed of an observer affects its perceived energy of light. How does "conservation of energy" apply? (I don't know what is contributing to the energy of this system.)
If you imagine an idealized light source, where photons come into existence out of nowhere, then there is no conservation of energy (energy is being created). But in a more realistic model where photons are emitted as a result of electron excitation, say, energy is conserved because the electron recoils when firing off the photon, so the extra observed energy of a blueshifted photon can be found in the extra kinetic energy of the electron as observed in that same frame of reference.
Cosmological redshift comes from general relativity, not the SR Doppler effect. Local motion does produce a shift on top of that, but that's not all redshift. Nearby galaxies are actually blue shifted.
I was looking forward to this having seen the video, but it crashes every time when I click on from the screen that shows the controls - no reason given. I have 8Gb of RAM and good performance attributes in a Lenovo Z570, so there's nothing immediately obvious in my hardware environment.
What a great idea. The "rainbow colors everywhere" effect if kinda annoying, but the concept is awesome. As they say, that's what I would expect from the MIT Games Lab.
It's _barely_ playable on my 2011 MBA. Seems like the limitation is on the CPU side though. Either it's fairly unoptimized, or this relativistic stuff is just really demanding.
It's quite awesome anyways. Funnily if you change direction, that alone triggers no relativistic effects.
I ended up in one of the longest, stupidest arguments of my life trying to add my two cents into a discussion about whether to wait on the new MacBook Air or jump on the current one.
The person mentioned they would be doing some gaming on it, so I pointed out that the new Air would almost certainly have Intel HD 3000 graphics and that the Nvidia chipset in the older MacBook Air was better overall for that sort of thing.
Someone proceeded to try and rip me a new one, chastising me for having the gall to recommend purchasing a previous generation laptop. I said I owned an Intel HD 3000 MacBook Pro and even on that vs the Nvidia 320M MacBook Air, the Air performed better when it came to gaming.
He called me a liar, said it wasn't possible and that the HD 3000 chipset couldn't be the culprit. Here we are a year later, and I've been proven right countless times. I'm sure this is interesting to nobody, but it's nice to get a little vindication when someone was laying into you that hard.
It had to be written in C# in the Unity Engine so it's kinda slow. The other issue was that I had no access to the culling system besides just turning it off so every object in the scene is rendered every frame.
I think the limitation would be on the GPU side, or at least it was on the system I was testing on.
The thing is, most game engines don't even simulate Newtonian physics very accurately; it would be much too computationally expensive to do so. Gravity only works on certain objects and is usually a constant acceleration applied along the vertical Cartesian axis, objects are composed of at most a couple dozen perfectly rigid parts attached together at defined joints, liquids and particles are simulated in batches using only rough heuristics, and so on. If we were to allow arbitrary changes to fundamental physical constants, the game engine would have to simulate the world from the quantum scale up.
That's a hard damn problem. There are some extraordinarily well-funded research groups that are struggling to model any reasonably large number of interactions at that scale. State of the art supercomputing clusters can currently simulate systems of hundreds of thousands of atoms, not even in real-time, and they're still making some assumptions along the way, which might not hold true if you were to arbitrarily modify any fundamental constants.
You could probably write a physics engine that passably pretends to simulate some (non-arbitrary!) changes in fundamental constants. But it would be hard to guess what matter would even look like for different values of, say, Z0.
107 comments
[ 2.8 ms ] story [ 159 ms ] threadAlso they definitely need to have a black hole or 2 chucked in and maybe some miniature binary stars orbiting at relativistic speeds
Yes, I imagine it would affect gameplay quite a bit.
Can you think of a way to model a non-instantaneous propagation of this change that doesn't involve simulating oodles of photons wandering around the world?
Light from source A travels at the speed determined by the last speed-wavefront that passed it. This can be modeled by storing the speed on the sources, or by calculating from all gathered orbs in the world, and selecting the most-recent, when the time is calculated by (<time picked up> at <distance when picked up> at <speed of light before picked up>).
All such waves will be entirely contained within the previous wave because you cannot go faster than light and the speed only decreases, so all that matters is the speed before it was picked up, which is the speed the wave-front moves at (or does it move at the new speed? eh, pick either one, it doesn't matter.)
Then, for each orb picked up since the most-recent that affected the source, the time for the light to reach the observer is based on <distance to orb N> at speed <before orb N> until <distance to orb N-1>. Then repeat for orb N-1 until you run out of orbs. In this case, N would be the oldest orb whose wavefront has not yet passed the source.
It's a piece-wise calculation (the reverse of what's described), so it would be slower than instantaneous changes, but there's no need to model photons. And I would guess there's a reasonably-efficient way to calculate this on a GPU, so it could probably be real-time. Or it will be in a year or two.
We don't do gravity calculations, along with a few other things because we didn't have time and they make the other effects hard to see.
In the future I would have liked to continue with the project and implement some of this though.
magnet:?xt=urn:btih:1828bafc3135e0b326d31c5030003d7004a86433
That aside... it's not the first game/toy about illustrating relativistic effects that I've seen before, for instance there's http://lightspeed.sourceforge.net/ and a funny little Flash game that I've tried: http://www.testtubegames.com/velocityraptor.html . Neither of them were very much fun.
This game was not very much fun either, but there was some promise, because at the end once I'd gathered all the orbs by moving slowly and methodically, I enjoyed skating around the level and trying to go as fast as possible without bumping into things. Hopefully someone will use the engine (they say they're releasing it next year) to do something really good.
Looks like the site it was hosted in is gone, though.
http://mathforum.org/kb/message.jspa?messageID=274527
It's totally worth getting to the end (took me about 10 minutes) so you can play around for a moment without the colour shift affects. Would be really cool to have a version where you could do that.
Well done to the creators.
Just installed direct X from microsoft's site, still no joy. Crashes just after intro.
Any other libraries I might be missing?
Just read this on the site:
Some users have reported that the game may run on Windows XP and 2GB RAM. A known bug will crash the game on computers with some Intel graphics chipsets.
I have one of those hybrid graphics setups for laptops, so maybe that's the problem.
Also, relativistic motion doesn't appear to affect the movements of the other actors, though it's kind of hard to tell for certain.
As you move in relativistic speeds, your eye hits more photos, even those going sideways (or backwards), because the photons at an angle are slower than your eye (imagine a car moving fast through the rain, even drops that go in the other direction will hit your windshield).
Therefore, your field of vision grows (you can see things behind you), but only when walking forward.
I haven't read anything about going backwards, but I imagine that your field of vision would shrink, as you are now faster than photons that would previously hit your eye. My guess is that you would only see photons coming directly to you from your front, until you reached the speed of light and went blind (or could see 360 degrees, moving forward).
The observable change is the separation between photons (wavelength) caused by a moving source.
(correct me if I'm wrong, I'm terrible at physics!)
It actually helps to just forget about relativity for a moment, and think about the angles light from distant objects will have to take to intercept you. Then it becomes more clear.
I'm not sure I'm missing a step going from "wider fov" to "things seem farther away", maybe I am...
It would be nice to see a write up of exactly what effects they considered, though.
One is that the actual size of things changes. That's length contraction.
But the other is that, because you are moving at such high speeds, how you observe objects is also affected. That's what StavrosK discusses in the adjacent post.
So the first thing I thought was, well low-scale speed of light giving wonky graphics is both cool and help getting the feel of relativity, but what about some Homeworld or a Master of Orion type of game with relativity ingrained inside the game rules and mechanics? Probably the music sounding Homeworld-esque helped.
Consider a turn-based game: a turn being irrevocably discrete and the same for all players, each entity, depending on its relative speed - hence time dilation/compression ratio - would get a different number of action points to spend each turn. You can globally compute each item action points because you're simulating the game universe.
You can extend this to virtually continuous time by compressing/dilating time depending on the player's relative reference frame, and then you could cap the flow of time so that min_flow=real_time or max_flow=real_time, or even mean_flow=real_time. I could see this becoming a problem for say, a FPS game where the player would feel relativity as time slows down or goes faster, but for a much more global game applying such a scheme would make him witness each unit/planet/whatever relative reference frame time dilations/contractions from a sort of god-like reference frame. In a single player scenario (where you don't need base time flow synchronicity between players) this god-player could even change his own reference frame by scaling his base time flow between say min_flow and max_flow.
Try modelling the twin paradox that way, for instance...
Also, be careful running with 100 orbs. I ran into a fence and got stuck on it.
http://www.amazon.com/Redshift-Rendezvous-John-Stith/dp/1880...
On the plus side, I think I'm really going to enjoy this one. Thanks for the recommendation. :-)
It's a good story, (acceptably) good science (for a story book), and if I recall correctly from 20 years ago, very well written.
Technically, yes: It has a goal (collect orbs) a challenge (navigate environment) and a difficulty curve (increased distortion).
But it's really a tech demo, though.
That captures what distinguishes a game (as an artform) from other media. You could throw in some qualifiers to perhaps narrow it down (is paying your taxes a a game?) but it's not really necessary.
Although your particular example is kind of amusing, given the prominent role of the Prisoner's Dilemma in discussing elementary game theory! :P
You can also think about it being one of these "zero (weight of a photon at rest) multiplied by infinity (energy of objects moving at c) gives a finite number (actual energy of a photon)". The last number still behaves nicely.
A sandbox approach might be good. I found myself wanting to experiment and change the speed of time myself.
It's quite awesome anyways. Funnily if you change direction, that alone triggers no relativistic effects.
e: Ah, but it actually runs fine on my 2010 unupgraded 11" Air. I'd guess a higher resolution screen would hurt performance, though.
The person mentioned they would be doing some gaming on it, so I pointed out that the new Air would almost certainly have Intel HD 3000 graphics and that the Nvidia chipset in the older MacBook Air was better overall for that sort of thing.
Someone proceeded to try and rip me a new one, chastising me for having the gall to recommend purchasing a previous generation laptop. I said I owned an Intel HD 3000 MacBook Pro and even on that vs the Nvidia 320M MacBook Air, the Air performed better when it came to gaming.
He called me a liar, said it wasn't possible and that the HD 3000 chipset couldn't be the culprit. Here we are a year later, and I've been proven right countless times. I'm sure this is interesting to nobody, but it's nice to get a little vindication when someone was laying into you that hard.
I think the limitation would be on the GPU side, or at least it was on the system I was testing on.
That's a hard damn problem. There are some extraordinarily well-funded research groups that are struggling to model any reasonably large number of interactions at that scale. State of the art supercomputing clusters can currently simulate systems of hundreds of thousands of atoms, not even in real-time, and they're still making some assumptions along the way, which might not hold true if you were to arbitrarily modify any fundamental constants.
You could probably write a physics engine that passably pretends to simulate some (non-arbitrary!) changes in fundamental constants. But it would be hard to guess what matter would even look like for different values of, say, Z0.
However, this may be the Portal 2 Episode 1 game mechanic.