THE VIDEO SHELF · procedural generation algorithms
Superpositions, Sudoku, the Wave Function Collapse algorithm.
Martin Donald explains the Wave Function Collapse algorithm using Sudoku-like constraint solving and shows how he implemented it with Blender and Godot. It links demos and reference articles.
Why HN readers recommended it
Commenters recommend it as the clearest way to understand WFC, especially in threads about Townscaper and tiled content generation.
This is a summary from the source dataset, not an endorsement by Hacker News or the video creator.
Video & recommendation details
- Creator / channel
- Martin Donald
- Topic
- procedural generation algorithms
- Format
- explainer
- Level
- intro
- HN recommenders in dataset
- 3
- HN mentions in dataset
- 4
- Recommendation years in dataset
- 2021–2022
These counts and years describe the included Hacker News records; they are not YouTube views or the video’s publication date.
From the original HN conversations
Excerpts from the recorded comments. Follow each source for the full comment and surrounding discussion.
I didn't know about wave collapse functions before stumbling about Townscaper. Still, I found them hard to understand until I found this video by Martin Donald: [VIDEO] Now, I'm just looking for a use-case to implement them myself sometime.
V__ on Hacker News · 2022-06
In How Townscaper Works: A Story Four Games in the MakingThis uses the "wave function collapse" algorithm. Oskar Stalberg also made a great demo of how it works[0], but it might not make sense just from that. Martin Donald made a really nice youtube video on how it works[1]. The name "wave function collapse" can …
t8y on Hacker News · 2021-12
In Townscaper Running in the BrowserNot OP, but I happened to see a good video on this recently: [VIDEO] In short, it’s an algorithm for procedural generation of tiled content, like 2d/3d game maps.
orls on Hacker News · 2022-05
In Show HN: Simple Wave Function Collapse
Summaries, classifications and recommendation records are from the HackerTube source dataset. Read about this library and its limitations.