VPT is a path tracer to render openvdb files using Nvidia gvdb library and Cuda. It uses the Ray Tracing Gems Vol 28. as the base, and implements volume rendering algorithms from PBRT. This repo is currently built and tested only under Windows.
v1.0 Initial Public Release
Either download the source as a zip file or right click to a desired location and use below command with git bash
git clone https://github.com/sergeneren/Volumetric-Path-Tracer
VPT depends on following libraries. They can be installed using vcpkg.exe install 'package name'
command.
VPT expects vcpkg, Visual Studio 2017 and CMake to be installed.
Step 1: With CMake Gui select the "VPT/source" folder as source directory and create a build directory of your choice.
Step 2: Choose x64 for optional platform and specify toolchain for cross-compiling
Step 3: Specify the location your vcpkg cmake file
Step 4: Configure with these options. If you would like to render procedural sky sampling textures to a folder before rendering, mark the "RENDER_ENV_TEXTURES" option
Step 5: Generate and open the VS file. Build VPT in "Release" configuration. This will create a "VPT" folder under build directory and vpt.exe. Necessary binaries will be placed here.
note: Currently only windows GVDB libraries (VS 2017, VC 14) are distributed with the repo. If you wish to use the repo under Linux or Mac please use this fork of GVDB and compile the necessary binaries to be used with the renderer.
VPT has two command line arguments: A vdb file name as first argument, and a second optional environment texture. If you wish to use an environment map with VPT just specify the hdri in command line, for example:
vpt.exe ../../../assets/dragon.vdb ../../../assets/Barce_Rooftop_C_3k.hdr
You can find couple hdri maps under assets directory which are provided by sIbl Archive and HDRI Skies.
The Moana Cloud datasets are Copyright 2017 Disney Enterprises, Inc. and are licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License. A copy of this license is available at http://creativecommons.org/licenses/by-sa/3.0/.
The interactive camera in application uses left mouse for orbiting, middle mouse for panning, and mouse wheel for zooming. keyboard "s" takes a screenshot and places it under "bin/render" folder with .tga extension. Keyboard "-" and "+" changes FOV and "ESC" key quits the application
- Sergen Eren - My website
This project is under active maintenance and development
This project is licensed under BSD 3-Clause License
- PBRT - Big thanks to Matt Pharr, Wenzel Jakob and Greg Humphreys
- GVDB - Nvidia Sparse Voxel Database
- Ray Tracing Gems - Base of VPT
- Walt Disney Animation Studios - Moana Cloud Dataset