Directly view the source file: gist.github.com/Mashpoe/3d949... In case you want to easily open this in Visual Studio: github.com/mashpoe/hypercube Paper: hollasch.github.io/ray4/Four-...
Imagine Dwarf Fortress in 4D. It's already confusing enough that you only can see a 2D cross section of the 3D world, plus the harder to understand graphics would make it the most confusingest game of all time. That would be incredible.
I think there's potential for 4D games, but honestly Dwarf Fortress seems like the type of game that would be more of a novelty in 4D, literally just something to look at and go "look how crazy this is." I don't think it would be genuinely playable in any serious sense.
Actually, that wouldn't be impossible. Considering the cross section doesn't really have gravity, you could represent it as a 3d space, with elevation only really being represented as symbols. If you've played hyperrogue and messed around with any of the 3d modes, or played any kind of 3d trad roguelike (without gravity) then you probably know what I mean.
I've read the exact paper years ago when I was fascinated with 4D->3D->2D stuff for a while. Neat stuff, love the 4D miner project, very refreshing ideas.
I looked away for a second and when I looked back, I interpreted what I was looking at differently. So when the video started I could see it just turning. but after looking away and back, I could see what you meant. That's wild.
I'm wondering what kind of projection is that? Is this just a simple orthographic projection, that is, ignoring z and w coordinates? Or is this some kind of perspective? Edit: Okay, I looked through the source code and it seems that it goes like this: first it's a perspective projection from 4D onto a 3D hyperplane, and THEN the 3D "image" is projected AGAIN using perspective onto the 2D plane of view. A projection of a projection. Double perspective. Pretty cool.
I 100% agree! At the same time I tend to never use *OOP* (object-oriented programming) so I rarely get over the 300 mark. But when I code in Java (I really don't understand how java works) I would regularly end up writing like 50 functions lol. class main { public static void ligma(String [] args) { System.out.println("Life is too short to code in java please send help") } }