Herbert Wolverson - Procedural Map Generation Techniques
Вставка
- Опубліковано 14 тра 2024
- This talk is from the 2020 virtual Roguelike Celebration:
roguelike.club/event2020.html
Herbert has been a hobby game developer since the 1990s, and is the developer of Nox Futura, One Knight in the Dungeon, and several 7DRL projects. Author of the Rust Roguelike Tutorial, and upcoming book with the working title Learn Rust by Making a Game book (Pragmatic Bookshelf, expected release this winter). He's a regular contributor to the subreddit r/roguelikedev.
This talk is a detailed survey of procedural map generation, including integration of hand-crafted "prefabs"/vaults. While the source material is written in Rust, it's readily abstracted to psuedocode and presented in a language agnostic fashion. Techniques include: Simple room placement, BSP room placement, BSP interiors, cellular automata, drunkard's walk, mazes, diffusion-limited aggregation, voronoi, wave function collapse, and prefabs. Sprinkle in a little spice by adding symmetry, layering/combining generators, different corridor algorithms, and doors placement.
Find him on Twitter: / herberticus
Roguelike Tutorial section 3 techniques and illustrations: bfnightly.bracketproductions.c...
Rust Roguelike Tutorial: bfnightly.bracketproductions.c... - Ігри
Dude, that's one of the most useful presentations on game programming I've ever seen.
I'll second that. It's a goldmine of information.
@@beefwenceworth8275I'll third it.
This was extremely interesting.
Man I wish this talk just went for another 30 minutes, very nice
I keep coming back to this one, brilliant resource
Solid rapid fire overview, really appreciated!
Amazing presentation. Clean, easy to understand, with great visualition. Thank you
This deserves thousands more comments. Thanks for putting this catalog together for us!
I always come back to this one
Amazing talk, makes everything look so simple
Thanks Herbert. I love your book!
Topic of my thesis is based around procedural generation and this video alone provided enough info to speed up my progress threefold.
Cheers, Herbert Wolverson is a living legend in my eyes.
Would you mind sharing some info on Discord with me by chance? Either personally or maybe some references/material you have on the matter? I'm really interested in starting to learn this topic, but most info is very high level, doesn't really get into the how's.
Awesome video! I've learned so much in a very easy and basic way about things I thought were complicated as hell.
This presentation was great.
Just finished Section 3 of your Rust Roguelike tutorial (decoupling the map from the viewport). It is fantastic. I've learned so much, and I've fallen in love with Rust as a language! Thanks for bracketlib and rltk, in particular.
You're welcome! I'm so glad people are enjoying it - I've had a blast writing it. :-)
Awesome, can´t wait to tinker with this !
Probably one of the best resources online for procedural map generation principles.
This was a really great talk, thank you! I've read all the books I could find on PCG and watched all the GDC talks, but this talk is better than most. Its so clear and to the point. Good job.
Any book recommendations?
Really great video, thank you!
really interesting and informative. i'm not that big of a programmer, but i tried things like this and played around with rooms and corridors in python and pygame(just some rooms and corridors).. i was thinking way too complicated. the video really opened my eyes how easy it could be if you think just a bit around the corner. thanks!
Very useful info. Love the humor as well.
Another technique I love to use is domain warping with perturb techniques. (Inigo Quilez has awesome articles on these topics, for those interested.)
Inigo Quilez taught me about distance field raytracing and i got this amazing procedural terrain out of it in not many lines of code, the problem with it is getting the units on it because it has an instancing problem when i did it. really good indie style
Very helpful, awesome!
Amazing ! Thanks you a lot !!
Excellent, thank you
Great talk, I learned stuff
Giving me the idea to place tile objects first and then do the subtraction with a separate object just saved me a lot of time messing with noisemaps in arrays.
Esto vale millones! Gracias! :D
If you want to make a Voronoi diagram in a discrete space a fast and easy way to do that is to grow it. E.g. for Manhattan distance: draw the border of a rectangle around the seed each step and grow that. You can stop growing an individual seed if no empty pixels were found. That makes it very fast even with a high amount of seeds.
Love it
This man is awesome.
Excellent
nice overview.
You can use the DLA-cluster system, but in needs sometimes too much time to generation.
Fractal Brownian Motion!
That would be a fascinating topic! I'll add it to my (long) list of ideas. :-)
Best game dev. And Rust is a great choice
those voronoi cells might make a pretty floor in doom.
I do not understand how the BSP leads to no rejection though. We have just divided the map into half a couple of times? 🤔
Enjoyable Presenter
Oh, wow. I just bought Herbert's Rust book, which is still in beta...
Nice video!
Is there any source code available for us to review?
😙👌
Great presentation with a ton of content!
But it starts at 4:00
Thank me for saving you 4 minutes:)
you are thanked
What’s the reasoning behind Python being the preferred rogue like language?
I think python is just very popular in general
Есть здесь русские любители рыгаликов мммм?
есть русские разрабы только)))
Рогалики делаешь? Только не говори, что на юнити.
@@torcher5023 ваще libgdx использую, но заинтересовал rust очень сильно, вот и смотрю по нему материал. На этот видос случайно наткнулся, я просто хотел посмотреть отзывы на книгу чела, который в этом видосе лекцию дает.