Procedural Maze Generator - Blender 4.1+
Please note:
This Maze Generator has been accepted by Blender as an Extension. You will find the most up-to-date version here:
https://extensions.blender.org/add-ons/maze-generator/
The Github and this version will be updated too for people who do not use the latest version of Blender, feel free to email me if I forget to update this site.
Blender 4.1 - Procedural Maze Generator
A comprehensive Maze generator for Blender 4.1+
Description: The Maze Generator is a Blender add-on designed to create customizable, random maze meshes within Blender. This tool is ideal for users in game development, architectural visualization, or artistic projects who need to quickly generate complex mazes with various configurations.
Features: Random Maze Generation: Generate mazes with customizable dimensions and properties. Users can adjust parameters such as rows, columns, cell size, and wall height to vary the complexity and size of the maze.
Solidify Modifier: Optionally apply a solidify modifier to give thickness to maze walls, enhancing the 3D appearance. Bevel Modifier: Optionally apply a bevel modifier to smooth out the edges of the maze walls, providing a more polished look. Advanced Configuration Options: Includes settings for random seed input, allowing users to reproduce specific mazes consistently. Additional controls for deleting isolated sections ("islands") of the maze and adjusting the complexity through iterations. Real-time Updates: Adjust maze parameters in real-time from the Blender UI, with immediate visual feedback in the 3D view.
How to Use:
Install the add-on in Blender.
Navigate to the Sidebar > Create tab in the 3D View.
Adjust the maze parameters in the Maze Generator panel located at the bottom left of the viewport: Rows and Columns: Adjust the subdivision level of the grid on the X and Y axis to control the number of walls. Cell Size: Modifies the overall size of the maze. Wall Height: Controls the height of the maze walls.
Click the "Generate Maze" button to create new mazes with your current settings.
Further customize the generated maze by modifying materials or applying additional Blender modifiers for enhanced visual effects.
Compatibility: Blender 4.1. (Untested on earlier versions)
Version 0.2.1
Significantly improved maze generation speed.
Version: 0.2
License: This add-on is released under an open-source license: GNU GENERAL PUBLIC LICENSE - Version 3, 29 June 2007. Please refer to the license file for more information.
Disclaimer: The Maze Generator add-on is provided as-is, without any warranties or guarantees. Use it at your own risk. Generating an extremely large Maze could cause blender to crash.
Support: For any issues, suggestions, or feedback, please feel free to contact the author or report them on the add-on's GitHub repository.
GitHub Repository: https://github.com/lshawau/Blender-Maze-Generator Enjoy exploring your mazes with the Maze Generator add-on!
Changelog:
General Changes:
Script Version Updated: Incremented from version (0, 1) to (0, 2).
Script Name Standardization: Changed from "Blender Maze Generator" to "Maze Generator".
Class and Functionality Enhancements:
Class Name Changes:
MESH_OT_generate_maze renamed to OBJECT_OT_GenerateMaze to follow more standard naming conventions in Blender API.
Property Changes:
cols property in MESH_OT_generate_maze renamed to columns in OBJECT_OT_GenerateMaze for clarity.
Added random_seed property to allow for reproducible maze configurations.
Added iterations, delete_islands, island_wall_count, apply_solidify, and apply_bevel properties to provide more control over the maze generation process.
New Methods and Functionalities:
Added deselect_objects and delete_existing_maze methods to OBJECT_OT_GenerateMaze for better scene management.
Introduced create_grid, initialize_maze, get_random_neighbor, visualize_maze, extrude_walls, apply_solidify_modifier, apply_bevel_modifier, remove_non_manifold_vertices, and delete_islands_with_up_to_n_faces functions to modularize the maze generation process.
Added apply_transform_and_cleanup to finalize the object transformations and ensure clean geometry.
UI Enhancements:
Panel Class Renamed:
VIEW3D_PT_maze_panel renamed to VIEW3D_PT_CreateMazeMenu for consistency and clarity.
Enhanced UI Interactivity:
New UI elements for controlling additional properties like random_seed, iterations, delete_islands, island_wall_count, apply_solidify, and apply_bevel.
Documentation and Comments:
Enhanced Docstrings and Comments:
Added detailed docstrings to new methods and functions explaining parameters, processes, and error handling.
Improved inline comments for better code readability and maintenance.
Error Handling:
Robust Error Reporting:
Enhanced error handling across new methods with detailed exception reporting to aid in debugging and ensure stability.
Code Structure and Organization:
Improved Code Organization:
Functions and methods are more modular, allowing easier updates and maintenance.
Better separation of concerns, with distinct functions handling specific parts of the maze generation process.
Your very own Procedural Maze Generator!