My critique is that you said you would play with the rules to see what would happen but Didn't show that on camera and/or didn't have notes showcasing different rules
Something that would be cool is if cells that had just been born were green, cells that have survived more than one round be blue, and cells that are about to die red, or maybe some other more smooth colour gradient; it could be cool to see the cells have their colour change by age. Idk though, I'm just a TH-cam comment
The morse code at 7:32 translates to "Do cool shit with cool people" (in case anyone were wondering) Great visualization at the end (though it would've been great if you also showed ranges for the rules for each simulation)
Im always surprised when I accidently stumble upon these small channels and then they have such polished videos. Great job man! I really enjoyed the video :D
Man, such a great video. This needs to blow up. The end result was nothing short of amazing. Great video, stellar coding. I can't wait to see you go places.
Cool video, I wrote my own version of Conway's game of life in C++ like 15 years ago, but never considered doing it in 3D. I think you did a pretty good job demonstrating what that looks like. One correction though, you said that OpenGL is a Python extension. That's... not quite right. OpenGL is a graphics library that directly communicates with your graphics card to provide accelerated 2D and 3D drawing capabilities. Python, along with many other languages, can interface with the OpenGL library to make use of these capabilities. Saying it's a Python extension is like saying DirectX is a Python extension.
No way, I had a similar idea a couple weeks ago but I had no clue how to implement it. Awesome to see someone did it, and made such a cool video showing the project off too!
The problem with 3d is that we only see 2d and it gets harder to see the shapes. One idea is to have 3d by cell color, the grid is 2d, there are 256^3 colors, this would allow a 3d conway with a height of 24 at max.
This creation was genius! It is pretty hard to figure out the combination of rules which makes an interesting game of life, so it's understandable if you need a lot of testing for this one.
genuinely think you're too underrated. this has higher quality than some videos from channels with millions of subscribers, and i hope your channel reaches that million subs as well. good job man. keep it up.
The rule for 2 live cells can be simplified for programming purposes as: if a cell has 2 live neighbors, then the next generation value will be equal to the current value, whatever it is.
First off, keep doing what you're doing! On the other hand, Tech with Tim did a cool interpretation of Life 2D where he noted that you don't have to loop over every single cell in the array. Life or Death will always be the result of a Living cell, so he only loops through a list of Living cells to see if it Lives or Dies, and if any of it's neighbors should be Born. He did this in Python at speeds approaching 60fps in Pygame. It would be interesting to see if your Python version of Life 3D would be fast enough to enjoy if you employed that stategy. Thanks for the great video!
I would suggest adjusting the opacity of individual cells dependent on how many cells are between them and the camera, as well as adjust the camera angle in some way to demonstrate the 3D nature of the "universe". Perhaps even color them differently at different layers and/or depths.
Aye bro have you thought of the idea of generating research on this game of life concept with the geometric superstructure E8, which has 248 dimensions?!?
Thats awesome work right there. Gg. I was thinking, while looking at the patterns, it resemble the pattern of life, the one DaVinci and fibonacci was working on. I don't remember the exact name of the pattern I think is the flower magic number or something...
I really liked this video. I thought your explanation of regular GoL was clear and not too long. I think that if the main point of this video is the 3D version of Game of Life, it might have been better to spend less time on your 2D implementation, especially the image loader. I felt the Rubik's cube montage had a lot of emphasis on it, I think it would be better if you had done the explaining of 2d vs 3d GoL while you solved the cube, either as voiceover or just while you were solving it. The thing with the papers was nice, I guess that could come after you finished solving it. Lastly, I think putting a little time into showing what's happening in the code is nice, but in my opinion the best way of doing it is just a short high-level explanation of the algorithm with maybe a coding montage in the background, although explaining issues you ran into isn't bad. Overall, these are some relatively minor nitpicks, the video was good. Subscribed and shared.
Love the video and the code explanations! Although it might be a lot of work, zooming into the code that you are talking about would be a lot easier to follow than just highlighting it. Currently, I have to squint to be able to read what going on so zooming in would be really helpful!
You can also adjust the 2D rules such that you get beautiful cave-like layouts totally appropriate for generating video game levels. Basically, don't die from over-crowding, and you get nice organic shapes. (Probably could do it in 3D also.) It's interesting to see someone relatively new to programming forgetting all the stuff that's already ingrained into the practices of experienced programmers. (By which I mean the not thinking about running off the end of the array before it happens.) Another way to handle that is to just zero out (i.e., kill) the outside edges/faces after each generation.
Hey I really love your style and design. To the code I can’t say much because I am currently learning python my self and am not good at it. Maybe you could have shown the 3D visual from a bit of an angle (it was a little difficult to see in the end). Definitely subscribed. 👍
About the last animation in 3D, I think you really should add an information about what rules you used here... what's the point of us looking at this, other than it looking cool, if we have no idea what rules are followed and what numbers did you choose? After all, you said at the end that the point is to learn, but you still keep the way the last animation works a secret :P So which one is it? :-)
6:59 Python is not that fast, yes. But I am very certain that your data structures to store the field are just very naiv too. I am pretty sure you can do it quite fast with Python too.
@@yynill I don't know how to speed up the OpenGL stuff but for the state changes you might consider working with numpy and big sparse matrices that keep the state of the cubes. Or try 3d convolution where the convolution kernel can calculate the resulting "lifeness" value from all the cells nearby. Search for "game of life 2d convolution" to get an idea of what I mean.
My critique is that you said you would play with the rules to see what would happen but
Didn't show that on camera and/or didn't have notes showcasing different rules
th-cam.com/video/-cIf6hYi8NE/w-d-xo.htmlsi=OcCdwObI9_ziOu_4 here you go.
Something that would be cool is if cells that had just been born were green, cells that have survived more than one round be blue, and cells that are about to die red, or maybe some other more smooth colour gradient; it could be cool to see the cells have their colour change by age. Idk though, I'm just a TH-cam comment
You're not just a youtube comment... or maybe you are, Idk, I'm just a reply
hello reply
kinda did that in part 2
The morse code at 7:32 translates to "Do cool shit with cool people" (in case anyone were wondering)
Great visualization at the end (though it would've been great if you also showed ranges for the rules for each simulation)
nice
Pretty neat.
The end would be even more amazing if you had rotated the camera around the cube while the cells are changing
Im always surprised when I accidently stumble upon these small channels and then they have such polished videos. Great job man! I really enjoyed the video :D
I second this.
How about running this on a volumetric display?
Editing was amazing, and the 3d visualization at the end was insane! Also loved the code + visual aspect of your video. Keep it up!
:)
When you played the score of Oppenheimer I immediately thought: „I want to see this in Nolan‘s next movie!“
Man, such a great video. This needs to blow up. The end result was nothing short of amazing. Great video, stellar coding. I can't wait to see you go places.
Cool video, I wrote my own version of Conway's game of life in C++ like 15 years ago, but never considered doing it in 3D. I think you did a pretty good job demonstrating what that looks like. One correction though, you said that OpenGL is a Python extension. That's... not quite right. OpenGL is a graphics library that directly communicates with your graphics card to provide accelerated 2D and 3D drawing capabilities. Python, along with many other languages, can interface with the OpenGL library to make use of these capabilities. Saying it's a Python extension is like saying DirectX is a Python extension.
I didn't know that. Thanks for letting me know.
dude, the production quality on this is insane! also, nice rs3m :3
Thanks. Can you solve it?
@@yynill yup! pb is 18 seconds, but I've rusted back to 30-35s
No way, I had a similar idea a couple weeks ago but I had no clue how to implement it. Awesome to see someone did it, and made such a cool video showing the project off too!
thanks a lot. You should try it again.
woah the editing is amazing
The problem with 3d is that we only see 2d and it gets harder to see the shapes.
One idea is to have 3d by cell color, the grid is 2d, there are 256^3 colors, this would allow a 3d conway with a height of 24 at max.
Thank you. This shines the nature behind cymatics and resonance. I love it so much. Hope to play with it in future.
This creation was genius!
It is pretty hard to figure out the combination of rules which makes an interesting game of life, so it's understandable if you need a lot of testing for this one.
this is awesome, insanely underrated
thanks
Fantastic video. It was compelling enough where I revived my attention span to stay for the whole thing!
in war with tiktok. haha. thanks
Really nice video
Cool video, I didn't expect this channel to be so small
e^x
absolutely awesome video mate, keep it going!!!
Thanks, will do!
genuinely think you're too underrated. this has higher quality than some videos from channels with millions of subscribers, and i hope your channel reaches that million subs as well. good job man. keep it up.
Man this idea randomly came to my mind, i thought no one whould have implemented it lol
Really good production quality and nice presentation. I thought you had more subscribers based on that. +1 subscriber
:)
The rule for 2 live cells can be simplified for programming purposes as: if a cell has 2 live neighbors, then the next generation value will be equal to the current value, whatever it is.
super cool idea, never seen this before
;)
0:47 Did anyone else notice that a smiley face just emerges out of nowhere?
Wow, amazing video!
First off, keep doing what you're doing! On the other hand, Tech with Tim did a cool interpretation of Life 2D where he noted that you don't have to loop over every single cell in the array. Life or Death will always be the result of a Living cell, so he only loops through a list of Living cells to see if it Lives or Dies, and if any of it's neighbors should be Born. He did this in Python at speeds approaching 60fps in Pygame. It would be interesting to see if your Python version of Life 3D would be fast enough to enjoy if you employed that stategy. Thanks for the great video!
thanks a lot and noted. may come back in the future.
I would suggest adjusting the opacity of individual cells dependent on how many cells are between them and the camera, as well as adjust the camera angle in some way to demonstrate the 3D nature of the "universe". Perhaps even color them differently at different layers and/or depths.
th-cam.com/video/-cIf6hYi8NE/w-d-xo.htmlsi=J3HS-XeTR7td1TD6
Awsome work ! Keep it up !
I think an isometric view would be really cool
10:07 there are clearly a bunch of people in this frame. It's an AMAZING Warschak test.
loved the vid
one question: Did you consider using Godot instead of crooked unity? If so, why did you choose unity?
Haven't put much thought into it. I think I saw Sebastian Lague use UNITY in his projects.
will look into Godot, thanks!
@@yynill open source ftw :)
Awesome vid dude!
If it's performance you seek, compute shaders would be perfect for this aplication.
lmao, I was practicing 4x4 while listening to this, then I looked up at 4:00
Aye bro have you thought of the idea of generating research on this game of life concept with the geometric superstructure E8, which has 248 dimensions?!?
Ok now i wanna try this but also do something wierd with the bounds of the simulation so it doesnt look too much exactly like a cube
do it
CGoL doesn't look at diagonal adjacency, just orthogonal.
If the 3D version is to be consistent, each cube has six neighbors.
Actually, CGoL checks 8 neighbors, check the Wikipedia page.
This truly is impressive
Thats awesome work right there. Gg. I was thinking, while looking at the patterns, it resemble the pattern of life, the one DaVinci and fibonacci was working on. I don't remember the exact name of the pattern I think is the flower magic number or something...
great video amazing editing extremely underrated 🎉🎉
I really liked this video. I thought your explanation of regular GoL was clear and not too long. I think that if the main point of this video is the 3D version of Game of Life, it might have been better to spend less time on your 2D implementation, especially the image loader. I felt the Rubik's cube montage had a lot of emphasis on it, I think it would be better if you had done the explaining of 2d vs 3d GoL while you solved the cube, either as voiceover or just while you were solving it. The thing with the papers was nice, I guess that could come after you finished solving it. Lastly, I think putting a little time into showing what's happening in the code is nice, but in my opinion the best way of doing it is just a short high-level explanation of the algorithm with maybe a coding montage in the background, although explaining issues you ran into isn't bad. Overall, these are some relatively minor nitpicks, the video was good. Subscribed and shared.
Thanks a lot for the feedback.
Love the video and the code explanations! Although it might be a lot of work, zooming into the code that you are talking about would be a lot easier to follow than just highlighting it. Currently, I have to squint to be able to read what going on so zooming in would be really helpful!
Noted!
Great video man 💪 hope you’ll persevere
many projects on my mind
I feel like the slowness came from the fact it was python... And i think unity is in something close to c#
The morse code intervention was really cool
python is so slow, but I love it.
0:17 "automaton" not "automation"
thx
@@yynillgoob
Damn 300 subscribers and that video keep up the work
202 but we gettin there haha. Much love.
Guter scheiß, ist zwar etwas zu weit für meinen momentanen Horizont aber sehr interessant.
You can also adjust the 2D rules such that you get beautiful cave-like layouts totally appropriate for generating video game levels. Basically, don't die from over-crowding, and you get nice organic shapes. (Probably could do it in 3D also.)
It's interesting to see someone relatively new to programming forgetting all the stuff that's already ingrained into the practices of experienced programmers. (By which I mean the not thinking about running off the end of the array before it happens.) Another way to handle that is to just zero out (i.e., kill) the outside edges/faces after each generation.
learning by doing
Why code is so small. espessially at 5:37 ?
will fix that in the next one.
Amazing video!!! the close up shot with the rubix cube looked a little over exposed btw
THANKS! - Will improve video qualities in future videos.
How about the sound?
@@yynill the sound was ok I think
someone shoul add this to minecraft as a custom block that you can pause/play would be pretty cool put probably very laggy
very nicely done, I tried a similar thing a while ago, didn't end up as nice as this :)
Cool, thanks! This might be the time to go back and revisit that project.
Give a translucency for material and orbit the camera would be nice, feels like loss some meaning of 3d when it uses still angle and opaque material
watch part 2
OpenGL is a PyGame extension?
still learning
@@yynill ❤️🇵🇸🍉
Hey I really love your style and design. To the code I can’t say much because I am currently learning python my self and am not good at it. Maybe you could have shown the 3D visual from a bit of an angle (it was a little difficult to see in the end). Definitely subscribed. 👍
part 2 :)
awesome video bro keep up the good work
Thanks! Will do!
you probably should have an epilepsy warning for the thing at 9:09, but otherwise great video
About the last animation in 3D, I think you really should add an information about what rules you used here... what's the point of us looking at this, other than it looking cool, if we have no idea what rules are followed and what numbers did you choose? After all, you said at the end that the point is to learn, but you still keep the way the last animation works a secret :P
So which one is it? :-)
nice job 🙂
Thanks
If it was coded in assembly, it would've been much more efficient
UNDERATED
peyote wants to enter the conversation
I tried to make this work a long time ago, but couldn't get it to work right.
Why?
@@yynill Mostly the 3D stuff got me. I could do 2D, but couldn't translate it up. I should try again sometime
Should have more views!!
Is this open source? Where's your code?
added in desc
6:59 Python is not that fast, yes. But I am very certain that your data structures to store the field are just very naiv too. I am pretty sure you can do it quite fast with Python too.
how could i improve it?
@@yynill I don't know how to speed up the OpenGL stuff but for the state changes you might consider working with numpy and big sparse matrices that keep the state of the cubes. Or try 3d convolution where the convolution kernel can calculate the resulting "lifeness" value from all the cells nearby. Search for "game of life 2d convolution" to get an idea of what I mean.
NOW WITH 4D!
bro why are you using python for 3D rendering?
Why not bro
@@soft6418 Because it's slooooooooooooooooow.
agree thats why unity
@@yynill unity = ea. So also no.
whats a good alternative?
Hi!
I can hear dein Deutsch.
hallo :)
make sure to do cool shit with people
thats my life philosophy
mfw peak
:O
Do cool shit with cool people
life philosophy