Non-Euclidean Worlds Engine [video]
youtube.com
youtube.com
At the time, I found out about Stencil Buffers, which did let us create a cube with various different rooms on the different faces: https://www.youtube.com/watch?v=5DKIP9N-OB4
Since then, there has been more "Portals" technique released, among which this blog post which seems to achieve a similar result: http://tomhulton.blogspot.com/2015/08/portal-rendering-with-...
Another game which uses a different type of geometry is HyperRogue: https://www.youtube.com/watch?v=2DtUJ_x_2Hc
It has a hyperbolic plane instead of a regular rectangular one.
Antichamber [1] is a first person puzzle game. Mind-bending. Overwhelmingly positive reviews on Steam.
Unseen Diplomacy [2] is a room-scale VR game using this technique to allow free walking (or crawling) around a much larger area than your room.
[1] https://store.steampowered.com/app/219890/Antichamber/
[2] https://store.steampowered.com/app/429830/Unseen_Diplomacy/
As for myself, I've been working on a 2d-space combat game set on the surface of a Poincaré Disk as a hobby over the past few years, not sure i'll ever do anything with it for real, but it's fun.
I always thought of them of as pre 'true' 3D engine hacks, but it was so cool to see them again in that video. Cooler still that it's essentially the same trick being used in Portal and I never tweaked to it
Demo/trailer https://www.youtube.com/watch?v=zpQRePtEpRw
https://en.wikipedia.org/wiki/Prey_(2006_video_game)
https://en.wikipedia.org/wiki/Id_Tech_4
This tech predates Valve's Portal, although I doubt it is the first attempt at this.
AFAIR it did; there was one point at which you emerged inside a semi-transparent container, at ~1/10 of your original size, and a full-sized alien was looking at you.
> This tech predates Valve's Portal, although I doubt it is the first attempt at this.
Portal was inspired by Narbacular Drop (2005).
Not meant as a middlebrow dismissal, this is neat stuff and I wished it was explored more in games!
I've always thought the "go to" solutions of instancing and fast travel were such immersion breakers for actually feeling you're in a virtual world rather than a glorified lobby.
Although, perhaps a non-Euclidean space would have downsides. It would be an interesting experiment at least. Playing with non-linear time (and not just "bullet time") in a multiplayer scenario would be interesting too.
It unfortunately seems to be Windows-only, though.
The only Windows-specific stuff is a bunch of MessageBox and other minor calls
In mathematics such non-Euclidean spaces are called manifolds. A manifold is defined as a set of Euclidean-like regions that are connected by transition map functions. That formalism is basically the same thing as these portals.
If you take this model but upgrade each cell to a little 3D euclidean region, then you could completely surround it by portals that connect it to the neighbouring cells. The edges of the portals wouldn't be visible. The smaller the euclidean cells, the better the approximation to the hyperbolic plane.
Surely the point of using weird geometries is to expose the player to weird effects that aren't achievable by simple euclidean planes and a bit of trickery with perspective or colours?
Instead, the goal my engine was to make the effect as subtle as possible, even unnoticeable.
For a similar approach, see e.g. Interactive Programming in C [3], which relies on re-loading a shared (recompiled) library. But this step could also be done by recompiling via tcc. There the persistent data lives just in the heap and pointers to it get passed to the next version of the library.
[0] https://github.com/cnlohr/noeuclid/blob/0831b9ce21620704257a... [1] https://github.com/cnlohr/noeuclid/blob/0831b9ce21620704257a... [2] https://github.com/cnlohr/noeuclid/blob/a8e1e038829686f39d48... [3] https://nullprogram.com/blog/2014/12/23/
I agree that is visually exciting and all that jazz, but this has nothing to do with Non-Euclidean Geometry... My surprise is that I though this video will give some 3D intuition on this topic, but nay.
1. A straight line may be drawn between any two points.
2. Any terminated straight line may be extended indefinitely.
3. A circle may be drawn with any given point as center and any given radius.
4. All right angles are equal.
5. If two straight lines in a plane are met by another line, and if the sum of the internal angles on one side is less than two right angles, then the straight lines will meet if extended sufficiently on the side on which the sum of the angles is less than two right angles.
It follows from those axioms that the sum of the angles of any triangle is 180°, but in that 3-room house, for instance, you could draw a triangle with 3 right angles, so it must violate the axioms.
Really cool.
Unfortunately the movement is rather hard on the eyes, relativistic motion is not what you are used to after all.