After months of work, I finally built my own C++ game engine in Vulkan with a custom UI system (inspired by Minecraft)
Hey everyone,
After many months of development, I finally reached a point where I'm comfortable sharing my own game engine, Kingscraft.
The engine is written entirely in C++ and uses Vulkan for rendering. One of my goals was to build as much as possible myself rather than relying heavily on external frameworks, so it also includes a completely custom UI system.
Some of the features currently implemented:
- Vulkan renderer
- Fully asynchronous architecture
- Custom UI framework
- Runtime debug/editor mode
- Visual UI editing and alignment tools
- Interactive resizing and positioning of UI elements
- Hot-reload friendly workflow
- Minecraft-inspired design and aesthetics
My favorite feature so far is the Debug Editing Mode. By pressing F7, I can visually move and resize UI elements directly in-game, inspect their properties, and then copy those values back into the source code. It has made UI iteration dramatically faster and saved me countless hours of manually adjusting coordinates. Human beings somehow still manage to enjoy tweaking pixels for hours at a time.
The project is heavily inspired by Minecraft, but I'm also using it as a learning experience to better understand engine architecture, rendering, UI systems, and Vulkan itself.
I'm still actively developing it, so I'd love to hear any feedback, suggestions, or ideas from other developers.
Source Code: Github