Henrik Kniberg made his own UA-cam video that's essentially the contents of this presentation. That version has 100K views. ua-cam.com/video/CSa5O6knuwI/v-deo.html
I really hope this was one of those recordings where the audience just isn't audible to the mic, because this was an incredible presentation and I hope he was getting all the little chuckles and stuff that he deserved, this was such a delightful watch
It's actually insane how while watching this I've had several moments where it all just clicks and terrain that I've seen 10,000 times before suddenly has meaning to it, like I understand how and why it generated that way instead of just going "Oh that's a weird little mountain, anyway.."
This a type of technique taught in most computer science and graphics since Perlin first published his noise formula, it's genuinely surprising you haven't seen similar things in the past. Notably, nothing in this video is really that different from Minecraft's original terrain generation aside from the fjords. I was expecting them to have cubic chunks, some optimisation and more realism instead of a poor recreation of "real terrain" mods from over 10 years ago. FYI most mods for Minecraft are open source, if you want to pay with this kind of thing, look there.
It shows that there is so much potential behind the terrain gen still. Like water placement + terrain offset variations creating lakes and rivers at different altitudes.
@@MiriadCalibrumAstar It's probably just a different configuration of values for the pre-existing terrain generation framework, and then some more condition checks like x biome can't be next to x biome or x terrain feature can't generate unless this value is x and whatnot. Realistic terrain generation isn't that far off from the default terrain generation, which is what he said during the presentation, it's all based pretty much entirely off of these charts with basic number values.
@@Corzappy Thats quite true, ive theorized about it too. Though out of curiosity i want to know what kind of noises do they use and how are they implemented.
As a developer who has always dabbled a little in game development on my own time this is really interesting. And honestly one of the best explanations of Perlin noise I've come across.
What is insane is that there were at least a dozen concepts that Henrik only briefly mentioned while offhandedly saying that those concepts would take an entire lecture to get into properly. Things like local water levels that generate aquifers, placement of terrain features and structures, how biome placement is tweaked in the code to allow for more natural biome transitions, etc. are all potentially really interesting topics (that probably are only interesting to a select few who play Minecraft and have an interest in how it works). I’m still amazed that Mojang was able to make this work in less than 18 months and that they were able to make it work on all the various platforms that the game is available. On a side note, now that Henrik has recovered from seeing everything in 5 dimensions, hopefully he will return to Mojang again one day.
If you as a professional Developer within a large development team can barely achieve that within 18 months, then there's something wrong with your scheduling
It would have been neat if he had mentioned a bit about the original style of cave generation which as far as I know is still present near the surface. I believe it uses a technique called Perlin Worms which is basically a random walk but using Perlin noise for more gradual movement. It would fit in quite well following on from the explanation of the overall terrain shape.
I've just been looking in to terrain generation and how to stack noise values. This explanation is absolutely wonderful to visually understand what does what and why.
as a consistent player I really want to see more spaghetti caves. Cheese caves are cool but a bit overwhelming when you see a ton of ores at once and they are on the cielling and talls walls that are not easily accessible. Not to mention the second you walk into a cheese cave you can see everything at once, a list of objectives trying to mine ores rather than blissfully exploring and coming across ores. Spaghetti caves are fun because you never know what your going to run into and when you come across an ore its easily accessible
I wonder if it’s a psychological thing. There still are inaccessible ores on the ceilings of spaghetti caves, but maybe they arent as noticeable since a spaghetti cave feels like a path and so you instinctively focus on the ground and walls around you. Meanwhile a cheese cave is huge, kind of aimless at times, and anything can fall on you from above. You end up looking at the ceiling, the walls, everywhere more often. Or maybe you completely light up your caves or use night vision. In those cases you aren’t going to have those biases. And I guess theres a size factor thing. Spaghetti caves often are smaller (I have seen really tall ones before though, so not always) and so the ceiling is going to be easier to reach.
@@iveharzingtrue. The caves are way more beautiful now. There's always that feeling of awe when it's a beautiful cave but of course some parts are still "traditional" which is nice and there's that feeling of familiarity.
I like the cheese caves, because they're very pretty to look at. My brightness and black balance on my screen isnt very high. So unless I use a night vision potion, I actually can't see the ores on the top of the cheese caves like you do. And even if I do see them, I ignore the ores unless its diamonds. So I just run around looking at the floor only. Spaghetti caves I look at the floor walls and ceiling since 1 torch will light up the whole section.
Jumped back into the game since last playing when ocelots were added. What a huge difference, the generation is so impressive. I flew for a couple hours in creative just exploring massive underground caves and rivers.
Awesome presentation! I am mind-blown also by the underground water generation ! It would be great to see another talk like this explaining how you did it :) BTW that was on of the best representation of 5D grid ever seen ahaha
26:43 I really love that they wanted to preserve the wacky character of the old Minecraft world gen, but there’s something so majestic about Minecraft with realistic terrain. I almost wish it was an option in the settings
Let's not forget that for a short time, the simple player had pretty fine control of the terrain generation(1.12.2), nice to find out what those settings were doing.
This has given me so much inspiration to continue with my own generation, i hit s bit of a landmark with terrain when trying to implement biomes, specifically i was trying to make biomes change the terrain, rsther than calculate the terrain and make the biomes go where the terrain fits, im going to try this out immediately, especially the splines thats a reslly clever way of terrain manipulation that i eould have never thought of!! Very good video and beautiful explanation 👍
I had the exact same mistake/issue haha, how'd yours end up going? Specifically, I had been using unique splines for each biome which multiplied the terrain height, but this meant you had MASSIVE 'jumps' between biomes rather than smooth blending
I'm mind blown by the fact we still use interlaced video today in a world with essentially no CRT TVs I hope I'm not the only one who think this is really distracting?
I never thought that a presentation was on UA-cam purely about the way minecraft generates it's terrain, and it is made by the person who made the minecraft terrain generation! Can't wait to use this on my own game! The way the "spaghetti" caves work is genius.
Adding different shapes, irregular tesselated geometries, distinct noise patterns for the variance of shapes and playing with different bits of physics are just many ways these concepts can clearly be used to generate infinite varieties of dynamically generated and immersive ige's for most genres. This video is incredibly broadminded and extremely interesting.
Not first time I watch a video about terrain generation and perlin noise but this is really well explained and interesting, explaining well how many features generate. Saved for further reference!
Finally a speaker that repeats the questions that were asked so we know what's going on. Yeah, I love noise. Some good memories playing around with different noises in texture creation sandboxes and terrain generators. And I still use them in my compositing job, making animated movies look good or creating FX for them. Maybe to add some fine surface detail like grainy sand that wasn't in the actual render or using 3d noise as a force field for wind strength in a snow particle system. Though with Minecraft, I'm still playing 1.12.2 for some mods I wouldn't want to play without and I use the Realistic Terrain Generation mod since I like my worlds more earth like than minecrafty with all it's weird floating noise bits. And I wish Minecraft had some more realistic terrain generation itself with tectonic plates and climate that follows the terrain shapes and climate bands instead of the random clouds. I currently use Geographicraft for that.
I'm surprised how much of this I've already done as a hobby, didn't think about splitting biomes up by continentalness though, I was instead trying to bias temperature and humidity with altitude, continentalness looks alot more controllable
So basically, Minecraft is a stellar masterpiece collection of ideas, formulas and codes. At least that's what it seemed to me as a civil engineer who strays away from coding apart from Excel spreadsheets.
This is amazing. Being both a long time minecraft fan and also an aspiring game developer, this just fills me with inspiration and admiration for those working on making videogames
I loved this, i would absolutely adore a whole lecture series that goes in-depth on (minecraft) procedural terrain gen, i love that particular combination of math, physics & gaming.
@@lastyhopper2792 this is a bot, it took 2 short comments and combined them together. The first one being "Seems like pretty simple but smart concepts implemented in a clever way" by johannesr8709, and "I'd watch this for hours. Such a good presenter." by bsdetector837." It then replaced added full stops to both comments before combining them causing it to be, "Seems like pretty simple but smart concepts implemented in a clever way.. I’d watch this for hours. Such a good presenter.." instead of "Seems like pretty simple but smart concepts implemented in a clever way. I’d watch this for hours. Such a good presenter."
I LOVE talks like this, where a very complicated concept is explained to noobies thanks to following step by step a very simple example that encompasses the bases of the subject at hand!
I like this Chad joined Mojang Studios, completely fixed and changed the world generation making it so much more fun and cool, and then departed from Mojang.
12:42 Can imagine a multiplayer game mode where you have to build a tower on one of the islands by mining islands around it to get material. There are bonuses randomly generated at random heights and then the goal at the certain height.
This is the most interesting video I have watched in a long time. I only wish he had talked more about the parts that he said were too complicated, even if the video ended up being 3 hours long
As somone thats tried to code minecraft clones in unity i would always get as far as terrain generation, 3d terrain and biomes but when it came to understanding plateaus and valleys, or even ravines i never truly understand how i could pull it off without just stamping a set structure into the generation. I now understand how i could implement the ravines and other things into the terrain generation. This was a very useful and helpful video for understanding terrain generation. Thank you
Having played minecraft for over 8 years and having watched maybe a yearsworth of youtube videos about minecraft and it's innerworkings, i am glad to say that i learned something, though i knew most of this.
i remember a minecraft version where you were able to edit the world generation algorithm before creating a new world and i think this was a great feature... sadly it got removed with the next major update :c
I'm thinking about how much smoother it can run with 3D chunks. Exciting questions and possibilities raised in here that made me think of potential mods up and coming programmers could try out for themselves.
Not much. Chunks are already split up into 16x16x16 cubes for rendering. If a chunk section isn't in view, it isn't rendered. And while generation eats a huge chunk of CPU time, it only matters the first time you move into range of those chunks. Then they are there. Also, you have to think about calculation distance. You still want the wheat in your garden to grow when you're in the basement. Horizontally it's, by default, 192 blocks (12 chunks). If you were to apply this vertically, too, you'd have to climb some of the highest peaks for the lowest bit of the chunk to not be within it anymore. So there'd very rarely be any savings from doing that instead of calculating the whole chunk.
Рік тому+1
I like how they recognize weird stuff around minecraft world is a thing and they go for it, incredible speech by the way.
it's not enough to say that once you hit enough coldness, you get a savannah instead of a desert. Plants trap humidity, they make surroundings both colder & more humid. A way to generate this would be to have the humidity noise function be layered with a set function which will add steep rises/"jumps" at certain intervals, same for temperature. Then, adjust the biome determination fn
I don't understand anything about coding or developing but i loved this video because Henrik explained everything in a fun way that anyone can enjoy it.
Mojang Headquarters: I want better and bigger Minecraft worlds. Mojang Developers: What about noise? Some more? Just a little more? Perfect. Very interesting to watch and learn/understand, time worth spent!
Even though there's a lot of positives to this new system I still sort of miss being able to find strange biome mixes, like old growth taiga next to mesa. I checked seed map and it's physically impossible now.
This is cool to watch, but my issue with vanilla gen remains, as the generation is still a bit too continental, and therefore aimless in a high scale perspective. Many will call bigger oceans a waste of space, but that's what gives purpose to continents in a first place. Looking at fanmade gens such as Terraforged I still believe that a lot can be done to make the world generation feel satisfying to explore.
Agree and disagree to a certain extent. Current minecraft vanilla gen feels like the worst of both worlds in regards to terrain generation. Being too 'realistic' to allow for some of the more grand and mystical generation we got in the early versions (pre-adventure update) but not realistic enough to allow for generation to feel 'different' and unique. Or worth exploring. Random/aimless works very well, again, looking at the earlier versions of the game. But only if it's truly random. And not so overly engineered and rule based that you always tend to get the same generation in the end. In a certain way it's like stable diffusion/AI generated imagery. Give it too many prompts and you'll get the same image over and over again. Be more loose and restrained in your use of prompts, and you can get a much more interesting and unique output each time. Current minecraft world gen is both too restrictive to allow for everything to feel 'fresh' and different (it kind of all feels same-y) but at the same time the lack of continents or maybe 'tectonic biomes', leads to random blobs of terrain generation that, again, feel same-y in their generic randomness.
@@pagatryx5451 Yeah. Making generation more island-like would actually be amazing if paired with proper optimization, and it would be the way to make everything look distinctive. Sure, the water may feel empty but we could have a proper overhaul of how water biomes feel. Plus, it's a clear tendency for people to have better specs over time, so why not take advantage of that by optimizating it so we can make large render distances something worth it?
@@pagatryx5451Hmm, imo all the problems I had with the world gen were pretty much solved with the caves and clifs update (cellular automaton style biome placement etc)
@@ibisskb If they ever figure out how to use nanite, all of the performance will be put on the data side instead of the rendering side. Lighting might be wonky but it's still the best option.
@@ibisskb not everyone gets better specs every year, I still have my 5 year old pc and don't plan on upgrading anything anytime soon, minecraft is one of the only games i have problems with in newer updates.
Just yesterday before finding this video in my recommended, I was looking at my modded (Oh The Biomes Youll Go mod on RAD 2) Minecraft world and wondered how you would go about changing the way Minecraft is generated while still keeping it somewhat realistic and flowing.
A better way of thinking about procedural generation is that nothing is actually random, "random" is just a phrase we use for things that are too complicated for our minds to understand in real time. Either because we are too lazy to think or because we are not yet capable of understanding
Definitely a very useful video to start learning terrain generation, it is very useful as an introduction. explains everything in a simple and visual way with examples.
The first part makes it seem like every chunk is being randomly generated as you explore it, but what actually happens is it uses the world seed to calculate what should be there, which is how one seed will always be the same
It’s almost like they were showing an example of a bad world generation method, and slowly adding on more factors to demonstrate how Minecraft’s terrain gen works
I also think it would be cool if the sandstone in deserts went down deeper so you can get unique desert caves, maybe even a few new variants of current mobs in them.
Such an informative presentation and even though I was somewhat familiar with noise maps it was broken down so effectively that I really gained an understanding and appreciation for the level of problem solving programers go through.
The simplified terrain generation really created some cool and interesting terrains. i mean like i have never seen a lake like this 24:38 in minecraft. sure, there is some lakes but they are never as cool as this. i can just run this simplified terrain generation code without any additions like grass and trees, only stone, air and water and it will still be much more interesting than the current terrain generation. Man i can spend hours just looking at what kind of weird shapes this code will give me, unlike minecraft's more basic terrains (its ironic since this code is the "basic" version)
I think the "boringness" of minecraft's current generation is due to how much they have configured the noise, and how many rules they have set in place. It is still possible to see some really wacky generation like that in todays minecraft, but it is waaaaay rarer because of the fine tuning. If they were to unconfigure it a bit, their test chunks would look less like they want it to look like, but also allow for more wacky stuff to happen more often. The problem is balancing the tuning of generation of millions of worlds and their 100s (at most) of test worlds. It makes it very hard to tune it to allow for wacky and "fantasy" generation and also allow for the flatlands and mountains of consistent quality and consistency.
Very interesting. What's cool is that anybody interested in this kind of procedural generating should play around with Blender and creating materials and geometry nodes. The users there use all kinds of noises and algorithms to manipulate random generation of 3d models. It's quite a nice way of visualising these things and gives the brain a good stretch.
This was a very good talk on how the Minecraft world is generated. I think there is definitely some major parts he left out especially after hearing him say some small parts would take entire talks to properly discuss. I think the details are the parts which definitely would take an enormous amount of learning and discussion to get right, the devils in the details as they might say. I have seen some people in this comment section talk about how the new world generation is boring comparatively and doesn't bring much in terms of "fantasticalness" or outstanding generation. I think the "boringness" of Minecraft's current generation is due to how much they have configured the noise, and how many rules they have set in place. It is still possible to see some really wacky generation like that in todays Minecraft, but it is waaaaay rarer because of the fine tuning. If they were to unconfigure it a bit, their test chunks would look less like they want it to look like, but also allow for more wacky stuff to happen more often. The problem is balancing the tuning of generation of millions of worlds and their 100s (at most) of test worlds. It makes it very hard to tune it to allow for wacky and "fantasy" generation and also allow for the flatlands and mountains of consistent quality and consistency. This generation is definitely limited by biome too however. They were mentioning how they might go back and add 3d biomes to surface biomes as they have done with cave biomes, that would only really work with mountains and could serve to allow for more wacky mountainous generation, like a swamp instead of a meadow at y200, or maybe a jungle at build height, who knows. But one thing that definitely is limiting, is the amount of biomes. As you add more biomes it increases the reason to explore, but also makes it harder to get a certain material. Think about it this way, there is a world with 2 biomes, desert and jungle, in 50% of the world you will get jungle blocks; jungle wood, jungle saplings, grass, etc. In the other 50% you will get desert blocks; sand, sandstone, cactus, etc. Now if you increase the amount of biomes... Lets say you add 100 biomes to a world, only 1% of your world will be 1 biome, rather than the 50% earlier, so now only 1% of the world you can get jungle blocks, only 1% you can get desert blocks, etc. It makes it harder to get certain blocks of your choice without travelling possible 10s of thousands of blocks. One very good example of this is Terralith. It is a datapack which completely revamps Minecraft's generation and it looks stunning for what it can do with the basic blocks don't get me wrong. But it is not very practical to play on. Sky islands with diamond ore, deepslate for volcanoes, emerald peaks (a biome which is a normal deepslate peak but with increased emerald spawn rates, etc. It also makes it very hard to get large amounts of sand for example, whenever I play a world on Terralith I will always have a shortage of sand when I need sand. This is down to the fact that Terralith does 2 things wrong, it adds a disproportionate amount of biomes without sand, and also doesn't add enough sand into the desert biomes, despite not tinkering with default biomes at all, just making them spawn less often. For example there are some desert biomes that are mostly clay, water, dripleaf, wood and sandstone, an oasis biome. It also adds sandstone peaks, mini mountains in desert biomes, made entirely of sandstone. This is fixed in modpacks with the natures compass obviously, however it is not in vanilla and it shows. If Mojang were to circumvent this issue, they would need to think about adding more desert based biomes, or more biomes with sand in them. They could also increase the spawn chance of deserts by a flat percentage amount by increasing their spawn requirements chances, This would lead to more Jungles, Badlands and other wet and humid environmental biomes aswell which is a not so nice side effect of the biome continuity features they have implemented. Another way is what they have already done, make it so that their only spawn requirements are on high humidity and/or erosion. When erosion is high land is flat, deserts are majority flat, and when from the table, when humidity is 5 it HAS to be a desert, there is nothing else it can be. Right now it is to make deserts absolutely massive, which is a more realistic take on how deserts are right now too.
I think first of all: minecraft needs more flat areas. After the mountain update, mountains honestly became less impressive because hills and elevation changes are everywhere. Second, we need more cliffs. Imagine being on top of a 100 block tall massive cliff above the ocean, or boating through a foggy cliff filled swamp, with everything ominously above you.
If you have some basics in geology and geomorphology you'll know that Earth procedural generation is a thousand time more fun and insane that minecraft.
Asking the audience to stand up is a brilliant way to generate terrain!
LMAOOO
-He has to be at least 6 ft tall-
He needs to be at most an erosion of -.2 and be far inland
@@kipchickensoutlmao
that’s just random noise really
A really good look into the world of generation, I'm surprised this hasn't caught any traction.
Henrik Kniberg made his own UA-cam video that's essentially the contents of this presentation. That version has 100K views. ua-cam.com/video/CSa5O6knuwI/v-deo.html
shock micro jumpscare
@@Xfrtrex boo
@@Treetrain1 TREETRAIN1 JUMPSCARE?!
@@Xfrtrex get scared
I really hope this was one of those recordings where the audience just isn't audible to the mic, because this was an incredible presentation and I hope he was getting all the little chuckles and stuff that he deserved, this was such a delightful watch
Fortunately it seems to be, since you couldn't hear the audience when they were asking questions
this was a great talk. Henrik must have spent a lot of hours putting together all the footage of each step of the generation process
It's actually insane how while watching this I've had several moments where it all just clicks and terrain that I've seen 10,000 times before suddenly has meaning to it, like I understand how and why it generated that way instead of just going "Oh that's a weird little mountain, anyway.."
This a type of technique taught in most computer science and graphics since Perlin first published his noise formula, it's genuinely surprising you haven't seen similar things in the past.
Notably, nothing in this video is really that different from Minecraft's original terrain generation aside from the fjords. I was expecting them to have cubic chunks, some optimisation and more realism instead of a poor recreation of "real terrain" mods from over 10 years ago.
FYI most mods for Minecraft are open source, if you want to pay with this kind of thing, look there.
@@orbatosreliable cubic chunks would leave the sea of children crying for a content update
@@aiexzs yeah... they should improve what already exists in the game instead of making it bugier
@@orbatos not only that, but the fjords are terrible from a gameplay perspective and get old quickly anyway
@@shadesoftime Exactly. Exploration is really annoying until you get an elytra and fireworks.
It shows that there is so much potential behind the terrain gen still. Like water placement + terrain offset variations creating lakes and rivers at different altitudes.
This was utterly mind boggling. So insanely clever
then if u add those realistic terrain generation mods.... i wonder how they are coded and interact with the normal terrain generation.
@@MiriadCalibrumAstar It's probably just a different configuration of values for the pre-existing terrain generation framework, and then some more condition checks like x biome can't be next to x biome or x terrain feature can't generate unless this value is x and whatnot.
Realistic terrain generation isn't that far off from the default terrain generation, which is what he said during the presentation, it's all based pretty much entirely off of these charts with basic number values.
@@Corzappy Thats quite true, ive theorized about it too. Though out of curiosity i want to know what kind of noises do they use and how are they implemented.
actually pretty simplistic, I was guessing trig waves and random noise would be used whilst watching and to my surprise they were.
don't wan't to be that guy but it's actually simple concepts
As a developer who has always dabbled a little in game development on my own time this is really interesting. And honestly one of the best explanations of Perlin noise I've come across.
But there was no explanation of perlin noise, was there?
@@nothappyzthere wasn't an explenation of how it's made, but there was an explanation of what it does
@@nothappyzperlin noise is publically accessible maths, it would be an utter waste to cover it here
@@terminalvelocity635 did I ever imply that?
@@nothappyzby saying there is no explination, you imply that you want an explanation... so... yes, you did imply it.
What is insane is that there were at least a dozen concepts that Henrik only briefly mentioned while offhandedly saying that those concepts would take an entire lecture to get into properly. Things like local water levels that generate aquifers, placement of terrain features and structures, how biome placement is tweaked in the code to allow for more natural biome transitions, etc. are all potentially really interesting topics (that probably are only interesting to a select few who play Minecraft and have an interest in how it works). I’m still amazed that Mojang was able to make this work in less than 18 months and that they were able to make it work on all the various platforms that the game is available. On a side note, now that Henrik has recovered from seeing everything in 5 dimensions, hopefully he will return to Mojang again one day.
The devil is totally in the details for this stuff. The basic terrain is the easy part.
Also not all these features were available in the initial release. This is many years and many snapshots surmised.
If you as a professional Developer within a large development team can barely achieve that within 18 months, then there's something wrong with your scheduling
@@luis-sophus-8227remember that the entirety of New Vegas was made in 18 months.
It would have been neat if he had mentioned a bit about the original style of cave generation which as far as I know is still present near the surface. I believe it uses a technique called Perlin Worms which is basically a random walk but using Perlin noise for more gradual movement. It would fit in quite well following on from the explanation of the overall terrain shape.
I've just been looking in to terrain generation and how to stack noise values. This explanation is absolutely wonderful to visually understand what does what and why.
Seems like pretty simple but smart concepts implemented in a clever way.
I think you just encapsulated in 1 sentence, the proper approach to computer science.
@@log9705 All science really
For anyone curious, the number at 4:30 is one duodecillion six hundred and twenty undecillion
I got 1 undecullion 620 decillion
as a consistent player I really want to see more spaghetti caves. Cheese caves are cool but a bit overwhelming when you see a ton of ores at once and they are on the cielling and talls walls that are not easily accessible. Not to mention the second you walk into a cheese cave you can see everything at once, a list of objectives trying to mine ores rather than blissfully exploring and coming across ores. Spaghetti caves are fun because you never know what your going to run into and when you come across an ore its easily accessible
I wonder if it’s a psychological thing. There still are inaccessible ores on the ceilings of spaghetti caves, but maybe they arent as noticeable since a spaghetti cave feels like a path and so you instinctively focus on the ground and walls around you.
Meanwhile a cheese cave is huge, kind of aimless at times, and anything can fall on you from above. You end up looking at the ceiling, the walls, everywhere more often.
Or maybe you completely light up your caves or use night vision. In those cases you aren’t going to have those biases.
And I guess theres a size factor thing. Spaghetti caves often are smaller (I have seen really tall ones before though, so not always) and so the ceiling is going to be easier to reach.
I'm personally a *huge* fan of the new cheese type caves, because I think they're beautiful.
@@iveharzingtrue. The caves are way more beautiful now. There's always that feeling of awe when it's a beautiful cave but of course some parts are still "traditional" which is nice and there's that feeling of familiarity.
I feel like all of the old caves were spaghetti caves.
I like the cheese caves, because they're very pretty to look at. My brightness and black balance on my screen isnt very high. So unless I use a night vision potion, I actually can't see the ores on the top of the cheese caves like you do. And even if I do see them, I ignore the ores unless its diamonds. So I just run around looking at the floor only. Spaghetti caves I look at the floor walls and ceiling since 1 torch will light up the whole section.
Jumped back into the game since last playing when ocelots were added. What a huge difference, the generation is so impressive. I flew for a couple hours in creative just exploring massive underground caves and rivers.
minecraft should make us be able to mess up some generation settings in the world creation menu again
Yeah with how dynamic those 5 parameters are, it'd be cool to have access to it without mods.
Awesome presentation! I am mind-blown also by the underground water generation ! It would be great to see another talk like this explaining how you did it :)
BTW that was on of the best representation of 5D grid ever seen ahaha
By far one of the most interesting lectures i've ever seen. just so amazed by how everything works in a game that i play since 2011
26:43 I really love that they wanted to preserve the wacky character of the old Minecraft world gen, but there’s something so majestic about Minecraft with realistic terrain. I almost wish it was an option in the settings
How does this only have 3k views?!?! That was the most interesting video i´ve ever seen
one of the most underrated undervoted video on yt
Let's not forget that for a short time, the simple player had pretty fine control of the terrain generation(1.12.2), nice to find out what those settings were doing.
It's a shame they removed that by the way. I don't play 1.12.2+ versions
Yes, I am disappointed they removed that. When I came back to Minecraft to play it with my son I found I could no longer tweak the world.. damn
This has given me so much inspiration to continue with my own generation, i hit s bit of a landmark with terrain when trying to implement biomes, specifically i was trying to make biomes change the terrain, rsther than calculate the terrain and make the biomes go where the terrain fits, im going to try this out immediately, especially the splines thats a reslly clever way of terrain manipulation that i eould have never thought of!! Very good video and beautiful explanation 👍
I had the exact same mistake/issue haha, how'd yours end up going?
Specifically, I had been using unique splines for each biome which multiplied the terrain height, but this meant you had MASSIVE 'jumps' between biomes rather than smooth blending
27:56 I'd want this as a fun generation setting
I watch lectures, videos, and talks about Minecraft terrain generation every year or two, and I always get something from it.
I'm mind blown by the fact we still use interlaced video today in a world with essentially no CRT TVs
I hope I'm not the only one who think this is really distracting?
It has uses
It's easier to send 60 half frames then 30 full frames
Atleast this is for cable TV stuff
It should be illegal just the fact that this has only 17K views! very underrated work!
As a computer science student I'm just watching this in awe, so inspiring! Thank you very much for sharing.
I never thought that a presentation was on UA-cam purely about the way minecraft generates it's terrain, and it is made by the person who made the minecraft terrain generation! Can't wait to use this on my own game! The way the "spaghetti" caves work is genius.
Adding different shapes, irregular tesselated geometries, distinct noise patterns for the variance of shapes and playing with different bits of physics are just many ways these concepts can clearly be used to generate infinite varieties of dynamically generated and immersive ige's for most genres. This video is incredibly broadminded and extremely interesting.
Not first time I watch a video about terrain generation and perlin noise but this is really well explained and interesting, explaining well how many features generate. Saved for further reference!
Finally a speaker that repeats the questions that were asked so we know what's going on.
Yeah, I love noise. Some good memories playing around with different noises in texture creation sandboxes and terrain generators. And I still use them in my compositing job, making animated movies look good or creating FX for them. Maybe to add some fine surface detail like grainy sand that wasn't in the actual render or using 3d noise as a force field for wind strength in a snow particle system.
Though with Minecraft, I'm still playing 1.12.2 for some mods I wouldn't want to play without and I use the Realistic Terrain Generation mod since I like my worlds more earth like than minecrafty with all it's weird floating noise bits. And I wish Minecraft had some more realistic terrain generation itself with tectonic plates and climate that follows the terrain shapes and climate bands instead of the random clouds. I currently use Geographicraft for that.
One of the best explanations for procedural terrain that I have ever seen.
I feel like I'm listening to a lesson in school but it's actually on something that interests me, both as a minecraft player and as a programmer
I'm surprised how much of this I've already done as a hobby, didn't think about splitting biomes up by continentalness though, I was instead trying to bias temperature and humidity with altitude, continentalness looks alot more controllable
So basically, Minecraft is a stellar masterpiece collection of ideas, formulas and codes. At least that's what it seemed to me as a civil engineer who strays away from coding apart from Excel spreadsheets.
As a near lifelong player I really enjoyed this insight into world gen!
Minecrafts terrain generator has always been the one feature that puts it above other survival games for me. Its insanely complicated, yet well tuned.
And it's still kinda meh compared to some modded ones
This is amazing. Being both a long time minecraft fan and also an aspiring game developer, this just fills me with inspiration and admiration for those working on making videogames
As someone who loves all things procedural, this was quite interesting and useful!
yeah I had a bit of a mindfuck moment when he spelled it - Procedular - in the slide @ 6:00 though
I loved this, i would absolutely adore a whole lecture series that goes in-depth on (minecraft) procedural terrain gen, i love that particular combination of math, physics & gaming.
Been doing some basic procedural generation, nice to see they also seem to be looking at desmos graphing calculator to visualyze there formulas :D
The Hitchhiker's guide to the galaxy reference was a delightful surprise in such an interesting talk
Seems like pretty simple but smart concepts implemented in a clever way.. I’d watch this for hours. Such a good presenter..
did you just copy a comment from 12 days ago, literally 2 comments away above yours? lol
@@lastyhopper2792 this is a bot, it took 2 short comments and combined them together. The first one being "Seems like pretty simple but smart concepts implemented in a clever way" by johannesr8709, and "I'd watch this for hours. Such a good presenter." by bsdetector837." It then replaced added full stops to both comments before combining them causing it to be, "Seems like pretty simple but smart concepts implemented in a clever way.. I’d watch this for hours. Such a good presenter.." instead of "Seems like pretty simple but smart concepts implemented in a clever way. I’d watch this for hours. Such a good presenter."
I LOVE talks like this, where a very complicated concept is explained to noobies thanks to following step by step a very simple example that encompasses the bases of the subject at hand!
I like this Chad joined Mojang Studios, completely fixed and changed the world generation making it so much more fun and cool, and then departed from Mojang.
he joined in 2011?
ive been researching for making my own game. so seeing a lower level of how my favorite game does it, is like Amazingly helpful.
12:42 Can imagine a multiplayer game mode where you have to build a tower on one of the islands by mining islands around it to get material. There are bonuses randomly generated at random heights and then the goal at the certain height.
The jungle with high hills terrain was aweso.e
Great explanation, this man structured his presentation in a really interesting way !
This is the most interesting video I have watched in a long time. I only wish he had talked more about the parts that he said were too complicated, even if the video ended up being 3 hours long
As somone thats tried to code minecraft clones in unity i would always get as far as terrain generation, 3d terrain and biomes but when it came to understanding plateaus and valleys, or even ravines i never truly understand how i could pull it off without just stamping a set structure into the generation. I now understand how i could implement the ravines and other things into the terrain generation. This was a very useful and helpful video for understanding terrain generation. Thank you
This was really fascinating! I'm going to see all these details as I walk through Minecraft worlds now.
23:56 "...you don't need to write tons of code, you can move these dots around."
Oh man if only everything was THIS simple...
Having played minecraft for over 8 years and having watched maybe a yearsworth of youtube videos about minecraft and it's innerworkings, i am glad to say that i learned something, though i knew most of this.
i remember a minecraft version where you were able to edit the world generation algorithm before creating a new world and i think this was a great feature... sadly it got removed with the next major update :c
I have never understood the values...
You can still do that in CubicChuncks mod.
I miss old customized and buffet.
At least they gave us a whole lot more with datapacks but its just not easy anymore.
I’d watch this for hours. Such a good presenter.
If more people saw this they would appreciate the update being split more.
This guy is a great presenter, very informative and entertaining lecture. Had my interest the whole way.
wow really? I thought he was a brainrot just for how many comparisons he made at the beginning haha
I'm glad TEDTalk is expanding their subject knowledge.
This was awesome i woulda been cheering and whistling when he finished
This concept of reviewing minecraft is so unique compared to others, very cool!
What a great video! I play Minecraft and always wondered how the world was built. Now I know!
I'm thinking about how much smoother it can run with 3D chunks. Exciting questions and possibilities raised in here that made me think of potential mods up and coming programmers could try out for themselves.
Not much. Chunks are already split up into 16x16x16 cubes for rendering. If a chunk section isn't in view, it isn't rendered. And while generation eats a huge chunk of CPU time, it only matters the first time you move into range of those chunks. Then they are there.
Also, you have to think about calculation distance. You still want the wheat in your garden to grow when you're in the basement. Horizontally it's, by default, 192 blocks (12 chunks). If you were to apply this vertically, too, you'd have to climb some of the highest peaks for the lowest bit of the chunk to not be within it anymore. So there'd very rarely be any savings from doing that instead of calculating the whole chunk.
I like how they recognize weird stuff around minecraft world is a thing and they go for it, incredible speech by the way.
This guy would be best professor for my math and science class
it's not enough to say that once you hit enough coldness, you get a savannah instead of a desert. Plants trap humidity, they make surroundings both colder & more humid. A way to generate this would be to have the humidity noise function be layered with a set function which will add steep rises/"jumps" at certain intervals, same for temperature. Then, adjust the biome determination fn
it'd make a rather large difference
Deserts can definitely border snowy mountain peaks, for example there's San Pedro de Atacama, Chile
Wait I thought this is Henrik's channel based on the description, but it's the conference's
It was incredibly revealing. Especially for someone who is learning to program and has had contact with minecraft, hats off!:)
I don't understand anything about coding or developing but i loved this video because Henrik explained everything in a fun way that anyone can enjoy it.
Seems this is hitting people's recommended now, great insight on how generation works
i watched all of this, was interested every step of the way
Mojang Headquarters: I want better and bigger Minecraft worlds.
Mojang Developers: What about noise? Some more? Just a little more? Perfect.
Very interesting to watch and learn/understand, time worth spent!
Even though there's a lot of positives to this new system I still sort of miss being able to find strange biome mixes, like old growth taiga next to mesa.
I checked seed map and it's physically impossible now.
Damn Henrick is just amazing!
If you look at the views curve on the timeline of this video it looks a lot like Perlin noise.
amazing talk, great job! makes me appreciate minecraft even more
12:55 ngl that'd be a cool custom map with different islands having different stuff on them.
This is cool to watch, but my issue with vanilla gen remains, as the generation is still a bit too continental, and therefore aimless in a high scale perspective. Many will call bigger oceans a waste of space, but that's what gives purpose to continents in a first place. Looking at fanmade gens such as Terraforged I still believe that a lot can be done to make the world generation feel satisfying to explore.
Agree and disagree to a certain extent.
Current minecraft vanilla gen feels like the worst of both worlds in regards to terrain generation. Being too 'realistic' to allow for some of the more grand and mystical generation we got in the early versions (pre-adventure update) but not realistic enough to allow for generation to feel 'different' and unique. Or worth exploring.
Random/aimless works very well, again, looking at the earlier versions of the game. But only if it's truly random. And not so overly engineered and rule based that you always tend to get the same generation in the end.
In a certain way it's like stable diffusion/AI generated imagery. Give it too many prompts and you'll get the same image over and over again. Be more loose and restrained in your use of prompts, and you can get a much more interesting and unique output each time. Current minecraft world gen is both too restrictive to allow for everything to feel 'fresh' and different (it kind of all feels same-y) but at the same time the lack of continents or maybe 'tectonic biomes', leads to random blobs of terrain generation that, again, feel same-y in their generic randomness.
@@pagatryx5451 Yeah. Making generation more island-like would actually be amazing if paired with proper optimization, and it would be the way to make everything look distinctive. Sure, the water may feel empty but we could have a proper overhaul of how water biomes feel. Plus, it's a clear tendency for people to have better specs over time, so why not take advantage of that by optimizating it so we can make large render distances something worth it?
@@pagatryx5451Hmm, imo all the problems I had with the world gen were pretty much solved with the caves and clifs update (cellular automaton style biome placement etc)
@@ibisskb If they ever figure out how to use nanite, all of the performance will be put on the data side instead of the rendering side. Lighting might be wonky but it's still the best option.
@@ibisskb not everyone gets better specs every year, I still have my 5 year old pc and don't plan on upgrading anything anytime soon, minecraft is one of the only games i have problems with in newer updates.
i love the maths behind it and also the multi leveled noises
Just yesterday before finding this video in my recommended, I was looking at my modded (Oh The Biomes Youll Go mod on RAD 2) Minecraft world and wondered how you would go about changing the way Minecraft is generated while still keeping it somewhat realistic and flowing.
Very interesting explanation of the world generation.
A better way of thinking about procedural generation is that nothing is actually random, "random" is just a phrase we use for things that are too complicated for our minds to understand in real time. Either because we are too lazy to think or because we are not yet capable of understanding
the silence from the crowd was so loud
Definitely a very useful video to start learning terrain generation, it is very useful as an introduction. explains everything in a simple and visual way with examples.
Interlaced video... My favorite!
I have been trying to find equations for this THANK YOU ❤❤😊😊
please, do talk about how the chunks fit together, maybe in a future talk!
It just samples all the noises at a coordinate that's offset by the position of the chunk
The first part makes it seem like every chunk is being randomly generated as you explore it, but what actually happens is it uses the world seed to calculate what should be there, which is how one seed will always be the same
It’s almost like they were showing an example of a bad world generation method, and slowly adding on more factors to demonstrate how Minecraft’s terrain gen works
YES YES I NEED THIS NEW WORLD GENERATION NOW
omg this is phenomenal, cant wait for the next update
15:29 this would be so cool in desert biomes
I also think it would be cool if the sandstone in deserts went down deeper so you can get unique desert caves, maybe even a few new variants of current mobs in them.
Such an informative presentation and even though I was somewhat familiar with noise maps it was broken down so effectively that I really gained an understanding and appreciation for the level of problem solving programers go through.
fascinating. i've played minecraft since 2012(ish) and it's really cool to understand the process behind the worlds i play in!
The simplified terrain generation really created some cool and interesting terrains. i mean like i have never seen a lake like this 24:38 in minecraft. sure, there is some lakes but they are never as cool as this. i can just run this simplified terrain generation code without any additions like grass and trees, only stone, air and water and it will still be much more interesting than the current terrain generation. Man i can spend hours just looking at what kind of weird shapes this code will give me, unlike minecraft's more basic terrains (its ironic since this code is the "basic" version)
I think the "boringness" of minecraft's current generation is due to how much they have configured the noise, and how many rules they have set in place. It is still possible to see some really wacky generation like that in todays minecraft, but it is waaaaay rarer because of the fine tuning. If they were to unconfigure it a bit, their test chunks would look less like they want it to look like, but also allow for more wacky stuff to happen more often. The problem is balancing the tuning of generation of millions of worlds and their 100s (at most) of test worlds. It makes it very hard to tune it to allow for wacky and "fantasy" generation and also allow for the flatlands and mountains of consistent quality and consistency.
the revelation that chunk loading is the video game equivalent to collapsing a wave function
Bless the UA-cam algorithm, this video is very good
Very interesting. What's cool is that anybody interested in this kind of procedural generating should play around with Blender and creating materials and geometry nodes. The users there use all kinds of noises and algorithms to manipulate random generation of 3d models. It's quite a nice way of visualising these things and gives the brain a good stretch.
This was a very good talk on how the Minecraft world is generated. I think there is definitely some major parts he left out especially after hearing him say some small parts would take entire talks to properly discuss. I think the details are the parts which definitely would take an enormous amount of learning and discussion to get right, the devils in the details as they might say.
I have seen some people in this comment section talk about how the new world generation is boring comparatively and doesn't bring much in terms of "fantasticalness" or outstanding generation.
I think the "boringness" of Minecraft's current generation is due to how much they have configured the noise, and how many rules they have set in place. It is still possible to see some really wacky generation like that in todays Minecraft, but it is waaaaay rarer because of the fine tuning. If they were to unconfigure it a bit, their test chunks would look less like they want it to look like, but also allow for more wacky stuff to happen more often. The problem is balancing the tuning of generation of millions of worlds and their 100s (at most) of test worlds. It makes it very hard to tune it to allow for wacky and "fantasy" generation and also allow for the flatlands and mountains of consistent quality and consistency.
This generation is definitely limited by biome too however. They were mentioning how they might go back and add 3d biomes to surface biomes as they have done with cave biomes, that would only really work with mountains and could serve to allow for more wacky mountainous generation, like a swamp instead of a meadow at y200, or maybe a jungle at build height, who knows. But one thing that definitely is limiting, is the amount of biomes. As you add more biomes it increases the reason to explore, but also makes it harder to get a certain material. Think about it this way, there is a world with 2 biomes, desert and jungle, in 50% of the world you will get jungle blocks; jungle wood, jungle saplings, grass, etc. In the other 50% you will get desert blocks; sand, sandstone, cactus, etc. Now if you increase the amount of biomes... Lets say you add 100 biomes to a world, only 1% of your world will be 1 biome, rather than the 50% earlier, so now only 1% of the world you can get jungle blocks, only 1% you can get desert blocks, etc. It makes it harder to get certain blocks of your choice without travelling possible 10s of thousands of blocks. One very good example of this is Terralith. It is a datapack which completely revamps Minecraft's generation and it looks stunning for what it can do with the basic blocks don't get me wrong. But it is not very practical to play on. Sky islands with diamond ore, deepslate for volcanoes, emerald peaks (a biome which is a normal deepslate peak but with increased emerald spawn rates, etc. It also makes it very hard to get large amounts of sand for example, whenever I play a world on Terralith I will always have a shortage of sand when I need sand. This is down to the fact that Terralith does 2 things wrong, it adds a disproportionate amount of biomes without sand, and also doesn't add enough sand into the desert biomes, despite not tinkering with default biomes at all, just making them spawn less often. For example there are some desert biomes that are mostly clay, water, dripleaf, wood and sandstone, an oasis biome. It also adds sandstone peaks, mini mountains in desert biomes, made entirely of sandstone. This is fixed in modpacks with the natures compass obviously, however it is not in vanilla and it shows.
If Mojang were to circumvent this issue, they would need to think about adding more desert based biomes, or more biomes with sand in them. They could also increase the spawn chance of deserts by a flat percentage amount by increasing their spawn requirements chances, This would lead to more Jungles, Badlands and other wet and humid environmental biomes aswell which is a not so nice side effect of the biome continuity features they have implemented. Another way is what they have already done, make it so that their only spawn requirements are on high humidity and/or erosion. When erosion is high land is flat, deserts are majority flat, and when from the table, when humidity is 5 it HAS to be a desert, there is nothing else it can be. Right now it is to make deserts absolutely massive, which is a more realistic take on how deserts are right now too.
I think first of all: minecraft needs more flat areas. After the mountain update, mountains honestly became less impressive because hills and elevation changes are everywhere. Second, we need more cliffs. Imagine being on top of a 100 block tall massive cliff above the ocean, or boating through a foggy cliff filled swamp, with everything ominously above you.
If you have some basics in geology and geomorphology you'll know that Earth procedural generation is a thousand time more fun and insane that minecraft.
I am glad this video was recommended to me