Currently browsing tag

computer graphics

Libmorton: A library for Morton order encoding / decoding

For my graphics research, I ended up having to encode/decode 3D coordinates into Morton order / Z-order a lot.  For a detailed explanation on how I use them and what they are, check this blog post, which sparked an interesting discussion on the implementation details, and turned out to be a popular …

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 …

Sparse Voxel Octree Raycasting: December Progress

After a short venture into suggestive contours, I’m back on my voxel raycaster. I’ve been implementing multiple light sources and phong lighting, as well as drasticly improving the way models are loaded – this allows for even bigger voxel sets to be used. Limiting factor is now my voxelizer itself, …

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 …

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 …

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 …

Compiling the WDAS BRDF Explorer

After quite a struggle, I managed to compile the Walt Disney Animation Studios BRDF Explorer (released during SIGGRAPH) myself. Only to find out that a binary has been available for 2 days. I’ll post some quick info on it anyway, for those interested in compiling (future versions) themselves. Thanks go …

Out-Of-Core construction of Sparse Voxel Octrees

Update:  I published a paper on this at HPG 2013. It contains updated info and a more detailed look into the problem and solution than this blogpost does. During the development of my Sparse Voxel Octree (SVO) raycaster (see last week’s progress report), I had to find a good way to build …

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 …

Eurographics Symposium on Rendering: Day 2

This is my overview of the second day of the EGSR conference, which took place from 27-29th of June, in Paris, France. For a list of authors, and download links of all papers presented, I refer to Ke-Sen Huang’s excellent page. Another great EGSR overview can be found here. Edit: …