Although I develop Mirador on Arch Linux (btw), I have always intended for the game to be accessible to a wider audience—including my friends, who...
A turret, window, or balcony designed to command an extensive outlook.A vantage point that provides a commanding view of the surrounding area.
Mirador is a modular, interactive game written in Rust, focused on real-time rendering, procedural maze generation, and immersive gameplay. It leverages modern GPU technologies and custom UI systems to provide a responsive and visually engaging experience.
Mirador is a work in progress stealth game written entirely in Rust. It is designed to be modular, real-time, and memory-efficient. It achieves this by employing several rendering pipelines that each handle specific aspects of the game's visual and interactive elements, all of which leverage the computational power of the GPU via the WGPU graphics API. Whilst this project is still in development, it currently supports:
Mirador is organized into several core modules:
The application initializes a WGPU instance and event loop, sets up rendering and UI pipelines, and manages all state transitions and user interactions through a central App
struct.
Mirador is intended for developers and enthusiasts interested in graphics programming, game development, or Rust-based application architecture. To explore or contribute:
cargo build
.cargo run
.The game features a stealth-based gameplay loop where players navigate procedurally generated mazes while avoiding detection by AI enemies. Players can collect upgrades to enhance their abilities and progress through increasingly challenging levels.
For the in code documentation, please refer to:
Rust Doc Documentation
Mirador is released under an open-source license. See the repository for details.
Although I develop Mirador on Arch Linux (btw), I have always intended for the game to be accessible to a wider audience—including my friends, who...
Understanding performance characteristics is crucial when developing a game like Mirador. The benchmarking library provides a simple way to measure...
Early in Mirador's development, I integrated egui as a quick solution for debug interfaces and UI prototyping. However, as the project evolved, I...
When I first designed Mirador's progression system, I wanted to create meaningful choices that would affect how players approach each run. The...
Game UI systems in Rust require different considerations than web development. CSS handles styling and layout automatically, but game engines need...
Game audio is deceptively complex. Unlike a music player that simply plays tracks (although we do need that too), games need audio that responds to...
Mirador uses multiple coordinate systems to bridge the gap between 2D maze representation and 3D navigation. Understanding how these systems interact...
Large mazes create navigation challenges that can frustrate players. Without guidance, finding the exit becomes a matter of luck rather than skill....
Text rendering in games presents unique performance challenges that can make or break a smooth gaming experience. Poorly optimized text systems can...
The actual process that the program goes through to initialize the game and then update it every frame is relatively straightforward, but it has a...
Blog Posts This directory contains all the markdown files for the Mirador blog posts. Adding New Blog Posts To add a new blog post: 1. Create a new...