-
Notifications
You must be signed in to change notification settings - Fork 1
main
Jake Dube edited this page Jun 5, 2018
·
1 revision
Note: this wiki is for the developers...if you need support you can contact us via the Blender Market. While you are free to use this product from GitHub, further development costs time and money. By purchasing the "official" version from the Blender Market, you help to support continued work on this add-on.
- Clean custom tile storing interface - nice workflow (create tiles --> test tiles with a predefined maze --> export tiles)
- Research circular mazes further to see if that could be implemented
- Training videos
- Add bias for x or y axis (giving it a higher chance of going in a particular direction)
- Kruskal's Algorithm - DONE
- Recursive division algorithm
- Eller's algorithm - DONE
- Hunt and kill algorithm
- Binary tree algorithm - DONE
- Sidewinder algorithm
- Other shapes...see mazegenerator.net below
- https://en.wikipedia.org/wiki/Maze_generation_algorithm
- https://github.com/theJollySin/mazelib
- http://weblog.jamisbuck.org/2011/2/7/maze-generation-algorithm-recap
- http://www.astrolog.org/labyrnth/algrithm.htm
- http://weblog.jamisbuck.org/2015/1/15/better-recursive-division-algorithm.html
- https://community.unity.com/t5/General-Discussion/Pacman-Maze-Generation-Logic/td-p/2012538
- https://community.unity.com/t5/Scripting/Quick-maze-generator/m-p/1331871#M248963
- http://gamedev.stackexchange.com/questions/910/algorithm-for-generating-a-2d-maze
- http://pacman.shaunew.com/play/mapgen/
- http://datagenetics.com/blog/november22015/index.html
- http://ilay.org/yann/articles/maze/index.en.html
- http://pcg.wikidot.com/pcg-algorithm:maze
- http://www.mazegenerator.net
- https://en.wikipedia.org/wiki/Spanning_tree
- https://en.wikipedia.org/wiki/Maze_generation_algorithm#Graph_theory_based_methods
- http://elfnor.com/blender-3d-maze-generator.html
- http://catlikecoding.com/unity/tutorials/maze/
I created this script to quickly switch all the files that can be used in/out of Blender with slight modifications between Blender and non-Blender mode. Just add new scripts to it's files list and fire it up, then type "T" or "F" for if you are in Blender (T = True in Blender).
- Start at a (random) cell, make it a path, and add it to a stack
- Choose a cell in the stack
- If there is a valid neighboring cell, pick one at random
- Make the cell a path and add it to the stack
- If there is no valid neighboring cell, remove the cell from the stack
- Repeat steps 2-5 until the stack is empty
Always choose the last (most recent) cell in the stack.
Always choose the first (oldest) cell in the stack.
Choose a random cell from the stack.
- Choose 2 adjacent cardinal directions (NW, SE, NE, or SW)
- For every cell, choose 1 of the 2 directions to make a path
TODO
TODO
- Start in the center of the grid (or space you would like to infinitely fill)
- Assign that cell to a unique set
- For every set on the +x face of cells, clone it to the right
- Fill in cells in the x + 1 column that were not filled when cloning with their own unique set
- Repeat steps 3-4 for the -y, -x, and +y axis until an axis hits a boundary
- If an axis hits a boundary just remove it from the list to loop through, and continue on