Procedural Dungeon Generator with Binary Space Partitioning
A downloadable game for Windows
This project was completed independently, with the following outlining my contributions.
Project Overview:
This project showcases a sophisticated procedurally generated dungeon system implemented using Unity and C#. The core algorithm utilized is Binary Space Partitioning (BSP), which creates dynamic and engaging dungeon layouts, enhancing the player experience with every playthrough.
DEMO VIDEO:
Features:
- Dynamic Dungeon Generation: Each dungeon layout is generated in real-time, ensuring that no two playthroughs are the same. The BSP algorithm divides the dungeon space into smaller rooms and corridors, and the walls adapt dynamically to the generated layout.
- Immersive Environment: The dungeon features a horror-themed aesthetic, with assets that materialize seamlessly into the environment. Walls, doors, and other elements are populated with particle effects to heighten the ambiance. Lighting within rooms is randomly generated, adding to the atmosphere and influencing gameplay by varying the visibility of the dungeon’s features.
- AI Navigation: Leveraging Unity's NavMesh System, the AI navigates the procedurally generated dungeon. Implemented with a Finite State Machine, the AI can patrol areas, react to the player, and engage in dynamic encounters based on the player’s location and actions.
- Shooter Enemies and Vibrating Foes: Enemies are equipped with the ability to shoot projectiles at the player when within a specified range. Shooter enemies rotate around a pivot point, enhancing their attack patterns. Additionally, vibrating foes add to the game's intensity, challenging the player to stay alert and strategize effectively.
- Advanced Lighting and Asset Placement: Room lighting is randomized with rules that determine asset placement and lighting probabilities. This feature ensures that each room is uniquely lit and furnished, contributing to the overall horror theme and creating a varied and engaging experience for the player.
Technical Details:
- Binary Space Partitioning (BSP) Algorithm: This technique divides the dungeon space recursively, creating a hierarchy of rooms and corridors. The BSP algorithm ensures efficient space utilization and a logical flow within the dungeon layout.
- NavMesh AI: The AI's pathfinding and behavior are controlled using Unity's NavMesh System and a Finite State Machine. This setup allows for realistic and challenging AI interactions based on the dungeon's layout.
- Procedural Asset Placement: Assets such as walls, doors, and interactive objects are procedurally placed within the dungeon, ensuring a coherent yet varied environment that aligns with the generated layout.
- Particle Effects and Lighting: Particle effects are used to enhance the visual experience, while random lighting setups within rooms affect gameplay and exploration.
Reference
This project is based on techniques discussed in the tutorial series by Sunny Valley Studio, available at:
Updated | 2 days ago |
Status | Prototype |
Platforms | Windows |
Author | Rithviik Srinivasan |
Tags | Dungeon Crawler, Horror, Procedural Generation |
Download
Download
Build.zip 168 MB
Install instructions
Once downloaded , a new dungeon is created for each new restart of the build.
Leave a comment
Log in with itch.io to leave a comment.