All Projects → AdamYuan → Sparsevoxeloctree

AdamYuan / Sparsevoxeloctree

A GPU SVO Builder using rasterization pipeline, a efficient SVO ray marcher and a simple SVO path tracer.

Projects that are alternatives of or similar to Sparsevoxeloctree

Soul Engine
Physically based renderer and simulation engine for real-time applications.
Stars: ✭ 37 (-66.36%)
Mutual labels:  vulkan, path-tracer
Rife Ncnn Vulkan
RIFE, Real-Time Intermediate Flow Estimation for Video Frame Interpolation implemented with ncnn library
Stars: ✭ 108 (-1.82%)
Mutual labels:  vulkan
Substrate
A cross-platform render-graph based rendering system written in Swift
Stars: ✭ 94 (-14.55%)
Mutual labels:  vulkan
Demos
Vulkan API crossplatform demos in Go
Stars: ✭ 103 (-6.36%)
Mutual labels:  vulkan
Laravel Tracer
Shows the path of each blade file loaded in a template
Stars: ✭ 96 (-12.73%)
Mutual labels:  path-tracer
Vkgl
Core OpenGL over Vulkan
Stars: ✭ 105 (-4.55%)
Mutual labels:  vulkan
Bgfx
Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
Stars: ✭ 10,252 (+9220%)
Mutual labels:  vulkan
Vrt
🔅 Ray tracing library for Vulkan API (indev)
Stars: ✭ 111 (+0.91%)
Mutual labels:  vulkan
Raytracedshadows
This demo implements BVH construction and GPU traversal for rendering hard shadows.
Stars: ✭ 107 (-2.73%)
Mutual labels:  vulkan
Practicalvulkan
Repository with code samples for "API without Secrets: The Practical Approach to Vulkan" series of articles.
Stars: ✭ 100 (-9.09%)
Mutual labels:  vulkan
Tiny Rtx
A Vulkan RTX Ray Tracer
Stars: ✭ 99 (-10%)
Mutual labels:  vulkan
Premulalpha
Pre-Multiplied blend mode is a 3 in 1 blend mode that has a lot of uses. It has been around for a long time but it seems to be re-discovered every few years. This project includes descriptions/examples and tools for using pre-multiplied alpha.
Stars: ✭ 97 (-11.82%)
Mutual labels:  vulkan
Swvkc
experimental Wayland Vulkan compositor
Stars: ✭ 105 (-4.55%)
Mutual labels:  vulkan
Ray
Small pathtracing library with GPU and CPU backends
Stars: ✭ 95 (-13.64%)
Mutual labels:  path-tracer
Xrtl
Cross-platform Real-Time Rendering Library
Stars: ✭ 108 (-1.82%)
Mutual labels:  vulkan
Vk raytrace
Ray tracing glTF scene with Vulkan
Stars: ✭ 91 (-17.27%)
Mutual labels:  vulkan
Nova Rs
Nova Renderer, but in Rust
Stars: ✭ 98 (-10.91%)
Mutual labels:  vulkan
Yocto Gl
Yocto/GL: Tiny C++ Libraries for Data-Driven Physically-based Graphics
Stars: ✭ 1,391 (+1164.55%)
Mutual labels:  path-tracer
Fna3d
FNA3D - 3D Graphics Library for FNA
Stars: ✭ 111 (+0.91%)
Mutual labels:  vulkan
Vkbind
Single file Vulkan API loader.
Stars: ✭ 110 (+0%)
Mutual labels:  vulkan

Sparse Voxel Octree (Vulkan Version)

Linux Windows Mac OS
A GPU SVO Builder using rasterization pipeline, a efficient SVO ray marcher and a simple SVO path tracer.
If you want an OpenGL version, check OpenGL branch.

Compilation

mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make

Built With

Improvements

The new Vulkan version is much faster than the old OpenGL version, given the comparison below:

GTX 1660 Ti

SVO build time Crytek Sponza (2^10) San Miguel (2^11) Living Room (2^12)
Vulkan (new) 19 ms 203 ms 108 ms
OpenGL (old) 470 ms -- --

Quadro M1200

SVO build time Crytek Sponza (2^10) San Miguel (2^11) Living Room (2^12)
Vulkan (new) 80 ms 356 ms 658 ms
OpenGL (old) 421 ms 1799 ms 3861 ms

In addition, the new Vulkan version has some advanced features such as asynchronous model loading and asynchronous path tracing.

TODOs

v1.0

  • [x] Allow window resizing
  • [ ] Test queue ownership transfer

v2.0

  • [ ] Gradient-domain path tracing ?
  • [ ] Build SVO contours ?

Reference

Screenshots

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].