Currently browsing tag

rendering

Head Render

Sparse Voxel Octree Ray Casting: Texture update

After working on the Out Of Core SVO Builder for the last few months (Paper, Github), I did some hacking on my Voxel Raycaster and voxel pipeline so it now supports sampling voxel colors from textures, which allows for some nice rendering. The details: Simple C++ CPU implementation of Voxel Raycasting. …

sc

Real-time Suggestive Contour Rendering

Realized I hadn’t posted this video yet: a couple of months ago, I took a break from the voxels and octrees to redo my Suggestive Contours GPU implementation. My shader-based approach combines the advantages of an object-space method in an image-based approach: It works for high-polycount models Real-time control over …

glob

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, …

View from the EGSR boat on the Seine

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: …

blur_focus

Eurographics Symposium on Rendering: Day 1

Note: You can find my overview of Day 2 and Day 3 on this blog as well. I have the privilege to attend the annual Eurographics Symposium on Rendering (EGSR) in Paris, France this year. The first warm day is behind us, and it’s time to reflect on and tell about …

octree1

Ray / Octree traversal

Since the basic work on my voxel raycaster is finished (Crunching voxels with 3D DDA – generalized Bresenham – in a 3D array), it’s time to start looking at hierarchical structures and the methods of switching between several Levels of Detail, which is the direction my PhD will be heading …

work_dragon

Voxel Raycaster: Simply Red

After a short discussion with my promotor Philip Dutré, I rewrote some parts of the basic grid structure to be more compatible with the uninevetable introduction of an octree-based system. No shotgun surgery for me – first I planned it on paper. REAL ACTUAL PAPER. I finished this week by …

Armadillo says booh

Voxel Raycaster: Enter the Stanford zoo

If you’ve looked at some computer graphics literature before, you’ve probably noticed that a lot of models are used over and over again, like the Utah Teapot. Last days, I’ve been working on import functions which allow me to load the Stanford standard benchmark models in and render them, voxelized. …

balls_resized

It’s alive!

First rough video of my current Voxel Renderer implementation. It’s nothing too exciting, just showing that the Proof Of Concept actually works in real-time. The flyby is on the edge of the voxel field, since inside it’s just … trippy. This is a 512x512x512 field with 8 bytes per datapoint …

chart_1

Voxel Renderer: Parallellism is key

I’ve implemented a stable version of the Amanatides and Woo algorithm for fast traversal of voxel grids and added some optimisations and support for non-square voxels. After reading up on OpenMP, I couldn’t stand having a renderer which ran an inherently parallel algorithm on just one CPU. Every ray shot …