Jorvik

Jorvik is my current Code & Coffee project. It is intended to be a live shader editing tool for Algorave and Interactive applications.

Zep

Zep is a lightweight editor, designed to be used inside a 3D engine.

Nsight Graphics

I currently work on the Nsight Graphics Team at NVIDIA.

Easy Render

Easy Render is a lightweight sample of how to do simple CPU drawing to a Windows Window.

Game Of Life

Implementing Game of Life is a classic programming challenge.

Gestures

Recognizing gestures for a spell casting game idea.

Mgfx

Mgfx is a teaching framework I’ve used at York Developers. It has a simple support for building 2D and 3D applications in C++, with cross platform support.

Voxels

Most graphics programmers have played with Voxels/Minecraft style of rendering.

Connect4

At the York Code Dojo, we spent an evening writing a connect 4 player. We pitched the results against each other to see which could play the best.

Mazes

Generating Mazes in code is a fun challenge.

Ray Tracer

Every graphics engineer should write a ray tracer at some point. I’ve done this a couple of times in C++ and Python.

Stocks

Understanding how Option Trades evolve over time is key to being able to trade them effectively.

Scheme

Building a lisp interpreter is an interesting exercise, especially if you are new to functional programming.

Asteroids

Asteroids is a fun an easy game to build. This one is part of the MGFX teaching framework I built.

MapMindz

MapMindz was a little application I wrote for Microsoft Surface 1.

Boardz

Boardz was a collection of turn based board games released for iPhone and iPad. It included a server, player matching & chat.

Game

I like to tinker at Game Development occasionally; my hex planet app shown here is one such example.

NanoVg (D3D Backend)

NanoVg is a 2D Vector Library. I contributed a D3D backend to the effort - just for fun.

Early Shader Debugger

An early shader debugger for the DirectX Reference Rasterizer

DXSAS

To support our developers in implementing DXSAS shader semantics, I developed an example tool that implemented the SAS processing and allowed you to combine full screen effects.

DX Driver

At 3DLabs, I ran the DirectX Driver team. I worked on DirectX 2,3,5,7 and 8 drivers - mostly for Permedia & Glint chips.

NVIDIA FX Composer

FX Composer 2.5 is a powerful integrated development environment for shader authoring.

Lens Flare

Texture Masking for Faster Lens Flare

NV Shader Linker

NV Shader Linker was an attempt to build a traditional fixed function graphics pipeline using a series of shader fragments.

NVIDIA Effects Browser

My first job at NVIDIA was writing a tool to enable developers to understand vertex and pixel shaders.