Posts

Showing posts from November, 2025

Pigeon Devlog #2: A Cleaner Core, Faster Draws, and Fighting Bugs

Image
Hello again! For the last two weeks, I have been focused on the heart of my Vulkan renderer, "Pigeon." My goal was to refactor the core engine to make it cleaner, easier to understand, and ready for new features. When you work with Vulkan, it is very easy to make a complicated mess. I wanted to fix this early. My new design is much simpler: Context and Device: All the Vulkan setup (like choosing the GPU and creating the logical device) lives in one place. Resources and Lifetime: All the logic for creating and destroying buffers, images, and other resources is now managed separately. The Frame Loop: The main loop is now very clean. It only contains the logic for rendering a frame, not managing resources. This new structure makes it much easier to think about synchronization (making sure the CPU and GPU work together) and memory. For the swapchain, I am using triple buffering. Each of the three swapchain images has its own comma...