A high-performance, cross-platform 3D model viewer for Linux and Windows built with C++ and Vulkan.
This project aims to build a custom, low-level rendering engine using Vulkan, with a native desktop user interface provided by Qt6. It is designed for maximum control and performance while serving as a foundational learning platform for modern graphics programming.
- Language: C++ (C++17/20)
- Graphics API: Vulkan (Manual memory management transitioning to VMA)
- UI Framework: Qt6 (
QVulkanWindow) - 3D Format: glTF (parsed via
cgltf) - Mathematics: GLM
- Build System: CMake
- Skeleton: Project setup with CMake and Qt6.
- UI Shell: MainWindow with embedded
QVulkanWindow. - Vulkan Core: Subclassing
QVulkanWindowRendererand manual memory allocation. - Asset Loading: Integrated
cgltffor model parsing. - Rendering: Custom shader pipeline, camera controls, and uniform buffer updates.
- Optimization: Refactoring manual memory allocation to VMA.
(Detailed build and run instructions will be added as implementation begins.)