Currently browsing tag

phd

SVO : Levels

Sparse Voxel Octree Raycasting: January Progress Report

Hi there, time for some updates on my voxel rendering pipeline! Lot of work behind the scenes last month, and now taking some time to pause and reflect on where the interesting research opportunities are. The lowdown for people just joining in: I’m building a Sparse Voxel Octree raycaster, so …

render_david

Rendering bigger voxel sets

Just a quick piccie: thanks to optimizations in my out-of-core octree building algorithm, I can now render  even bigger voxel fields (1024^3), which is about 107 million voxels. Reading in the data is the slowest part, the actual building of the octree is blazingly fast (< 500 ms), since the …

difference_voxelisation3

An accurate method for Voxelizing Polygon Meshes

Transforming a polygon mesh into a 3D grid / voxel data set is still the quickest way to play with some interesting data in any voxel-based application. You can do this interactively on the GPU, using Eisemann/Décoret’s method, described in Single-pass GPU solid voxelization for real-time applications (2008). When it comes to …

tor_wireframes_26seperability

Voxelizing Wireframes

In order to correctly voxelize larger meshes with configurable parameters (shell thickness, seperability parameters, …) I’m now implementing the method described in An Accurate Method for Voxelizing Polygon Meshes, by Jian Huang, Roni Yagel, Vassily Filippov and Yair Kurzion. In the paper, they provide a mathematical basis for voxelizing polygonal meshes, and …

Importance Sampling Techniques for Path Tracing in Participating Media

Eurographics Symposium on Rendering: Day 3

On the third and last day of the Eurographics Symposium on Rendering (EGSR 2012) in Paris, the 29th of june, some attendees turned up with a fuzzy head – I guess most of the German guests had to drown their loss in the EK semi-finals with a lot of wine As …

bunny_comparison

Voxel Raycaster: Progress report

After a few weeks of optimizing and getting a lot of good C++ advice from Ares Lagae, I consider my CPU-based voxel raycaster as done. I now have a good framework to test some more interesting stuff on. It offers real-time performance, even for large voxel grids, and I’ve structured the …

binvox2moctree

Introducing Moctree and Binvox2Moctree

During my PhD work, I’ve ran into a lot of practical issues with constructing and traversing sparse voxel Octrees. I’m introducing a new file format to store them, based on the .binvox file format by Michael Kashdan. The format is called .moctree, which stands for Morton-encoded Octree. It contains the leaf …

Lebesgue-3d-step2

Octree Data Structures

After some days of tweaking my SVO renderer’s performance, it became clear that I needed a more cache-coherent and space-efficient way of storing/accessing the octree data. I decided to start a seperate C++ project that efficiently converts a .binvox Voxel Grid into a Sparse Voxel Octree. Some discussions with my …