Catmull-Rom (left) vs bilinear (right) interpolation

A new technique is introduced that can do Catmull-Rom interpolation in 2D using only four bilinear samples instead of 16 fetches. This is made possible by preprocessing the input data using a specific sign-flipping scheme, and modifying the interpolation weights and locations accordingly.

Figure 12. Cylindrical ratio 1:1.

Using a virtual camera with a large FOV can cause objectionable distortion near the screen’s edges. This article introduces a novel barrel distortion post effect that may be used to reduce stretch in this case. The effect can be controlled through multiple tweakable parameters, and requires only 2 additional instruction slots of a post effect’s fragment shader.

Scape terrain editor

Finally, the Scape terrain editor prototype is now officially open sourced and freely available for download! This article on Scape is meant to provide an aggregated collection of links to previously published documentation and downloads, as well as to the new source code and binary package downloads.

Scape terrain editor

In this fourth article on the Scape terrain editor, the actual brush-based editing pipeline is described from beginning to end, which uses either the CPU or the GPU to update the areas affected by a user’s brush strokes. Besides many pipeline optimization details, it also covers Scape’s direction noise feature.

Scape terrain editor

This is the third article in the series on Scape, a GPU-based terrain editor, picking up where I left off in the previous article on procedural noise techniques. In this article, I’ll discuss two novel procedural noise-mixing algorithms that are capable of generating terrain types that seem to be heavily eroded.

Scape terrain editor

This is the second article in a series on the Scape terrain editor, covering the first (and simpler) half of the procedural algorithms behind Scape’s brushes, including its optimized pixel shader Perlin noise and the more common turbulence functions used internally to edit heightfields on the GPU.

Scape terrain editor

Scape is a heightfield terrain editor I developed as part of my thesis work at W!Games in 2008. It allows the user to sculpt large terrains using procedural brushes in real-time, using GPGPU techniques for the bulk of the work. In this first article on Scape, its (procedural) terrain rendering techniques are explained.

Super Nova: screenshot 1

Super Nova is a ‘planet’ generation experiment gone berserk. Rendering almost half a million particles on the ever-changing surface of an extremely perturbed sphere while flying around and through it creates a quite interesting visual display. Freely available as a screensaver for Windows.

To be able to see SIRDS images of moveable 3D objects (like those from the Magic Eye books), I developed an interactive and customizable SIRDS viewer, capable of generating rotatable SIRDS of 3D models at high frame rates. If you’re interested in how they work, how the viewer was implemented, or just want to try it out, read on!

CamBall is a virtual ball simulation that uses a cheap webcam, simple 2D physics, the OpenCV library and some creativity to augment a webcam’s images with a virtual ball you can grab and throw around in real-time. Read about the used computer vision and physics techniques, see the video, or simply try it out yourself!