All Projects → vilbeyli → Vqengine

vilbeyli / Vqengine

Licence: gpl-3.0
DirectX 11 Renderer written in C++11

Projects that are alternatives of or similar to Vqengine

Vxr
General purpose engine written in C++ with emphasis on materials rendering (PBR, clear coat, anisotropy, iridescence)
Stars: ✭ 181 (-27.6%)
Mutual labels:  multithreading, engine, pbr
Ocbarrage
iOS 弹幕库 OCBarrage, 同时渲染5000条弹幕也不卡, 轻量, 可拓展, 高度自定义动画, 超高性能, 简单易上手; A barrage render-engine with high performance for iOS. At the same time, rendering 5000 barrages is also very smooth, lightweight, scalable, highly custom animation, ultra high performance, simple and easy to use!
Stars: ✭ 589 (+135.6%)
Mutual labels:  engine, gpu
Beam
✨ Expressive WebGL
Stars: ✭ 383 (+53.2%)
Mutual labels:  renderer, pbr
Autooffload.jl
Automatic GPU, TPU, FPGA, Xeon Phi, Multithreaded, Distributed, etc. offloading for scientific machine learning (SciML) and differential equations
Stars: ✭ 21 (-91.6%)
Mutual labels:  multithreading, gpu
Fast gicp
A collection of GICP-based fast point cloud registration algorithms
Stars: ✭ 307 (+22.8%)
Mutual labels:  multithreading, gpu
Miox
Modern infrastructure of complex SPA
Stars: ✭ 374 (+49.6%)
Mutual labels:  engine, renderer
Acid
A high speed C++17 Vulkan game engine
Stars: ✭ 838 (+235.2%)
Mutual labels:  renderer, gpu
glazejs
A high performance 2D game engine built in Typescript
Stars: ✭ 96 (-61.6%)
Mutual labels:  engine, lighting
Tsne Cuda
GPU Accelerated t-SNE for CUDA with Python bindings
Stars: ✭ 1,120 (+348%)
Mutual labels:  multithreading, gpu
Photonbox
A portable modern OpenGL Game-Engine with focus on PBR
Stars: ✭ 93 (-62.8%)
Mutual labels:  engine, pbr
Diligentengine
A modern cross-platform low-level graphics library and rendering framework
Stars: ✭ 2,142 (+756.8%)
Mutual labels:  renderer, pbr
Ocbarrage
iOS 弹幕库 OCBarrage, 同时渲染5000条弹幕也不卡, 轻量, 可拓展, 高度自定义动画, 超高性能, 简单易上手; A barrage render-engine with high performance for iOS. At the same time, rendering 5000 barrages is also very smooth, lightweight, scalable, highly custom animation, ultra high performance, simple and easy to use!
Stars: ✭ 294 (+17.6%)
Mutual labels:  engine, gpu
LuisaRender
High-Performance Multiple-Backend Renderer Based on LuisaCompute
Stars: ✭ 47 (-81.2%)
Mutual labels:  gpu, renderer
Occa
JIT Compilation for Multiple Architectures: C++, OpenMP, CUDA, HIP, OpenCL, Metal
Stars: ✭ 230 (-8%)
Mutual labels:  multithreading, gpu
BBearEditor-2.0
My own 3D engine & editor in order to learn graphics algorithms and game engine architecture.
Stars: ✭ 32 (-87.2%)
Mutual labels:  renderer, lighting
Etherealengine
C++ Game Engine and Editor
Stars: ✭ 653 (+161.2%)
Mutual labels:  engine, pbr
goma-engine
A simple C++ 3D game engine with Vulkan support.
Stars: ✭ 34 (-86.4%)
Mutual labels:  engine, renderer
limitless-engine
OpenGL C++ Graphics Engine
Stars: ✭ 95 (-62%)
Mutual labels:  lighting, pbr
Heteroflow
Concurrent CPU-GPU Programming using Task Models
Stars: ✭ 57 (-77.2%)
Mutual labels:  multithreading, gpu
Engine
A basic cross-platform 3D game engine
Stars: ✭ 208 (-16.8%)
Mutual labels:  engine, lighting

VQEngine - A DirectX11 & C++11 Real-Time Renderer

A DirectX 11 rendering framework for stuyding and practicing various rendering techniques and real-time algorithms.

Model Loading (.obj), HDR, Bloom, Point Lights

PBR Pipeline, BRDF, Environment Lighting, SSAO

Dynamic Mesh LODs

Debug Rendering, CPU & GPU profiler, Frame Stats, Bounding Boxes

Feature List / Version History

See Milestones for the planned upcoming changes and Releases page for the version histroy.

What's Next

The latest changes can be found in the dev branch, or another branch named with the feature being implemented. These branches might be unstable before the release.

v0.7.0 DirectX12 & Multi-threading - TBA 2019

  • DirectX12 Renderer
  • Update/Render/Load Threads & Workers

Released

v0.6.0 - Point Light Shadows, Improved Texture Support, Mesh LODs, Anti-Aliasing, Improved Perf - June16-2019

v0.5.0 - CPU & GPU Optimizations, Compute Shaders - October22-2018

  • Compute Shader Pipeline
  • Live Shader Editing (Launch Once - Edit Shader Source - Reload Shader)
  • Compute-Optimized Blur Shaders
  • View Frustum Culling
  • Instanced Rendering
  • Shader Permutations w/ Shader Binary Cache support

v0.4.0 - Data-Oriented Engine, Multi-threaded Tasking System, Model Importing, Loading Screen - July15-2018

  • Refactored Scene, Engine and Renderer classes in favor of Data-Oriented Design
  • Asynchronous Model Loading using assimp
  • Sponza Scene & More Models
  • Task-based Threading System
  • Rendering: Directional Lights, Alpha Mask Textures
  • Loading Screen & Multi-threaded Scene Loading
  • App Icon
  • Documentation, Resource Collection & Wiki Pages

v0.3.0 - Automated Build, Logging, Text Rendering, CPU & GPU Profiler - May7-2018

  • Text Rendering
  • CPU & GPU Profiler
  • Shader Binary Cache
  • Build scripts (Python, Batch) & Automated Build (AppVeyor)
  • Logging: Console and/or Log Files

v0.2.0 - PBR, Deferred Rendering & Scene Manager - December1-2017

  • On-the-fly-switchable Forward/Deferred Rendering
  • PBR: GGX-Smith BRDF
  • Environment Mapping (Image-Based Lighting)
  • PCF Soft Shadows
  • Bloom
  • SSAO w/ Gaussian Blur
  • Custom Scene File Parsing
  • Scene Manager & Multiple Scenes

v0.1.0 - Shader Reflection, Phong Lighting, Shadow Mapping & Texturing - July15-2017

  • Vertex-Geometry-Pixel Shader Pipeline
  • Shader Reflection
  • Phong Lighting
  • Point Lights (No Shadows)
  • Spot Lights (Simpe Shadow Mapping)
  • Normal/Diffuse Maps
  • Procedural Geometry: Cube, Sphere, Cylinder, Grid

Prerequisites

The projects are set to build with the following configurations:

  • Windows 10 SDK - 10.0.17134.0

  • Visual Studio 2017 - v141, v140

  • System: Ryzen/GCN. VQEngine hasn't been tested on other systems. Feel free to open an issue in case of crashes / errors.

Build

https://ci.appveyor.com/api/projects/status/8u0a89j15naw0jlp/branch/master?svg=true

Run PRE_BUILD.bat once to initialize the submodules, and run BUILD.bat or BUILD.py to build VQEngine. ./Build/_artifacts will contain the VQEngine executable built in release mode and the data and shaders needed to run the demo. You need Visual Studio 2017 installed for the build scripts to work.

Scripts
PRE_BUILD.bat Initializes and updates submodules required to build the project.
Run this script the first time you clone the repo.
BUILD_CLEAN.bat Calls 'Clean Solution' on VQEngine.sln and deletes the contents of the Build folder.
Run this script before building VQEngine.
BUILD.bat Builds VQEngine.
CONSOLIDATE_ARTIFACTS.bat Copies binaries and resources required to run VQEngine into Build/_artifacts folder.
Run this script after running BUILD.bat.
PRE_BUILD_CLEAN.bat Deletes contents of the submodule folders.
CLEAN_SHADER_CACHE.bat Removes the ShaderCache/ folder from VQEngines temporary directory: %APPDATA%\VQEngine

Controls

Scene Controls
WASD Camera Movement
R Reset Camera
C Cycle Through Scene Cameras
\ Reload Shaders (live shader editing)
Shift+R Reload Current Scene From File
0-7 Switch Scenes:
1: Objects Scene
2: SSAO Test
3: PBR Scene
4: Stress Test
5: Sponza Scene
6: Lights Scene
7: Mesh LOD Scene
Engine Controls
Page Up/Down Change Environment Map
Ctrl + Shift + F Toggle Displaying CPU/GPU Performance Numbers & Frame Stats
Backspace Pause App
ESC Exit App
Renderer Controls
F1 Toggle Controls
F2 Toggle Ambient Occlusion
F3 Toggle Bloom
F4 Toggle Display Render Targets
F5 Toggle Bounding Box Rendering
F6 Toggle Forward/Deferred Rendering

3rd Party Open Source Libraries

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].