
4D Toys: how objects bounce and roll in 4D – paper accepted to SIGGRAPH 2020 - doppp
https://marctenbosch.com/news/2020/05/siggraph-2020-technical-paper-n-dimensional-rigid-body-dynamics/
======
zokier
It would be interesting to see how it would look with the 4D scenes properly
projected instead of cross-sectioned. I mean that is how we get 3D scenes on
our puny 2D displays; we don't generally do the sort of cross-sections for 3D
like they show in the flat-land example except in some specialized
applications. Of course cross-section is still valid method of visualization.

I don't know enough about higher dimensional graphics to be able to say if you
would be able to do projection directly from 4D->2D (as our displays still are
2D), or if it is better to go 4D->3D->2D.

Bit disappointing that the video spends a lot discussing general 4D stuff and
less about the dynamics part which is the actual subject.

Here is video of one of the other visualization systems referred in the paper
which if I interpret it correctly does projection with depth of field
[https://www.youtube.com/watch?v=dT5YCs84jJU](https://www.youtube.com/watch?v=dT5YCs84jJU)

~~~
mettamage
Well, we get 3D scenes/projections on a 2D screen by being in a 3D
world/context and looking at a 2D screen. With that I mean to say that I think
(not sure) a 2D image of a 3D projection can only _feel_ 3D if you're in a 3D
world.

This also means such a thing should be possible for living in a 2D space and
then projecting a 2D world on a 1D screen.

If you're going to play with 3D projections of 4D objects, then in order for
it to really feel 4D we need to live in a 4D world. In that sense, this is
quite similar to living in a 2D world while seeing a 3D projection. That's way
more trippy.

To recap:

Feel 3D: 3D context -> 3D projection -> 2D screen

Feel 2D: 2D context -> 2D projection -> 1D screen

Feel 4D: 4D context -> 4D projection -> 3D screen

What we can do for 4D: 3D context -> 4D projection -> 3D screen

Compare issue with 3D: 2D context -> 3D projection -> 2D screen

I hope this makes sense (and I hope I have it right).

Man, this is tough to write about. I'm not sure if I fully understood all the
nuances of your comment.

~~~
Endlessly
Makes me wonder if the human brain if born into a 4D world would be able to
function, or if fundamentally it is impossible for the brain to process a 4D
word.

------
throwaway_pdp09
I am genuinely surprised for a long time that I've not seen 4D monsters in
films. It has been so obvious to me there's potential there.

It would of course be a flat 2D projection of a 3D slice through a 4D
creature, so it would look like a smoothly morphing between different
creatures, and in and out of existence so we've sort of had morphing for a
long while (since Willow, C. 1985) but... there's potential.

In case I missed it, any films actually done that?

~~~
anigbrowl
Annihilation (2018)

Spoiler, obviously:
[https://www.youtube.com/watch?v=uBsJgceM0KI](https://www.youtube.com/watch?v=uBsJgceM0KI)
\- if you haven't seen it cannot recommend it highly enough, just wait and
watch the whole thing.

~~~
hombre_fatal
Perfect music for that scene.

One thing Annihilation did for me was really get me to the point mentally
where I could start to appreciate just how mindblowing it is to encounter such
different life like in the movie. By the time the end of the movie came
around, I could really get a grip on how horrifying the "choreographed" scene
would be, or encountering a floating mandelbrot set, c'mon. That is pure
terror.

And that's not an easy perspective to hold on to in a world that barrages me
with so many sci-fi/fantasy movies and ideas.

~~~
peter_l_downs
if you like those sounds you may like Burial, of which it immediately reminded
me

[https://www.youtube.com/watch?v=v27jdRub2GQ](https://www.youtube.com/watch?v=v27jdRub2GQ)

------
bawana
How does one model 4D gravity? Consider the 3D to 2D analogy. If the 2D person
lived on a planet, that would be a circle. Then 2 planets orbiting each other
would appear to the 2D person as two line segments oscilating up and down
(because the 2D person cannot see the entire circle, just the edge view).
Based on the velocity of oscillation and the separation of the line segments,
a 2D newton could come up with an analogous law of gravition with an inverse
square relation. But if two 3d planets were orbiting transversely through the
2D plane of our inhabitants, the 2D person would see two separate line
segments growing and shrinking although the line segments could maintain a
constant distance of separation. The velocity of growing and shrinking would
be changing even though their separation was constant. Extending this analogy
to our universe makes me wonder if our calculation that the universe is
expanding is just an illusion. Rather, at astronomical distances, our universe
could be traversing 4 dimensions. And what we perceive as an accelerating
expansion of the universe is just motion into the 4th dimension. And if we
could travel into that dimension, we might be able to get to places that
appear far away but are actually not. Though it sounds far fetched, it also
might explain the stuff that is postulated to happen at the quantum scale-
where quantum fluctuations are postulated to occur. The only thing we would
need to be able to do is to 'coordinate' the fluctuations of lots of adjacent
voxels of space. And then we could wander through 4D space.

------
aabajian
If you like this, then checkout the presentation on Geometric Algebra from
2019 SIGGRAPH:
[https://www.youtube.com/watch?v=tX4H_ctggYo](https://www.youtube.com/watch?v=tX4H_ctggYo)

You can then play around with objects in 3D, 4D, and beyond:

[https://enkimute.github.io/ganja.js/examples/coffeeshop.html...](https://enkimute.github.io/ganja.js/examples/coffeeshop.html#qcga3d_points_and_more)

~~~
xixixao
This amazing, thanks for the pointer!

------
kensai
Marc is amazing. Can't wait for his masterpiece game to be finally completed!
[http://miegakure.com](http://miegakure.com)

If you really want to enjoy 4D Toys in the meantime download his tablet game:
[http://4dtoys.com](http://4dtoys.com)

------
AlbertoGP
Wow, the title does not make it justice: I only went to look at it in an idle
moment after lunch. Much better to transcribe the beginning of the video:

 _4D Toys is a toy box filled with 4-dimensional toys._

 _By 4-dimensional I mean that they exist in a world with 4 dimensions of
space and 1 dimension of time, instead of 3 dimensions of space and 1
dimension of time._

 _It turns out that the rules of how objects bounce, slide and roll around can
be generalized to higher dimensions, and this unique toy lets you experience
what that would look like._

~~~
dang
Ok, let's take the title from the video instead. Thanks for pointing this out!
Sometimes the best work hides behind dry or modest language.

It's easy enough, albeit annoying, to brush away the inflated mediocre. It's
so much harder to locate the unseen gems.

Edit: ah, I see - the video is from 2017, and there was a thread back then
too:
[https://news.ycombinator.com/item?id=14471931](https://news.ycombinator.com/item?id=14471931).
I guess we'll make an ugly hybrid of the titles.

~~~
chadmeister
Thank you this is still much better than the useless original title

------
dllu
Bivectors are an elegant choice for dealing with rotations be cause they are
isomorphic to skew-symmetric matrices, which are the Lie algebra of the
special orthogonal group SO(n). The Lie group SO(n) is also known as
n-dimensional rotation matrices.

In general, using Lie groups for this sort of thing is great. Things like
time-derivatives become very natural in any dimension.

~~~
centimeter
Correct me if I'm wrong - I'm just trying to make sure I understand the
generality of your statement. 3-bivectors are commonly referred to as the
"axis angle" representation, and have an obvious embedding as the lie algebra
to the lie group of rotation quaternions. [x,y,z] -> 0+xi+yj+zk -exp-> rotator
quaternion.

Does such a thing exist at higher dimensions? I vaguely recall something about
having complex numbers for 2D rotation, quaternions for 3D rotation, and
octonions for (I'm guessing) 4D rotation, but I'm curious if the loss of
associativity with octonions screws with this relationship somehow.

~~~
h-cobordism
> Does such a thing exist at higher dimensions?

Yes, everything in your first paragraph extends to any number of dimensions
(replacing "quaternion" with "rotor").

> I vaguely recall something about having complex numbers for 2D rotation,
> quaternions for 3D rotation, and octonions for (I'm guessing) 4D rotation

Bivectors and rotors faithfully represent rotations in any number of
dimensions. The octonion product can't, because as you said, it's not
associative, but rotations obviously have to compose associatively.

------
elil17
If you find this interesting, you'll really love the short book "Flatland: A
Romance of Many Dimensions." It's a deep dive into what a dimension really is,
intuitively, and also satirical commentary about Victorian society.

[https://www.gutenberg.org/files/201/201-h/201-h.htm](https://www.gutenberg.org/files/201/201-h/201-h.htm)

------
jbinney
The comparison to children playing with blocks makes me wonder: If you spent
long enough playing with these 4D toys, would you develop a deeper intuition
for the 4th dimensional shape of the objects?

~~~
kmill
I've played with some programs I made to explore 4D objects, and, yes, you do
gain some intuition.

Interestingly, I was told one of George Boole's daughters got lessons from a
guy on 4D objects by using colored wooden blocks. She really picked it up, and
later in life mathematicians would consult her about intersections of 4D
polytopes.

------
echelon
This would make for a really fun video game. Think about a 4D shooter in the
vein of Portal.

I imagine that after awhile the human brain would learn to recognize patterns
in 4D spatial reasoning.

~~~
beaumayns
I've been working towards making something like a 4D Descent, but I keep
getting sidetracked by problems like 4D physics, collision detection, and
mainly how to model interesting 4D objects.

What Marc's done with Miegakure, from what's publicly visible, is pretty
incredible. I have no idea how he's managed to seemingly create a coherent 4D
world while only being able to view a slice of it at a time. I guess it's a
bit like using ed instead of a modern text editor.

~~~
gliese1337
Ditto. My solution so far has been to simply ignore the problem of modelling
interesting objects--the only objects are components of the environment made
of simple geometric shapes, and the game challenges are all related to
navigation. I've been fiddling off-and-on with procedurally generating some 4D
creatures for a sequel game (e.g., by using a genetic algorithm to evolve 4D
shapes that can walk), but that's a _long_ way off.

~~~
beaumayns
Yeah, I've mostly ignored it so far as well. I did get Dual Contouring working
on 4D signed distance fields, but the resulting meshes are kind of janky. My
thoughts are to eventually get boolean operations working on arbitrary
tetrahedral meshes and do some CSG, or create a Blender-style 4D mesh editor.

Another game idea is The Incredible Machine in 4D, but it would be so hard to
play, and even harder to design the puzzles.

------
pnathan
I love 4D graphics.

Many years ago, in my freshman year of college, I wanted to create a 4d space
game, and spent about a year grinding out an OpenGL rendering engine. I taught
myself the requisite mathematics and realized that my conception of hyperspace
as operative in my game, was fundamentally wrong. So I moved on. Still have
the code laying around, although I lost the Linux port I ginned up at one
point. Really should polish it and release it. :)

~~~
beaumayns
I'm curious, in what way was your conception wrong? Sounds like it could still
be interesting.

~~~
pnathan
my initial thought was that hyperspace would allow a _shortening_ of the
distance traveled from point P0(x,y,z,q) to P1(x,y,z,q). Since I was _really_
into space combat games at the time... that would have been really cool!

However, - and this is obvious when you work through it - when you use
Euclidean distance
([https://mathworld.wolfram.com/Distance.html](https://mathworld.wolfram.com/Distance.html)
\- see the General equation), the distance travelled increases, thus obviating
a key part of my game, which was to "jump" through hyperspace to shorten the
trip. I didn't care to rewrite math enough to make the game work out, and
since I'd spent so much time learning math, graphics,and larger-scale program
design, I was burnt out. It was a great experience.

One day I might return to the notion, but it'll be around the hyper-
dimensionality experience, not as a combat game. I don't like the slice mode
of 4D games qua the OP, I far prefer projections from 4D as a way to
understand the 4D realm.

------
jayd16
I'll ask any physicists out there. A 4th spatial dimension probably doesn't
exist, right?

Even if we couldn't perceive shapes across a 4th dimension, we would still
perceive things moving through the 4th dimension like we see in 4D toys. In
reality we don't ever see anything like this (spatially anyway). Is that
correct?

~~~
pujjad
If there were 4 spatial dimensions + 1 time dimension we would end up in an
unstable universe.

Ehrenfest (1917/1920) studied the hydrogen in n dimensions and concluded for
n> 3 that neither classical atoms nor planetary orbits can be stable, because
the inverse square law of electrostatic and gravity becomes an inverse cube
law. When n > 3 there are no stable orbits to the two body problem: an
incoming light body attracted by a heavy one would either escape to infinity
or get sucked into collision.

For n = 3 we get stable elliptic orbits or non-bound parabolic and hyperbolic
orbits.

Collision only occurs when the lighter body heads directly towards the heavy
body within 2R (R being the heavier body's radius), ie. the impact parameter
is zero [2]

[1]
[https://doi.org/10.1002/andp.19203660503](https://doi.org/10.1002/andp.19203660503)

[2]
[https://en.wikipedia.org/wiki/Impact_parameter](https://en.wikipedia.org/wiki/Impact_parameter)

edit: grammar

~~~
Yajirobe
Hooray! We disproved string theory!

------
jfkebwjsbx
There was an indie game that had 4D puzzles (as in actual 3D + time), and the
person/team behind the game developed a framework and map editor to work with
those properly...

I cannot recall the name, but it looked awesomely complex!

~~~
thatcherc
Was the game Miegakure [0]? It has the same author as this paper/post, and
pretty much seems to be the premiere 4D game. The parent link says that the
research shown here was developed for Miegakure, so it might be the game
you're thinking of.

[0] - [https://miegakure.com/](https://miegakure.com/)

~~~
drdeca
probably not, because they are describing a 3+1 game where there are
substantial time-manipulation puzzles.

Wish people wouldn't call "game with time manipulation mechanics" "4d" though.

I do remember there was a game which was like, an rts, but with time
manipulation bits.

Ah, but that didn't really feature 3d movement, so probably not what they are
thinking of?

I also remember a 4d spaceship shooter game..

------
miohtama
Has there been any attempts to visualize and project 4D objects to 3D space so
that we could "grasp" them better? E.g. using colours, shadows, etc.

------
rcpt
3-manifolds have some pretty great descriptions to
[https://blogs.scientificamerican.com/roots-of-unity/a-few-
of...](https://blogs.scientificamerican.com/roots-of-unity/a-few-of-my-
favorite-spaces-the-three-torus/)

Bill Thurstons Three-Dimensional Geometry and Topology is a great read

------
peter303
SIGGRAPH 2020 in July is all online because Washington DC is keeping their
convention center as a makeshift hospital through the summer. I have not seen
revised registration fees for this conference yet and hope they are reduced. I
attend approximately every other year and its on the pricey side.

------
slowhadoken
Oh yeah this is old. I think this is the same guy making Miegakure @
[https://miegakure.com/](https://miegakure.com/)

------
dang
A related thread from 2017:
[https://news.ycombinator.com/item?id=14471931](https://news.ycombinator.com/item?id=14471931)

------
guardian5x
I would like to see the 4th dimension projected into 3d and not just a slide,
same as you could project the 3d into 2d, by showing further objects smaller
and closer objects bigger.

~~~
LolWolf
You can absolutely do this (and it would be quite interesting to try with a VR
headset, e.g.!); the idea is a special case of the _projective transform_ [0]
in 4 dimensions. It may make for a cool demo.

\-----

[0]
[https://en.wikipedia.org/wiki/Homography](https://en.wikipedia.org/wiki/Homography)

~~~
jimmySixDOF
Absolutely this should be in VR and I'm a little bit surprised it isn't tbh

edit: [1] [https://4dtoys.com](https://4dtoys.com)

------
DreamScatter
Check out my geometric algebra implementation in Julia language at
[https://github.com/chakravala/Grassmann.jl](https://github.com/chakravala/Grassmann.jl)

------
kmbriedis
The most surprising aspect of this is that it's a solo paper accepted for a
major conference!

------
robofanatic
This is super interesting but hurting my brain. A person in 3D can see 3D, 2D
and 1D. But a person in 2D can only see 1D. How can a person living in 2D
world see 2D things like Circles.

~~~
bespokealgo
What we (3D beings) see is a 2D projection of the world around us, 2D beings
would indeed see a 1D projection of their 2D world (e.g. we only really see a
circle when looking at a sphere). Just as we use depth perception to
differentiate 3D objects from 2D ones, 2D beings would also be able to discern
a circle from a line in a 2D world.

------
gdubs
This is an awesome accomplishment. I remember seeing this work when it first
came online years back — pretty mind-blowing, especially some of the
transitions between [dimensions] in his flagship game.

------
pier25
If you liked that video check this other one by Carl Sagan:

[https://www.youtube.com/watch?v=N0WjV6MmCyM](https://www.youtube.com/watch?v=N0WjV6MmCyM)

------
nimish
Awesome! Would be cool to see the extension in non-flat spaces as well, like
geometry with a low "speed of light". Clifford algebras can handle that too.

------
beefield
Wonder if there is somewhere a list or some document of "interesting" 4d
shapes? For example klein bottle, which is the only one I know of.

~~~
shezi
That's a complicated question you're asking. It belongs to differential
geometry, which I specialised in 15 years ago.

So, you're looking for interesting 4 dimensional manifolds. Problem is, there
are many of those. Too many to count, iirc.

Contrast this with the 3 dimensional manifolds, of which there are only eight
(and simple compositions of these eight).

Now, unfortunately, the Klein bottle is a 2 dimensional manifold (it's surface
is the manifold, and that is locally isomorphic to a R^2). It's interesting
because it does not have an embedding into 3d space, unlike most other 2d
manifolds, so you need to embed it into R^4. I don't know if there is a list
of these.

I can look up more details and give more pointers if there is interest.

Interesting side note: the Klein bottle was originally called "kleinsche
Fläche" (Klein surface). When saying this German word with an English voice
it'll sound like "Kleinsche Flasche" which translates to "Klein bottle".

------
BFatts
That's really cool!

------
EL_Loco
Why do these n-dimension demos always have the little 2d man seeing the world
as if he could fly away from his 2d plane and see it from above? In that
example where narrator says the 2d man would be intrigued about the circle
floating, he would actually only see a line moving up and down. The ball
crossing the plane would be just a line stretching and shrinking. If he lived
in a 2d world, what he could actually see would be /pretty/ limited.

~~~
jblow
He would be able to see a circle the same way you can see a sphere. Do you
feel like you can only see discs, not spheres?

~~~
FPGAhacker
How different would a 2d square look projected onto a 1d view, vs a circle?

~~~
javajosh
If you rotate a square, then the length will oscillate. A circle will remain
fixed (but presumably would have surface detail to clue you in that it's
rotating.)

