I made an EVEN BETTER Minecraft

  Рет қаралды 316,493

SimonDev

SimonDev

3 жыл бұрын

I tried to make Minecraft even better than I did before.
🛒 Recommended books (on Amazon): www.amazon.com/hz/wishlist/ls...
❤️ Support me on Patreon: / simondevyt
🌍 My Gamedev Courses: simondev.teachable.com/
Disclaimer: Commission is earned from qualifying purchases on Amazon links.
Follow me on:
Twitter: / iced_coffee_dev
Instagram: / beer_and_code
Github: github.com/simondevyoutube/
Here I tried to code Minecraft using JavaScript and Three.js, completely from scratch, to try to fix the problems from the previous implementation.
The goal was to try to improve on the previous version, was was mostly a start project to learn JavaScript and three.js.
In the previous implementation, I used instancing to get around draw call limits and complexity around merging geometry, but this time I just bit the bullet and did the actual work. I move from there by integrating chunking in the world, followed by multithreading using Chrome's module workers extension, which dramatically improved performance. I investigated various ways to texture, wrote custom shaders to atlas all the textures together in a simple way using texture arrays. From there I moved on to using perlin noise for a full, infinite procedural world. Standard perlin noise works great for basic rolling hills, but you need to do operations on it like looping for fractal brownian motion in order to get that detail and different environments.
That gives us a procedural world, from there we covered how to procedurally create foliage using signed distance functions and l-systems, which was covered in a previous tutorial. Finally, we went ahead and used layers of perlin noise to create biomes and different areas in the world, as you see in the video.
Source will is available on github, or will be when I clean it up. If it's not there by the time this is posted, look for an announcement from me either on my community posts or twitter for when the source is available.
Various resources:
Music: www.bensound.com
Inigo Quilez's site is THE reference for stuff like SDF's:
www.iquilezles.org/www/articl...
Demo was a horribly modified version of:
www.shadertoy.com/view/lt3BW2
Model from:
sketchfab.com/3d-models/minec...
AO:
0fps.net/2013/07/03/ambient-o...

Пікірлер: 860
@simondev758
@simondev758 3 жыл бұрын
Patrons can now vote for the next video! Thank you for your support. ❤ Support me on Patreon: www.patreon.com/simondevyt 🌍 Live Demo + Courses: simondev.io
@justanotherhotguy
@justanotherhotguy 3 жыл бұрын
Thank you!
@flaviogomes
@flaviogomes 3 жыл бұрын
Can you post controls please? ^^
@puffer4909
@puffer4909 2 жыл бұрын
Actually man, this CPU is still rocking as it was the second best for its plattform and DDR3, after the i7-5690X, which was way more expensive. You actually have a really good old CPU under your hood, still using the same - still playing ultra with a gtx 1070 on FHD in every game until 2019. Yes, there is better - but this is definitly not a low-performance CPU. CPU those days have doubled in performance since this day, but that is 7 iterations of CPU design and performance doubling is actually not that much after all those years.
@simondev758
@simondev758 2 жыл бұрын
@@puffer4909 Maybe I shouldn't be in a rush to get a fancy new ryzen, really need a better gpu though. That WOULD make a big difference.
@weslleymatheus3643
@weslleymatheus3643 2 жыл бұрын
Olá cara, como vc aprende? Sou brasileiro e não acho muita informação sobre essas biblioteca.
@noiamhippyman
@noiamhippyman 3 жыл бұрын
I love programmers. Knows how to program an entire Minecraft clone, doesn’t know the name for a pick axe. Lol
@simondev758
@simondev758 3 жыл бұрын
Hah, what did I call it?
@noiamhippyman
@noiamhippyman 3 жыл бұрын
@@simondev758 Not sure if this is exact but it was something like "mining pick thingy" lol
@rafftune
@rafftune 3 жыл бұрын
Yeah, I think it is pickaxe altogether.
@somerandomchannel382
@somerandomchannel382 3 жыл бұрын
If he said, and I'm Morgan Freeman. I would 100% believed it. One guy casually talks and remakes a world majority of gamers are living in all ways better with math and lifelike science. Which result is better then what an esembled team from world biggest cooperation can accomplish. yeah, he is a real God
@kushagrachaudhary6645
@kushagrachaudhary6645 2 жыл бұрын
Miner's pick thingy
@nathanfranke9095
@nathanfranke9095 3 жыл бұрын
"I'm going to make cubes for the clouds" - ok "I made a quad and shader for the sun" - OKAYY... "I made two cubes for the crosshair" - AAAAAAAAA
@metagen77
@metagen77 3 жыл бұрын
This is the best way to do it
@simondev758
@simondev758 3 жыл бұрын
Yeah the cubes for crosshair was just laziness :(
@Tumbolisu
@Tumbolisu Жыл бұрын
I think what Nathan Franke is going crazy about is the fact that the clouds are cuboids (not cubes), the sun is a square (a special case of a quad) and the crosshair is 2 rectangles or 2 cuboids (not cubes). Mathematically it is incorrect to call a shape a cube unless it is convex, only has right angles, and all side lengths are equal. In certein regional dialects it is common to call anything with right angles a cube, but for most of the world, including non-native english speakers, it just sounds utterly insane.
@nathanfranke9095
@nathanfranke9095 Жыл бұрын
@@Tumbolisu Fair points, but my original comment was poking fun at Simon using 3d shapes for things that should be flat. For the record, i think the sun and clouds make sense, but for the cross hair i think it would be much better to render it directly to the screen using primitive 2d shapes, making it much more versatile.
@FifinatorKlon
@FifinatorKlon 2 ай бұрын
​@@Tumbolisu None of the things in this video are cubes due to the fact that cubes are 3 dimensional by definition. All we can see is a 2d abstraction of the concept of a cube.
@kosnk
@kosnk 3 жыл бұрын
Simon, this is amazing! The soft ambient shadows, the trees, the smiling moon landscape, everything! Thanks for sharing this!
@simondev758
@simondev758 3 жыл бұрын
No worries, glad you enjoyed it :)
@metagen77
@metagen77 3 жыл бұрын
F Miss this shit!
@williamwester223
@williamwester223 3 жыл бұрын
I'd love to see you make this into a full fledged game that is not a clone of minecraft but still based off it like you've been doing.
@williamwester223
@williamwester223 3 жыл бұрын
Don't copy minecraft though just make your own game
@metagen77
@metagen77 3 жыл бұрын
@@williamwester223 Why not copy it?
@ege.the.engineer
@ege.the.engineer 3 жыл бұрын
8:33 "Meh, look at that poor tree" 9:22 " *Holy Sh*t What The F*ck* "
@haph2087
@haph2087 Жыл бұрын
About the 4096 height limit thing. 320 is the default height limit, but the game lets you actually change it in the worlds' config, up to 4064 (according to the wiki, that's the limit. It might be a typo and actually be 4096, idk).
@lafemmedevastation
@lafemmedevastation 3 жыл бұрын
You're like the Bob Ross of game programming: "...and now we have a little tree thingy." Making it look easy while your voice soothes souls. *c;*
@Alhoshka
@Alhoshka 3 жыл бұрын
4:48 - Look at the madman programming in GLSL in a string within js code, without IntelliSense, linting, auto-formating, or highlighting. like it was nothing.
@ezequielgarrido51
@ezequielgarrido51 3 жыл бұрын
I got a panic attack just thinking about debugging that.
@user-dh8oi2mk4f
@user-dh8oi2mk4f 2 жыл бұрын
There’s really no other way to do it. If he put it into a different file, he would have to load it, and JavaScript loads files asynchronously which could make things a lot harder.
@turner-tune
@turner-tune 2 жыл бұрын
Was thinking the same exact thing, like what the hell lol!
@TristanPopken
@TristanPopken 2 жыл бұрын
@@user-dh8oi2mk4f I also use glsl for my shaders, and instead of writing them in the code i just have another txt file. The code then converts that into a string and loads it up. Still, i need to code all of it on intuition without any IDE support
@traysonkelii7062
@traysonkelii7062 2 жыл бұрын
Yeah this is wild, not to mention there was no copy paste. This guy is brilliant
@dolalmoth
@dolalmoth 3 жыл бұрын
Wasn't expecting the SDFs and L-System trees. Very awesome!
@simondev758
@simondev758 3 жыл бұрын
ty! I'm glad they worked out, been looking for an application for the l-systems for a while
@isaipack
@isaipack 3 жыл бұрын
Man, not even the Mojang guys fixed this shadow bug when deleting blocks.
@monde7563
@monde7563 3 жыл бұрын
My good sir, you have no idea how much an impact you are having on some people's careers, Including mine.
@simondev758
@simondev758 3 жыл бұрын
That's great, I've love to hear more about how this is helping you.
@MilkIsTheOne
@MilkIsTheOne 3 жыл бұрын
@@simondev758 This looks like optifine's internal shaders. But great job tho!
@brunnomenxa
@brunnomenxa 3 жыл бұрын
Including MINEcraft
@LucasPedroso25
@LucasPedroso25 3 жыл бұрын
É verdade!
@EdSchroedinger
@EdSchroedinger 3 жыл бұрын
"This Old Tony", but it's game development, coding, javascript... just found your channel in my recommendations... well, every now and then youtube seems to drop a diamond.
@PersonManManManMan
@PersonManManManMan 3 жыл бұрын
Dancing "cubes" to illustrate hollow sides was nice touch to explain the subject, the attention to detail is great! 👍
@tomg0
@tomg0 3 жыл бұрын
Awesome! I started making a minecraft clone in JS a few weeks ago using vanilla webgl 2. Definitely not an easy task. My main challenge was storing the chunks in a way that they can be accessed as quickly as possible and also be saved as in a file that can be loaded again.
@simondev758
@simondev758 3 жыл бұрын
Yeah if I was to follow up, that's one area I'd like to improve. Storing a chunk right now is memory intensive, but there's a lot of low-hanging fruit on the table in terms of improving both gpu and cpu memory layout.
@reeven1721
@reeven1721 2 жыл бұрын
Simon, you're basically coding ASMR and that's fantastic.
@creaky2436
@creaky2436 2 жыл бұрын
You’re a js maniac dude. I’m inspired to learn math and algorithms to really take my js to the next level because of you. Great work!
@timwells3171
@timwells3171 3 жыл бұрын
This is awesome! I love these kinds of videos, making unique versions of Minecraft.
@ToothlessXDIn
@ToothlessXDIn 3 жыл бұрын
Wow. a lot to learn from you. Really appreciate that mentioning the techniques you are using for the project.
@simondev758
@simondev758 3 жыл бұрын
Lemme know if there's areas you want expanded in more depth too.
@dimitribobkov-rolandez5729
@dimitribobkov-rolandez5729 3 жыл бұрын
I've pretty much binged a lot of your content here, loving the content!
@bungiebee4049
@bungiebee4049 3 жыл бұрын
This is the greatest minecraft recreation I have ever seen.
@anthonysmith1112
@anthonysmith1112 2 жыл бұрын
This video is fantastic! I wish you would do a playlist, a sort of a three.js tutorial while progressing through different topics creating Minecraft clone as the final result. The work you do here is amazing. It's a bit difficult for me to follow though. I would love to see a series where things are broken down a bit more. That would be awesome!
@HritikRC
@HritikRC 3 жыл бұрын
Wow! Well done Simon! I started making a tutorial on how to code minecraft, inspired by your previous minecraft video, and now, you just dropped a thousand more ideas! Thanks a lot! As usual, brilliant video!
@simondev758
@simondev758 3 жыл бұрын
Awesome, I remember you building out one from last year. Happy if this gives you a few more ideas to integrate.
@Mighteyes
@Mighteyes 3 жыл бұрын
Great job! I would love to see trees like yours in the official Minecraft. I kinda like having small trees too, but I think a big mix of trees like the ones you made as well as some standard Minecraft trees together would look really cool
@anthonysylvester740
@anthonysylvester740 3 жыл бұрын
Your content is absolutely above and beyond. Thank you so much for taking the time to make these videos.
@simondev758
@simondev758 3 жыл бұрын
No worries! If you have suggestions for future videos, let me know
@mikester4896
@mikester4896 3 жыл бұрын
SimonDev: *makes Minecraft clone* Clippy: It looks like you're making a Minecraft clone.
@Martinit0
@Martinit0 9 күн бұрын
Idea for EVEN EVEN BETTER Minecraft: Make hierarchically subdivisible blocks, i.e. every block can be divided into a 3x3x3 subblocks which you can then shape. Make it go down several levels of hierarchy. Why: Can make more complex shapes. Can make more complex logic (like try to make a CPU out of minecraft boolean blocks).
@Nizart
@Nizart 2 жыл бұрын
I don’t know why, but you voice is so incredibly calming. I would like to listen to audiobooks read by you all night.
@frenchkiwii
@frenchkiwii 3 жыл бұрын
You guys can all agree with me that we NEED a part 2 of this amazing video
@dandymcgee
@dandymcgee Жыл бұрын
Seems easy enough! *10 years later* I am a failure. 😭
@buttersmars2277
@buttersmars2277 3 жыл бұрын
Really awesome job, Simon! I enjoy the beautiful scene you created so much, and I want to have a try on threejs now.
@simondev758
@simondev758 3 жыл бұрын
Go for it! And let me know if you make something
@buttersmars2277
@buttersmars2277 3 жыл бұрын
@@simondev758 Absolutely:)
@xAxtroz
@xAxtroz 3 жыл бұрын
Pretty amazing stuff! Love your videos man.
@simondev758
@simondev758 3 жыл бұрын
thanks!
@pist5343
@pist5343 3 жыл бұрын
Awesome as always, Simon! :D The trees are superb!
@simondev758
@simondev758 3 жыл бұрын
Yeah I was really happy with the trees!
@matthewhamby5749
@matthewhamby5749 3 жыл бұрын
Hey, do you think you could start breaking these kind of projects up into multiple videos / a playlist? I love seeing this stuff come together and would definitely binge a 60-video playlist watching you develop each component! Thanks for what you do!
@simondev758
@simondev758 3 жыл бұрын
A lot of the building blocks are covered in previous tutorials, and anything that isn't, like SDF's, I have plans to cover.
@calliope_x3
@calliope_x3 3 жыл бұрын
first time seeing your channel, and I'm super impressed! subscribed!
@nathanfranke9095
@nathanfranke9095 3 жыл бұрын
6:32 - That was a painful copy+paste
@simondev758
@simondev758 3 жыл бұрын
Yeah that was pretty gross, 4 nested for loops I think?
@Fritztafer
@Fritztafer 3 жыл бұрын
Wow, awesome stuff very thought provoking!
@NorppaCast
@NorppaCast 3 жыл бұрын
This is really awesome. Great job and a great video!
@simondev758
@simondev758 3 жыл бұрын
ty
@fr3ddyfr3sh
@fr3ddyfr3sh 3 жыл бұрын
Thanks for the glimpse into SDF‘s
@simondev758
@simondev758 3 жыл бұрын
No worries, I'll probably try to follow up with something more in-depth on those specifically at some point.
@glenns_AI
@glenns_AI 2 жыл бұрын
Using exact same card doing exact same things - glad to have found your channel ;)
@pfmugge6431
@pfmugge6431 3 жыл бұрын
The procedurally generated trees are such a cool idea to implement in a minecraft-style game. Sadly they are too big for my taste (when speaking of actually playing in a minecraft world like this) and its a shame that its next to impossible to have them at a scale that is more minecraft-ish. They still look pretty awesome tho! Really cool video and insights!
@schrodingcheshirecat
@schrodingcheshirecat Жыл бұрын
This is awesome. Looks great.
@kylefriel1392
@kylefriel1392 3 жыл бұрын
more of this content please!
@igrb
@igrb 3 жыл бұрын
I'm so happy to find your channel simon! the content is incredible and I never saw someone going this deep into these topics with javascript. Thank you, I've been learning so much!!
@simondev758
@simondev758 3 жыл бұрын
No worries, glad you're getting value from it!
@indycinema
@indycinema 3 жыл бұрын
Finally! Someone doing real work in 3D in the browser. Bravo!
@simondev758
@simondev758 3 жыл бұрын
Heh, it's just such a nice and easy environment to work in
@amitmatalon
@amitmatalon 3 жыл бұрын
Amazing video Simon! Thank you!!
@simondev758
@simondev758 3 жыл бұрын
ty
@enijar
@enijar 3 жыл бұрын
This is awesome work!
@simondev758
@simondev758 3 жыл бұрын
ty!
@exonymat1471
@exonymat1471 3 жыл бұрын
Definitely an impressive go, reminds me a lot of classic Minecraft! If you ever end up working a bit more on this looking at Minecraft mods could bring some inspiration! Optimisation mods in particular like Sodium, BetterFPS and Optifine could be the basis to help your game perform even better and mods like Harvestcraft and Biome Bundle can bring some inspiration for things like world generation/decoration
@greenstonegecko
@greenstonegecko Жыл бұрын
wow some of those terrains are the end really reminded me of minecraft alpha world generation. Really impressive.
@DerSolinski
@DerSolinski 3 ай бұрын
This is the most indifferent "Let's build a Minecraft" I've ever seen. Glorious!
@Auctux
@Auctux 3 жыл бұрын
The naming of variable is on point ! (papa and baba) , nice video ✌️
@werrutkyupnext
@werrutkyupnext Жыл бұрын
this is fire and inspriring
@justinscotty1450
@justinscotty1450 3 жыл бұрын
Once again amazing video Simon! Hats off!
@simondev758
@simondev758 3 жыл бұрын
Thanks!
@SizzlingSquiggle
@SizzlingSquiggle 3 жыл бұрын
Very cool. The ambient inclusion changed everything, I think
@simondev758
@simondev758 3 жыл бұрын
Yeah it was a gamechanger for the visuals. I'm sure if I went and implemented their voxel based GI, would be even nicer. Maybe v3.
@jordicowern6632
@jordicowern6632 3 жыл бұрын
The generation is really cool on this one, the tree gen and mountains, I think that if you continue this, try working on water physics like Minecraft, where you can make gravity very weak and allow the player to swim up, and maybe you can add some kind of underwater shader. Good work man!
@simondev758
@simondev758 3 жыл бұрын
I kinda wanted to do water too, but decided to wrap this one up. Maybe next go-around I'll try.
@jordicowern6632
@jordicowern6632 3 жыл бұрын
@@simondev758 I might try to make a Minecraft clone in the future, if I do, I am going to add a lot of other features like water physics, maybe farming, hopefully crafting recipes. But I am most comfortable using unity, so that's where I would make it.
@MrSaemichlaus
@MrSaemichlaus 3 жыл бұрын
I can't believe you even thought of rounding the clouds corners off! :)
@Nexus-rt1bm
@Nexus-rt1bm 3 жыл бұрын
Amazing work, Simon.
@danhorus
@danhorus 3 жыл бұрын
Loved those trees. Great job :)
@eirikmurito
@eirikmurito 3 жыл бұрын
You nailed it bro
@pguti778
@pguti778 3 жыл бұрын
So good!!!
@eballer48
@eballer48 3 жыл бұрын
Love a SimonDev vid! Great as always :o You make threejs seem so easy, and it is somewhat with their extensive example library, but I realize pretty quickly if you don't know glsl you've very limited... any chance you could do a video specializing on on shaders or break down the shader code your write a bit more? Thanks!
@eballer48
@eballer48 3 жыл бұрын
Also your 'yays' crack me up you sound like the male version of Tina from Bob's burgers.
@simondev758
@simondev758 3 жыл бұрын
Yeah I'll be breaking down some of the more specific techniques in their own videos. re: Bob's Burgers: hah yeah I can totally see that
@hbobenicio
@hbobenicio 2 жыл бұрын
This was awesome!
@DemsW
@DemsW Жыл бұрын
This is really cool, you really added your own spin on the thing and made it look effortless. Hope we can see more technical exploration like this
@NiloRiver
@NiloRiver 2 жыл бұрын
Level Genius!
@dagmawiabey8358
@dagmawiabey8358 2 жыл бұрын
this doesnt look like its coded in JS good job man keep it up!👍
@ignacio3460
@ignacio3460 3 жыл бұрын
Super cool! I hope you eventually make a version with a quadtree for chunks of varying voxel size and maybe even a voxel planet
@simondev758
@simondev758 3 жыл бұрын
Yeah I was kinda toying around with that same idea!
@hamzzashaffi
@hamzzashaffi 3 жыл бұрын
Great as usual! Thanks Simon! :)
@simondev758
@simondev758 3 жыл бұрын
welcome!
@Maxjoker98
@Maxjoker98 5 ай бұрын
I have an even hackier version of instancing for my Babylon.js Voxel game prototype: Since I needed to know how transparent textures looked when rendered properly, the simple instancing didn't work, as it produced way to many faces. But you can pre-create one instance per face combination(64 possible face combinations), and cull faces that way.
@reyariass
@reyariass 3 жыл бұрын
In before you become popular! Great video, I would love to see where you take this in the future and what cool things you add to it. (Probably shouldn’t call it Minecraft But Better™️)
@amurrjuan
@amurrjuan 3 жыл бұрын
Your mountains look amazing
@simondev758
@simondev758 3 жыл бұрын
ty
@Furiousky
@Furiousky 3 жыл бұрын
@@simondev758 will you do another episode of this? I would love to see wildlife and/or more plants like grass or flowers.
@sergicamps24
@sergicamps24 3 жыл бұрын
Nice Work!
@MarkoBrainz
@MarkoBrainz 3 жыл бұрын
This is so amazingggg
@Brahvim
@Brahvim 3 жыл бұрын
You deserve more subscribers than Sam Hogan, judging this! Also you helped me prove to my cousin as to how Game Engines are not everything. I am learning p5.js here and hope to learn THREE.js soon too! Thanks! :D!
@netpeggle4458
@netpeggle4458 3 жыл бұрын
i realy like the look of the tree :)
@gaia35
@gaia35 3 жыл бұрын
Minecraft used to feel like this. I miss seeing the noise maps in the terrain.
@alexisrodriguez7127
@alexisrodriguez7127 3 жыл бұрын
I love the trees
@1b0ngo1
@1b0ngo1 3 жыл бұрын
I am really impressed with how much you are able to make in languages like these! I am very suprised that you haven't been hired by big game companies yet!
@simondev758
@simondev758 3 жыл бұрын
Used to work for big game companies.
@1b0ngo1
@1b0ngo1 3 жыл бұрын
@@simondev758 well what happened? Why did you stop? You seem more than qualified
@simondev758
@simondev758 3 жыл бұрын
@@1b0ngo1 Got promoted to architect, guided entire company's tech decisions, hired by Google, led a team there. Got bored. Doing other things now. These videos are a way of me to still fiddle with code, meet some interesting people, without committing to 9-5 job.
@pengain4
@pengain4 Жыл бұрын
Your channel is underappreciated.
@danielzaiser
@danielzaiser 3 жыл бұрын
I watch your videos in bed, they really help me fall asleep, thanks! 👍
@bungiebee4049
@bungiebee4049 3 жыл бұрын
I think adding the ambient occlusion really makes it stand out.
@nellocalisthenics
@nellocalisthenics 3 жыл бұрын
Hi man i was just wondering after viewing your videos if a project can be made. I remember playing in Minecraft Servers with a sort of RPG mode to kill monsters and gain money > buy and form an economy by that. It would be nice to have you explaining how minecraft plugins can be made, work or just experiment with it, economy is also very fun, i would be glad to see that. Your videos are amazing.
@kiwolf7776
@kiwolf7776 3 жыл бұрын
9:44 It does. It has a 4096 build high limit. The only thing, is that the game stops let you place blocks at 320. But there are some ways to break this block.
@bloooops
@bloooops 3 жыл бұрын
If you don't look carefully it actually looks like Minecraft. Also I love the terrain generation.
@MarB_Music
@MarB_Music 3 жыл бұрын
Cool! I didn't know that you can do stuff like this with javascript. I use it a bit at work for creating web apps :)
@jlf_
@jlf_ 3 жыл бұрын
i am happy i found your channel
@BlueDiamondYTB
@BlueDiamondYTB 3 жыл бұрын
there is some super idea there
@derisis13
@derisis13 3 жыл бұрын
Those lighting issues sometimes happen in the original Minecraft. Now I know why... Also, the terrain and tree generation looks like another voxel game, Creativerse. You were on a pretty solid track!
@ElijahIsMe
@ElijahIsMe 3 жыл бұрын
great stuff!
@simondev758
@simondev758 3 жыл бұрын
Thanks!
@justanotherhotguy
@justanotherhotguy 3 жыл бұрын
Can you try implementing multi block “entities”, something Minecraft won’t be able add? Basically imagine building your own ship and than sailing it. The main problem is water physics and its’ interaction. Accepting the challenge?
@Lolmanik
@Lolmanik 3 жыл бұрын
this is amazing! how do you have only 20k subs you deserve more
@root4098
@root4098 3 жыл бұрын
I'd recommend switching out the perlin noise for voronoi noise. older versions of minecraft used voronoi and many people prefer minecrafts old world generator which utilized the voronoi noise. Gives much cooler generation. a game like minecraft was never supposed to have those wide open spaces
@falxie_
@falxie_ 3 жыл бұрын
I'm really impressed by the trees
@ZenReal
@ZenReal Жыл бұрын
this is sick! (also god dam you could do a good bob from bobs burgers impression)
@kirbs0001
@kirbs0001 3 жыл бұрын
Problem with any heightmap-based terrain generation is the lack of overhangs. Even a 4087 bit gradient can only produce a cliff. Procedural terrain generation is still an area that hasn't really seen any improvement since minecraft released over a decade ago.
@simondev758
@simondev758 3 жыл бұрын
I'll write a note specifically to add those for v3, when I get bored enough to try that.
@kjpg7413
@kjpg7413 3 жыл бұрын
@@simondev758 This would be great to see. If you do, I would like to put in the suggestion not to use/teach the trilinear interpolation that Minecraft uses to speed up 3D noise generation. The reasons that Minecraft decided trilerp was necessary to make noise fast, were shortsighted at best. It basically came down to using too many noise layers, and not implementing any other optimizations. It looks very griddy, and isn't necessary to get good-performing 3D noise-based overhangs. It would help the community for there to be fewer tutorials that re-teach this, and more that teach other methods. My suggestion: - First, define your 3D noise formula consisting of your fBm/ridged/etc. Take what would define an ordinary 2D heightmap, and add the third coordinate to the noises. Thus, it becomes a heightmap that changes vertically, sometimes leading to overhangs. The vertical frequency trades off overhangs and the risk of floating islands. Test "noiseFormula(x,y,z) > y ? solid : air" to decide whether to place a block. - The optimization: Find the minimum and maximum values it can produce. These are the min/max height for your terrain. Only loop over this Y coordinate range (assuming Y is vertical). Everything below is solid, and everything above is air. It's probably easiest to set a big range while you tune your noise formula, then set the exact values after.
@kjpg7413
@kjpg7413 3 жыл бұрын
Also I would argue that there have been improvements in terrain generation since Minecraft was released. Newer ways to generate noise with less directional bias, biome distributions, optimizations for generating 3D noisemaps, etc. The community can be quick to latch onto old methods, though, and Minecraft doesn't seem keen to incorporate lots of the newer techniques in their updates. This includes the caves/cliffs update, which is still using the griddy trilinear interpolation on its 3D noise.
@ezekil3355
@ezekil3355 3 жыл бұрын
Really nice video!
@xenophonvenios
@xenophonvenios 3 жыл бұрын
I got no idea what you are doing, but it is awesome
@simondev758
@simondev758 3 жыл бұрын
lol thx!
@kairu_b
@kairu_b 3 жыл бұрын
This is so noice!
@user-gm2rv8tv4e
@user-gm2rv8tv4e 9 ай бұрын
wish i could build something like this
@chopagames5184
@chopagames5184 3 жыл бұрын
Nice job... Now you could try to make minecraft mechanism without block- so more realistic hills digging holes etc 😁
@cirospaciari5015
@cirospaciari5015 3 жыл бұрын
Great video, waiting to see the github ro explore more code :D
@simondev758
@simondev758 3 жыл бұрын
Code's coming soon, gotta just clean it up.
@aj35lightning
@aj35lightning 3 жыл бұрын
all the different techniques used, that was insane
@simondev758
@simondev758 3 жыл бұрын
A lot, but they're pretty simple and quick to learn
@aj35lightning
@aj35lightning 3 жыл бұрын
@@simondev758 simple is pretty relative haha. A lot of these I would have never thought to do on my own. If you wanted to do a paid "advanced techniques course" I think you definitely could.
@simondev758
@simondev758 3 жыл бұрын
@@aj35lightning I'll definitely think about it, ideally I'd like to just give this info for free But also wanna pay for things with money, so gotta find a balance I'll see if patreon gets me far enough
@aj35lightning
@aj35lightning 3 жыл бұрын
@@simondev758 yeah I really admire that your giving this out for free. Also why I admire Yuri's channel and livestreams. I learn so much from them. He also came out with a course and it seems pretty successful. It's focused more on general webgl website integrations, not game dev specifically. Even if most of the information is out for free I think there's value in aggregating it all and having a guiding curriculum for ppl to follow and complete. Some ppl only look for courses, paid or free, like the mega videos on the freecodecamp channel. Like they find a topic they wanna learn and binge a course vs looking for random videos in that topic. Really Not trying to push you to do it, I know making a course would be a pain and a lot of work. More just wanted to say the market is definitely there if you wanted to go that route
@simondev758
@simondev758 3 жыл бұрын
@@aj35lightning You bring up some good points, I kinda mulled over the idea last night a bit. I'll probably start collecting ideas into some sort of "course like" framework to start, wouldn't be surprised if a lot of it still goes out in free videos but at the very least I'll build out the curriculum.
Is 8-Bit Minecraft Possible?
13:56
Inkbox
Рет қаралды 1 МЛН
skibidi toilet 73 (part 1)
04:46
DaFuq!?Boom!
Рет қаралды 34 МЛН
Mac & Cheese Donut @patrickzeinali @ChefRush
00:53
albert_cancook
Рет қаралды 239 МЛН
Парковка Пошла Не По Плану 😨
00:12
Глеб Рандалайнен
Рет қаралды 14 МЛН
I Made a Minecraft RPG game
20:11
Toiu
Рет қаралды 3 МЛН
Is this Minecraft?
9:27
Mumbo Jumbo
Рет қаралды 2 МЛН
When Optimisations Work, But for the Wrong Reasons
22:19
SimonDev
Рет қаралды 754 М.
This is NOT Minecraft... ?!
12:14
AntVenom
Рет қаралды 1,9 МЛН
I Tried to Make Star Wars Battlefront II in JavaScript
13:32
SimonDev
Рет қаралды 118 М.
Can AI Code Minecraft? Watch ChatGPT Try
8:06
BadGameDev
Рет қаралды 1 МЛН
I Made Minecraft Realistic
11:22
mysticat
Рет қаралды 3,1 МЛН
Making a Game in JavaScript with No Experience
5:49
Goodgis
Рет қаралды 688 М.
Giving Personality to Procedural Animations using Math
15:30
t3ssel8r
Рет қаралды 2,3 МЛН
How Big Budget AAA Games Render Clouds
10:45
SimonDev
Рет қаралды 249 М.
Subscribe for more!! #procreate #logoanimation #roblox
0:11
Animations by danny
Рет қаралды 3,8 МЛН
Распаковка айфона под водой!💦(🎥: @saken_kagarov on IG)
0:20
Взрывная История
Рет қаралды 10 МЛН
План хакера 🤯 #shorts #фильмы
0:59
BruuHub
Рет қаралды 999 М.
Распаковка айфона в воде😱 #shorts
0:25
Mevaza
Рет қаралды 1,1 МЛН
How Neuralink Works 🧠
0:28
Zack D. Films
Рет қаралды 21 МЛН
Самый маленький игровой ПК
0:46
ITMania - Сборка ПК
Рет қаралды 579 М.