Skip to content

FlorianLuna/VCTR

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VCTR

Vibe-coded toy renderer.

VCTR is a compact renderer playground built to explore how far an AI coding agent can collaborate on real-time graphics work: project setup, API abstraction, rendering features, debugging, and iteration inside a Visual Studio/CMake workflow. The codebase is intentionally small enough to move quickly, but structured like the beginning of a real engine so each milestone exercises practical engineering decisions rather than isolated demos.

The renderer currently targets D3D12 and Vulkan through a deliberately thin RHI layer, with glTF loading, ImGui tooling, camera controls, and a growing path toward deferred PBR rendering.

Current Milestone

Milestone 8: Runtime render API switching and geometry parity between D3D12 and Vulkan.

The Vulkan backend currently creates a Vulkan instance/device, Win32 surface, swapchain, render pass, framebuffers, synchronization, graphics pipeline, depth buffer, uniform/texture descriptors, ImGui overlay, and the same triangle/cube/glTF Duck scene controls as D3D12.

Sample Assets

assets/Duck/Duck.glb is from the Khronos glTF Sample Models repository.

Building

Open this folder in Visual Studio 2022 and select the x64-debug CMake preset, or build from a Developer PowerShell:

cmake --preset x64-debug
cmake --build --preset x64-debug

Diagnostics

Runtime validation is opt-in per backend:

VCTR.exe --d3d12-debug
VCTR.exe --vulkan-validation
VCTR.exe --d3d12-debug --vulkan-validation
VCTR.exe --backend=vulkan --vulkan-validation

--d3d12-debug enables the D3D12/DXGI debug layer when the D3D12 backend is active. --vulkan-validation enables VK_LAYER_KHRONOS_validation and a Vulkan debug messenger when the Vulkan backend is active; messages are written to the Visual Studio Output window and vulkan-validation.log. --backend=d3d12 or --backend=vulkan selects the startup renderer.

Roadmap

  1. Win32 window and app loop
  2. D3D12-backed RHI skeleton
  3. Swapchain and clear-screen frame
  4. ImGui overlay
  5. Basic geometry
  6. glTF loading
  7. Deferred shading
  8. Direct-light PBR

About

Vibe-coded Toy Renderer

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages