📝§ Procedural Map Generation
- Use gradient noise functions for map generation
- Diamond-square terrain generation
- https://www.gamasutra.com/blogs/AAdonaac/20150903/252889/Procedural_Dungeon_Generation_Algorithm.php
- generate a ton of rooms
- run physics engine to make rooms not collide
- select main rooms (e.g., rooms that are 1.25 larger than average)
- use Delaunay Triangulation
- find Minimum Spanning Tree
- e.g., Prim’s Algorithm seems to be a simple algorithm
- add a couple of edges from triangulated graph so the result is can have multiple ways between rooms
- layout build corridors
- bring back non-main rooms that overlap with corridors
- actually build everything
- Basic BSP Dungeon generation (BSP = Binary Spanning Tree)
- partition available space N times to build Binary Spanning Tree
- place rooms randomly in leafs
- recursively connect rooms bottom-to-top
- Rooms and Mazes
- mxgmn/WaveFunctionCollapse