"ok, now that Hyperbolica is finished I'll just do something easy like, idk, golf in 4D?" several years from now: "now that I've created a time machine I can kickstart the creation of Unreal Engine's 4D project support, this is so I can make the grass texture on this mini-golf course look a little less flat"
"now that 4D golf is finished, I'll just do something easy like, idk, game about actually realistically falling into a blackhole, swapping space and time there and rendering the ringularity"
If he keeps making something simple at an exponential rate, he should be doing full, feature/physics complete planetary simulations with full periodic tables in 30 years
I feel it's not just a the technical hurdles, it's also game design of a fully 4D-supporting game, where it isn't just a gimmick, but something that is crucial for the gameplay which you can learn, meaningfully interact, progress and have fun with...
Now that my game about actually realistically falling into a blackhole, swapping space and time there and rendering the ringularity is finished, I'll just do something easy like, idk, game about simulating the multiverse with evolution and human civilizations with scrollable timelines across all realities including the one we're living in.@@seekvapes9641
"I don't really want another multi-year project like Hyperbolica, so this will probably be a relatively short and minimalist game that I just spend a couple months on and release." - CodeParade, July 2022
Hearing that was the hardest I've laughed in a while. This project is an insane challenge for anyone to set themselves. He could probably get multiple academic papers out of it.
"For every triangle you can see, there's probably at least 10x as many that you can't see." Sounds like someone needs to invent 4D occlusion culling, lol.
watch him invent a 4D occlusion culling algorithm to play mini-golf and it being better at generic rendering than any other process by orders of magnitude.
There is actually a nice way to extrude a shape made of triangles into a shape made of tetrahedra in a way which always guarantees the edges always line up. The mathematical structure which accomplishes this is called a simplicial set. It's basically a way of organizing simplices and gluing data to form shapes. The key ideas to how it works are 1) Having the edges of each triangle ordered so that the way they're glued to each other is compatible with that order 2) Keeping track of "degenerate" simplices. For instance, you can consider a line as a degenerate triangle where one edge has length 0. This of course wouldn't need to be rendered. It would just go into the algorithm for tetrahedralizing the prisms. From here, the Cartesian product of the simplicial interval with the simplicial set which represents your surface will produce a simplicial set for the solid, and all the edges will naturally line up. I believe simplicial sets are implemented in Sage if you want to check it out.
They'd react the same way someone today would. They weren't cavemen lol. At least I wasn't. We have nothing today that isn't something that hasn't existed since at least the 80s. It's all just better and cheaper now.
In 2003 I was playing a game that came out in 1998 called "Hypercube: a 4d game" by "Harmen van der Wal" . It wasn't as good as this of course, but I'd call it a basic 4d golf game.
In a strange coincidence, it is almost exactly 20 years ago that I first read Flatland and was thinking about 4D geometry for the first time. Though the notion of a 4D game was probably beyond me back then.
Tantan?? Is that really you? Come on. As a based Rust-lang enjoyer, you should know that for anyone with a solid grasp of mathematics, this isn't exactly a ground-breaking concept. These ideas aren't new. Only thing they'd be impressed about is the rendering maybe.
Something tells me you're gonna be one of those programmers that falls ass backwards into creating an entirely new standard in generalized engine building that gets picked up by everyone. Like the adoption of quaternions in game physics
Dude... you are really breaking new ground and discovering new frontiers here. Things that no one has ever done before. Please keep making these, documenting all the problems you encountered making a 4D game. I find these problems fascinating. These are problems you wouldn't even know existed unless you were trying to build a 4d game world. So cool.
Miegakure has been in development since 2009 and they've surely encountered these issues too. There's also 4D Miner which is gaining popularity recently. Not to discredit CodeParade, but this is far from being the first time someone explores these concepts in gaming.
I love how there's so much nonsensical random content on UA-cam, but every so often, there's something so brilliant that represents the culmination of so much work, and I happen to be around to witness it!
This channel *really* has a longstanding tradition of glossing over/subtlety flexing/giving for granted really High level math skills and use it as tools for it's projects
I wanted my grass to look more "grassy", -here is my pier-reviewed article in Annals of Mathematics on Painting N-Dimensional Surfaces Using 3D Toruses with Radially Repeating Shading.- Rice looked bad, so I used a mint, and i think it looks a lot more "grassy" now
I really appreciate how you've kept at this incredible challenge given basically every already complicated aspect of making a game has an extra dimension of all the usual problems except with no intuition about how to address them.
This channel is just amazing. I have legtimately zero idea (and this is not a hyperbole) how any of the programming or the mathematics behind it work, but just being exposed to these ideas is immensely interesting and the way you present it all and tie it together, with your calm narration and superb explanations is both mindblowing and captivating. Please keep making these, I just wanted you to know how much I appreciate your videos and your work.
I gotta admit, watching these devlogs is incredible not just because of the concept, but because of your dedication to it. So many people try to make ambitious projects like this only to abandon them when they start to run into complex problems or just run out of passion halfway, but you're still going despite having to work with problems most people (myself included) don't even understand because it's a dimension higher and anything we're used to. Truly an inspiration to watch
i love how towards the end of a project it's less about accurately figuring out how to calculate some crap, but just about how to hack your way to the goal
We're back at "shit that's whyld" Like, yea, conceptually it's pretty much the same as when I said that 4d isn't blowing my mind anymore, but seeing a 4d tree move into view somehow is much, much cooler than it should be! Someone should make a lovecraft inspired adventure game with this tech... a complex model like a chtulu lerping into 3d space must look soo wild.
4d miner has 4d spiders that attack you. nowhere near lovecraftian horror, but still freaky to see a handful of legs appear to pop in and out of existence as they run towards you
I was actually thinking about something like this pretty recently, because I've been on a bit of a cosmic horror binge, but I lack a good enough understanding of how these sorts of projections are actually performed to even begin to have the confidence to try. Imagining how one would even begin to throw skeletal animation (or anything similar) into the mix, in order to produce animated characters, just breaks my brain a little bit. But moreso than that is the idea of actually creating the character models themselves. Do you manually create a single model, and extrude into 4D? I feel like that would look... Not great? Or, do you create a handful of intermediate meshes of the same character, and write a script and figure out some rules for how you want to generate simplices between the triangulated polygons? I feel like that would look better, but it actually sounds like a newly discovered level of hell. I guess for a retro aesthetic you could make the characters by composing different 4D objects together. That could work, and might even look pretty good. The animation is still a headache, but it could be worse. And then the issues with polygon count, and that sort of thing, like CodeParade mentions here. But as long as the player is restricted to a 3D world, with only one aspect of it being 4D at any given time (Like Cthulhu, or some other Lovectaftian entity), then maybe that would be such a big problem. I love the idea, and I wish I had the knowhow to even begin to work on something like that, but... Oof.
would be amazing if @CodeParade makes the tools available to others somehow. I'd love to see them open source but as a closed source engine would be great too
Most software problems can be broken down into 3 categories: fun the the programmer, fun for the player, and fun for the computer. This game adds a fourth dimension of fun for all involved.
One thing I hope developers will keep in mind about adding motion to trees or foliage in games to provide more atmosphere is the fact that the motion should not be continuous. Model the motion as well, using some form of random time interval for on/off. Wind rarely ever blows continuously and even more rarely - continuously and evenly. Sometimes, it is the smallest details about the environment that have the biggest impact on the experience.
i remember running into the edgeflow/triangulation orientation problem i had an n-gon on a mesh i made in Maya, using the "auto" triangulate feature in maya had a "handedness" a tendency to choose one orientation for the triangle to form in a rectangle Substance painter had the opposite handing, so my model would shade correctly in mayas native renderer, but would form vertex shading errors in substance painter. moral of the story is its important to know what your automatic tolls actually do, and im glad i learnt about topology before getting into the habit of letting the software think for me
It's interesting how many of the little parts of this project could be spun off into their own things. Like, if you just took the whole 4D models thing and made a "hyper-sculpture museum" where maybe people could even make and share their own models then that would make for an interesting result at the end. But then this particular thing has the 4D trees AND it's also a golf game, which is interesting.
I remember trying to visualize a hypercube for an arbitrary number of dimensions. I started by creating an n-dimensional drawing system similar to OpgenGL, where you draw triangles and decide if you want them to be separated, in a strip (this means n vertices creates n-2 triangles) or in a loop (this means n vertices creates n triangles). Except in my case I would use (n-1)-dimensional simplices. So I had built the system, it worked, now I just needed to find a way to create hypercubes and preferably in a way that optimizes the amount of simplices that need to be drawn for it. There was a rare moment where I was not feeling too prideful and googled for the algorithm instead of coming up with my own algorithm. Fortunately I did, because there was a paper written about it that explained that it is very hard to do optimally. So I ended up doing the "easier" thing and extrude from a lower dimensional hypercube and added optimized cases for 2, 3, and 4 dimensions (from the paper). This ended up being a very time consuming project to learn that I should have done it with ray tracing from the start.
I don't understand why you can rotate through the 4th dimension (slices) while the golf ball is moving. While you're aiming this makes sense, as you're aiming through another dimension (and we have to slice through it so our little 3d brains can understand), but while the ball is moving it's like you're giving it additional momentum through the 4th dimension.
There's actually a shockingly simple algorithm for choosing valid orientations for the diagonal lines on the tetrahedral prism faces. Instead of a graph *coloring* problem, you can model this as taking the undirected graph of the triangle-mesh edges and choosing a *direction* for each edge, where the direction expresses which of the two orientations the diagonal on the prism face corresponding to the edge will use. Then, the requirement is that for each triangle, its three edges' chosen directions can't all point CW or all point CCW. How do you choose such directions? Give each vertex a unique integer ID, then direct each edge from the lower-numbered endpoint to the higher-numbered one. That's it. That's the whole algorithm. I've used this for making a tet mesh from a tri mesh and it works well (though it wasn't in 4D 😛).
Hope we get a way to add the obstacles to our own levels with the editor and maybe even make some of our own, along with more complicated track pieces, stuff like that!
You should make a video about how showing stuff that you can't see because it's in the 4th dimension but in the same spot so it's greyd out (kinda like how the 4d googles in 4d miner work) is done using 2d and 3d because I'm trying to imagine it but it's hard and the whole concept is definitely more complicated than it probably seems I bet. Keep up the good work! Loving everything you make, hyperbolica, 4d golf, and everything!
Very cool food for thought as I experiment in Pure Data, an early audiovisual node-based programming environment. I recently got glsl shaders to do things in it, seems like it would be able to do things like this too, especially with ample use of swizzling and manually plugging in the algebraic reductions of the more complicated matrix operations.
You know you accidentally created an awesome story for a game you open a box to find another then another until your in a box dimension trying to find your package
You've dragged this project so far from where you started and it's so cool, probably won't play it but will definitely continue to watch the devlogs, this might become a great and simple introduction to 4D modeling and etc stuff for anyone interested as well! Might even set the standard for these types of games and tools, the simplified formulas used are very interesting (though i don't understand anything that's going on lol).
3d games used to not run smoothly with older graphics cards, but now they run really smooth with modern graphics cards that almost everyone with a computer has. right now, as you mentioned in this video, the game has to be low poly to run well. so eventually, maybe graphics cards will get way better and we can make better quality 4d games and have it run smoother. or we will just find a ton of huge optimizations for 4d graphics rendering
the most counterintuitive stuff with hyperdimensions that I saw to date is that the volume of a sphere tends to 0 as the number of dimensions tends to infinity. This is proved analytically and numerically with Monte Carlo integral.
Generally I'm a dumbass when it comes to 4d, but this actually kinda makes sense to me. Like I know that for the edge of 1 a square, cube and a tesseract "volume", for a lack of better word is 1^n for n dimensions, i suppose it's the same for higher dimensions(?). And a circle or a sphere with a 1/2 radius is kinda the former square and cube but with missing pieces, so it does make a bit of sense to me that if you keep on adding dimensions there's less and less material to work with. Obviously correct me if I am completely missing smth due to my massive oversimplification.
@@MrMiddleWick Yeah, that is essentially the point. You can get an explicit formula for the n-dimensional volume of a ball and see that it goes to 0, but the inuitive reason is because to be in a ball of radius 1, if you have coordinates (x1, x2, ..., xn), then this point is in the unit ball if x1^2 + x2^2 + ... + xn^2 4, the diameter will be larger than 1, i.e. the sphere in the middle pokes out of the cube. The reason is because spheres are pointy, their points can only have a few large coordinates, but cubes are not pointy, all of their coordinates can be large.
You could probably write a paper on plenty of the techniques you’re using and coming up with. Also, this gives me the idea of coming up with .png4d or stuff like that, but I wouldn’t use them for a good long while, and I have other projects rn. Love your work btw ❤
"ok, now that Hyperbolica is finished I'll just do something easy like, idk, golf in 4D?"
several years from now: "now that I've created a time machine I can kickstart the creation of Unreal Engine's 4D project support, this is so I can make the grass texture on this mini-golf course look a little less flat"
"now that 4D golf is finished, I'll just do something easy like, idk, game about actually realistically falling into a blackhole, swapping space and time there and rendering the ringularity"
@@seekvapes9641 Jesus christ 😂 That's the logical next step after this
If he keeps making something simple at an exponential rate, he should be doing full, feature/physics complete planetary simulations with full periodic tables in 30 years
I feel it's not just a the technical hurdles, it's also game design of a fully 4D-supporting game, where it isn't just a gimmick, but something that is crucial for the gameplay which you can learn, meaningfully interact, progress and have fun with...
Now that my game about actually realistically falling into a blackhole, swapping space and time there and rendering the ringularity is finished, I'll just do something easy like, idk, game about simulating the multiverse with evolution and human civilizations with scrollable timelines across all realities including the one we're living in.@@seekvapes9641
"I don't really want another multi-year project like Hyperbolica, so this will probably be a relatively short and minimalist game that I just spend a couple months on and release." - CodeParade, July 2022
- all programmers who have ever or will ever live
@@Android480 Indeed I feel this.
Famous last words
The phrase "UVW unwrap a tetrahedralized mesh" is _unbelievably_ cursed.
oh boy, time to uvw unwrap 4d shape straight into hell
Hearing that was the hardest I've laughed in a while. This project is an insane challenge for anyone to set themselves. He could probably get multiple academic papers out of it.
"For every triangle you can see, there's probably at least 10x as many that you can't see."
Sounds like someone needs to invent 4D occlusion culling, lol.
watch him invent a 4D occlusion culling algorithm to play mini-golf and it being better at generic rendering than any other process by orders of magnitude.
I can already tell the speedruns for this game are going to be INSANE
So will the speedrunners for it.
Someone will probably beat the whole game within 4D seconds.
@@theapexsurvivor9538 Can't wait for SmallAnt's Joker arc after 5 minutes of 4D Golf speedrunning
"They don't look like leaves." Bruh you are inventing 4D leaves, they can look like whatever you want 😂
There is actually a nice way to extrude a shape made of triangles into a shape made of tetrahedra in a way which always guarantees the edges always line up.
The mathematical structure which accomplishes this is called a simplicial set. It's basically a way of organizing simplices and gluing data to form shapes.
The key ideas to how it works are
1) Having the edges of each triangle ordered so that the way they're glued to each other is compatible with that order
2) Keeping track of "degenerate" simplices. For instance, you can consider a line as a degenerate triangle where one edge has length 0. This of course wouldn't need to be rendered. It would just go into the algorithm for tetrahedralizing the prisms.
From here, the Cartesian product of the simplicial interval with the simplicial set which represents your surface will produce a simplicial set for the solid, and all the edges will naturally line up. I believe simplicial sets are implemented in Sage if you want to check it out.
You're speaking a language I don't understand, but maybe CodeParade does, so I hope he sees this.
Yes, I too upvoted this despite not understanding a thing.
I understand exactly enough to know how much I don't understand. It does seem like it should work assuming that I'm not missing anything obvious.
You can also make a conical extrusion this same way, by gluing all the points of the original simplex to a 0-simplex (a point).
bumping so it might get noticed by cp
Imagine time traveling back 20 years
to tell people a 4D golf game is real
I'm gonna make some people feel really old now: 20 years ago is 2003.
They'd react the same way someone today would. They weren't cavemen lol. At least I wasn't.
We have nothing today that isn't something that hasn't existed since at least the 80s. It's all just better and cheaper now.
In 2003 I was playing a game that came out in 1998 called "Hypercube: a 4d game" by "Harmen van der Wal" . It wasn't as good as this of course, but I'd call it a basic 4d golf game.
In a strange coincidence, it is almost exactly 20 years ago that I first read Flatland and was thinking about 4D geometry for the first time. Though the notion of a 4D game was probably beyond me back then.
Tantan?? Is that really you? Come on. As a based Rust-lang enjoyer, you should know that for anyone with a solid grasp of mathematics, this isn't exactly a ground-breaking concept. These ideas aren't new. Only thing they'd be impressed about is the rendering maybe.
Something tells me you're gonna be one of those programmers that falls ass backwards into creating an entirely new standard in generalized engine building that gets picked up by everyone. Like the adoption of quaternions in game physics
Wait is there a story to why Quaternions are in everything?
You got me curious now lol
@@SheepUndefined because they are just better and can properly represent any rotation
@@O5MO Oh I know that very well, I mean more like how it initially came about I guess
We're literally watching him develop a game that people are going to read about in textbooks 50 years from now.
quaternions were invented cause a guy couldn't invent 3d coordinates that work similarly to 2d coordinates lol
Easy and 4d should not be in the same sentence
Except in the case of "4d textures and features are not eazy"
wait until someone makes a 5d game
@multiarray2320 what about all the needed dimensions for string theory
@@multiarray23205D Checkers with Universe Space-travel
@@multiarray2320 ive made 2 6D board games, though anything past 4D takes AGES to play with "perfect" players
Dude... you are really breaking new ground and discovering new frontiers here. Things that no one has ever done before.
Please keep making these, documenting all the problems you encountered making a 4D game.
I find these problems fascinating. These are problems you wouldn't even know existed unless you were trying to build a 4d game world. So cool.
To boldly golf where no-one has golfed before!
4D Miner is a cool project too.
Miegakure has been in development since 2009 and they've surely encountered these issues too. There's also 4D Miner which is gaining popularity recently. Not to discredit CodeParade, but this is far from being the first time someone explores these concepts in gaming.
I was wondering how this project went along, glad my expectations have been met and you've properly went insane
Keep going!
More like he's went super sane and that sanity looks like insanity to regular sane people. 🤷🤣
@@deoxyplasmic It's spelled "super saiyan".
that intro part is so relatable I resonate so hard with it.
I love how there's so much nonsensical random content on UA-cam, but every so often, there's something so brilliant that represents the culmination of so much work, and I happen to be around to witness it!
This channel *really* has a longstanding tradition of glossing over/subtlety flexing/giving for granted really High level math skills and use it as tools for it's projects
I wanted my grass to look more "grassy", -here is my pier-reviewed article in Annals of Mathematics on Painting N-Dimensional Surfaces Using 3D Toruses with Radially Repeating Shading.- Rice looked bad, so I used a mint, and i think it looks a lot more "grassy" now
@@randomnamegbji Man, I wish my papers were reviewed by a pier
Your ravenous desire for long-term gritty pain is both admirable and horrifying. I love your commitment, truly astonishing work. ^^
New 4D Golf Devlog? I watch it immediately!
Apparently not, since you chose to write this!
ye, exactly me
@@Tay10rdwhat if he wrote it while watching
@@vindi167 “I’ll watch”
shortened form of “I *will* watch”
= Simple *future* tense
I really appreciate how you've kept at this incredible challenge given basically every already complicated aspect of making a game has an extra dimension of all the usual problems except with no intuition about how to address them.
you could totally make a really long version where you explain the problems in great detail and we would all watch it
Your explanations of how 4D space works are my favorite on the entirety of youtube
This channel is just amazing. I have legtimately zero idea (and this is not a hyperbole) how any of the programming or the mathematics behind it work, but just being exposed to these ideas is immensely interesting and the way you present it all and tie it together, with your calm narration and superb explanations is both mindblowing and captivating. Please keep making these, I just wanted you to know how much I appreciate your videos and your work.
I gotta admit, watching these devlogs is incredible not just because of the concept, but because of your dedication to it. So many people try to make ambitious projects like this only to abandon them when they start to run into complex problems or just run out of passion halfway, but you're still going despite having to work with problems most people (myself included) don't even understand because it's a dimension higher and anything we're used to. Truly an inspiration to watch
i love how towards the end of a project it's less about accurately figuring out how to calculate some crap, but just about how to hack your way to the goal
the more you know, the more you know that you dont know and this video transfered that message again in a humbling way
We're back at "shit that's whyld"
Like, yea, conceptually it's pretty much the same as when I said that 4d isn't blowing my mind anymore, but seeing a 4d tree move into view somehow is much, much cooler than it should be!
Someone should make a lovecraft inspired adventure game with this tech... a complex model like a chtulu lerping into 3d space must look soo wild.
4d miner has 4d spiders that attack you. nowhere near lovecraftian horror, but still freaky to see a handful of legs appear to pop in and out of existence as they run towards you
I was actually thinking about something like this pretty recently, because I've been on a bit of a cosmic horror binge, but I lack a good enough understanding of how these sorts of projections are actually performed to even begin to have the confidence to try. Imagining how one would even begin to throw skeletal animation (or anything similar) into the mix, in order to produce animated characters, just breaks my brain a little bit.
But moreso than that is the idea of actually creating the character models themselves. Do you manually create a single model, and extrude into 4D? I feel like that would look... Not great?
Or, do you create a handful of intermediate meshes of the same character, and write a script and figure out some rules for how you want to generate simplices between the triangulated polygons? I feel like that would look better, but it actually sounds like a newly discovered level of hell.
I guess for a retro aesthetic you could make the characters by composing different 4D objects together. That could work, and might even look pretty good. The animation is still a headache, but it could be worse.
And then the issues with polygon count, and that sort of thing, like CodeParade mentions here. But as long as the player is restricted to a 3D world, with only one aspect of it being 4D at any given time (Like Cthulhu, or some other Lovectaftian entity), then maybe that would be such a big problem.
I love the idea, and I wish I had the knowhow to even begin to work on something like that, but... Oof.
would be amazing if @CodeParade makes the tools available to others somehow. I'd love to see them open source but as a closed source engine would be great too
Most software problems can be broken down into 3 categories: fun the the programmer, fun for the player, and fun for the computer. This game adds a fourth dimension of fun for all involved.
man, I cannot express to you how much this game excites me.
I can't wait for 5D Golf with Multiverse Time Tree-vle
One thing I hope developers will keep in mind about adding motion to trees or foliage in games to provide more atmosphere is the fact that the motion should not be continuous. Model the motion as well, using some form of random time interval for on/off. Wind rarely ever blows continuously and even more rarely - continuously and evenly.
Sometimes, it is the smallest details about the environment that have the biggest impact on the experience.
You are the most hardworking person I’ve ever seen
Honestly man i could listen to your random problems in making a 4D game for hours, so please dont ever leave anything out, im glued to the screen
i honestly think this is a really cool concept, and I might play it once it releases
So might you play it on the 22nd of March?
i remember running into the edgeflow/triangulation orientation problem
i had an n-gon on a mesh i made in Maya, using the "auto" triangulate feature in maya had a "handedness" a tendency to choose one orientation for the triangle to form in a rectangle
Substance painter had the opposite handing, so my model would shade correctly in mayas native renderer, but would form vertex shading errors in substance painter.
moral of the story is its important to know what your automatic tolls actually do, and im glad i learnt about topology before getting into the habit of letting the software think for me
It's interesting how many of the little parts of this project could be spun off into their own things. Like, if you just took the whole 4D models thing and made a "hyper-sculpture museum" where maybe people could even make and share their own models then that would make for an interesting result at the end. But then this particular thing has the 4D trees AND it's also a golf game, which is interesting.
More tangents please, seeing the 4D tools are very interesting.
I remember trying to visualize a hypercube for an arbitrary number of dimensions. I started by creating an n-dimensional drawing system similar to OpgenGL, where you draw triangles and decide if you want them to be separated, in a strip (this means n vertices creates n-2 triangles) or in a loop (this means n vertices creates n triangles). Except in my case I would use (n-1)-dimensional simplices. So I had built the system, it worked, now I just needed to find a way to create hypercubes and preferably in a way that optimizes the amount of simplices that need to be drawn for it. There was a rare moment where I was not feeling too prideful and googled for the algorithm instead of coming up with my own algorithm. Fortunately I did, because there was a paper written about it that explained that it is very hard to do optimally. So I ended up doing the "easier" thing and extrude from a lower dimensional hypercube and added optimized cases for 2, 3, and 4 dimensions (from the paper).
This ended up being a very time consuming project to learn that I should have done it with ray tracing from the start.
jesus the Zoboomafoo clip just unlocked some really old memories, great choice lol
I don't understand why you can rotate through the 4th dimension (slices) while the golf ball is moving. While you're aiming this makes sense, as you're aiming through another dimension (and we have to slice through it so our little 3d brains can understand), but while the ball is moving it's like you're giving it additional momentum through the 4th dimension.
and here I thought the Devlog for Hyperbolica was good. You just keep blowing me away, this is amazing.
Using an FPGA to hardware accelerate 4D rendering of textures and procedural generation would be so painfully fun.
Its a pure joy when CodeParade uploads!
There's actually a shockingly simple algorithm for choosing valid orientations for the diagonal lines on the tetrahedral prism faces. Instead of a graph *coloring* problem, you can model this as taking the undirected graph of the triangle-mesh edges and choosing a *direction* for each edge, where the direction expresses which of the two orientations the diagonal on the prism face corresponding to the edge will use. Then, the requirement is that for each triangle, its three edges' chosen directions can't all point CW or all point CCW.
How do you choose such directions? Give each vertex a unique integer ID, then direct each edge from the lower-numbered endpoint to the higher-numbered one. That's it. That's the whole algorithm. I've used this for making a tet mesh from a tri mesh and it works well (though it wasn't in 4D 😛).
I have no idea whats going on during these explanations but it's cool and I'm glad I've been exposed to this project
Hope we get a way to add the obstacles to our own levels with the editor and maybe even make some of our own, along with more complicated track pieces, stuff like that!
You should make a video about how showing stuff that you can't see because it's in the 4th dimension but in the same spot so it's greyd out (kinda like how the 4d googles in 4d miner work) is done using 2d and 3d because I'm trying to imagine it but it's hard and the whole concept is definitely more complicated than it probably seems I bet.
Keep up the good work! Loving everything you make, hyperbolica, 4d golf, and everything!
I like your fancy words, magic man.
Looks like the game is coming along nicely. Great work!
the absolute madman has done it😄
Next time, please go on as many tangents as possible! This topic is very fun
Working with rotation in 3d with quarternions is quite a ride so I can't even begin to imagine how this shit works in 4d
"If you wish to make an apple pie from scratch, you must first invent the universe" -Carl Sagan
Very cool food for thought as I experiment in Pure Data, an early audiovisual node-based programming environment. I recently got glsl shaders to do things in it, seems like it would be able to do things like this too, especially with ample use of swizzling and manually plugging in the algebraic reductions of the more complicated matrix operations.
You know you accidentally created an awesome story for a game you open a box to find another then another until your in a box dimension trying to find your package
5:04 HoxelDraw!
I saw that, too!
Today I learned my lawn is a 3d projection of green 4d peppermint candies.
man this devlog series is so cool
This is so impressive, I can't wait for this game to release!
Well watching the 4D golf trailer makes my head hurt just as much as 4D Chess.
Holy shit Zoboomafoo clip in 2023??? Love it dude
"I hope I didn't break your brains too much with this one"
I wish you could see my face the entire video...
You've dragged this project so far from where you started and it's so cool, probably won't play it but will definitely continue to watch the devlogs, this might become a great and simple introduction to 4D modeling and etc stuff for anyone interested as well! Might even set the standard for these types of games and tools, the simplified formulas used are very interesting (though i don't understand anything that's going on lol).
ong your explanations of the 4th dimension are scarily similar to my dmt trips
Your devlogs are always super inspiring for me
I get and can understand the concept of 4d. I really want to play this when it comes out
Then know that it releases on the 22nd of March
Looking forward to release. I also enjoyed the Kratt bros and Courage clips.
Four dimensions are pretty hard to visualize in three dimensions. It's also pretty hard to model 4D objects.
I don't know why, but seeing the dimension shift whenever the ball hits a wall is really interesting.
It’s hard to make something that’s impossible to comprehend.
3d games used to not run smoothly with older graphics cards, but now they run really smooth with modern graphics cards that almost everyone with a computer has. right now, as you mentioned in this video, the game has to be low poly to run well. so eventually, maybe graphics cards will get way better and we can make better quality 4d games and have it run smoother. or we will just find a ton of huge optimizations for 4d graphics rendering
What you talkin about you break my brain every time you release a video 😂
Can't wait for the sequel, 5d golf.
Man this project is really going somewhere, Wish you the best luck bro!
So many unexpected nuances when you go up a dimension!
5:12 this made me click the perception of 4D, cool.
the most counterintuitive stuff with hyperdimensions that I saw to date is that the volume of a sphere tends to 0 as the number of dimensions tends to infinity. This is proved analytically and numerically with Monte Carlo integral.
Generally I'm a dumbass when it comes to 4d, but this actually kinda makes sense to me.
Like I know that for the edge of 1 a square, cube and a tesseract "volume", for a lack of better word is 1^n for n dimensions, i suppose it's the same for higher dimensions(?).
And a circle or a sphere with a 1/2 radius is kinda the former square and cube but with missing pieces, so it does make a bit of sense to me that if you keep on adding dimensions there's less and less material to work with.
Obviously correct me if I am completely missing smth due to my massive oversimplification.
@@MrMiddleWick Yeah, that is essentially the point. You can get an explicit formula for the n-dimensional volume of a ball and see that it goes to 0, but the inuitive reason is because to be in a ball of radius 1, if you have coordinates (x1, x2, ..., xn), then this point is in the unit ball if x1^2 + x2^2 + ... + xn^2 4, the diameter will be larger than 1, i.e. the sphere in the middle pokes out of the cube. The reason is because spheres are pointy, their points can only have a few large coordinates, but cubes are not pointy, all of their coordinates can be large.
instant click to see the video.
maaaaaan, what a work!!
and what an amazing project!
I enjoy watching these videos even if my brain burns out by the explanations.
As someone with 300+ hours in golf with your friends, I can’t wait for this game
Release on March 22nd
I have the feeling you described in the intro.
Making 4d trees on a 2d screen in our 3d world, potentially in an 11d universe
Your stuff is so good that you actually made me invested enough to get a job as a game developer XD
Great video! Crazy stuff!
Good luck on your journey into this 4d universe you’re making
Looking great! And quite fascinating
Inspiring to hear about your work with 4D tool chains
I’m excited for hypercube additions
You could probably write a paper on plenty of the techniques you’re using and coming up with. Also, this gives me the idea of coming up with .png4d or stuff like that, but I wouldn’t use them for a good long while, and I have other projects rn. Love your work btw ❤
Absolutely crazy stuff. Well done!
This game is mental, good work mate.
this is literally insane oh my god??
This video hurts my way in the best way possible
”for the same reason we can’t use a 2d tree in a 3d game” yeah right
Your whole game breaks my brain but that's why its so cool
I just cannot wait.
5d golf with multiverses and time travel
fking nuts, I hope this'll be a multiplayer game at some point in the future.
It will be a multiplayer game when it releases, due to having Remote Play Together at least
if the boundaries of the triangular prisms don't match, add another tetrahedron between the sides.
This actually made a lot of sense. What are you doing to my brain?
My dude, you are a wizard. 🧙♂️🪄
Codeparade never fails to break our brains the perfect amount