VQE v0.1.0 - Hello Triangle!
Pre-release
Pre-release
Release Notes
First version release of the modern VQEngine: v0.1.0 - Hello Triangle!
Features
Multi-threading
- 3 Independent threads
- Main Thread : Handles Windows events and buffers the events for consumption in other threads, ensuring seamless application behavior
- Update Thread : Simulates scene, prepares data for the Render Thread, doesn't run ahead more frames than the back buffer has.
- Render Thread: Picks up scene data from the Update Thread and issues draw commands
- Thread Pools as worker threads for the Update and Render thread for parallelizing workloads, scaled by available threads on the system.
DXGI Window Management & D3D12 Rendering
- 3 Display Modes supported
- Windowed
- Borderless Fullscreen
- Exclusive Fullscreen
- Multiple windows supported on multiple monitors
- Alt+Enter Fullscreen transitions for both Borderless & Exclusive modes
- Hello World Triangle rendering in D3D12 with synchronized Update & Render threads
Utilities
- Logging to File and a separate Console window
- Command-line parameters
- Configurable settings through
EngineSettings.ini
file inData/
folder next to the executable- Set resolution
- Set preferred monitor
- Set fullscreen window
- Set Debug window properties (visible, resolution, fullscreen, preferred monitor)
Automated Build & Testing
Build/PackageEngine.bat
to sync dependencies, generate project files, build in release mode and package the binaries for distributionBuild/GenerateProjectFiles.bat
to sync dependencies and generate project filesScripts/TestVQE.bat
to test runVQE.exe
for a specified number of frames (1000 default)
Known Issues
- Memory leak on Window events (resize + fullscreen). This'll be fixed on v0.2.0.