Our great sponsors
-
WaveFunctionCollapse
Bitmap & tilemap generation from a single example with the help of ideas from quantum mechanics
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
No new code, but I've been creating QoL issues for the backlog. I think colour-coded item names will be really great - no more hunting in your inventory for that strength potion. Showing stat requirements in red if you don't meet them will make inventory juggling faster as well.
Also learned about a procedural generation method called WFC, and saw a Reddit post that used a similar method to create great-looking Pokemon/Zelda-esque map screens. Unfortunately, I'm unable to find that post again! Essentially, the methods define constraints for which tile types can be next to which other ones. Then they generate a map by collapsing a single tile into a specific type and propagating the results to its neighbours (i.e. reducing their possible types). Unfortunately, some donkey named the algorithm "Wave Function Collapse", which is already a term in physics. You can imagine how difficult that makes it to search for it. Not only that, the name seems to me to be a complete misnomer: there is "collapse", but there is no "wave function", as far as I can tell. It's just discrete probabilities for the types of each tile in the grid. And it seems that most implementations don't even make those probabilities differently weighted. So their "wave" is just a flat histogram. So, shame about the name, but it does seem like it could be a useful algorithm for generating any kind of arrays (tiled 2D maps, bitmaps, voxel maps...). And the algorithm's principles are super simple, which has shown me that constraint programming isn't magic!
Related posts
- I use Wave Function Collapse to create levels for my game (2022) [video]
- The Wavefunction Collapse Algorithm
- All of it under the most poorly designed and maintained village
- How to detect and fix isolated terrain (islands or lakes) in a tile-based terrain?
- How to make wfc or post-gen script in blender?