** Currently Seeking Employment
Web Logs

Tesseract Gpu Processing

Beta Implementation



GPU Objects with Collision and Physics

A framework for developing Stream apps through paletted Gpu-Objects.

A "Schema Shader" is emulated in software to batch process calculations on large (65,536) groups of objects.  These objects can be rendered with light-weight models like triangles and drawn efficiently. 

We implement a simple instruction set in HLSL code which are combined end-to-end to create instruction phrases which can be mapped to Object-oriented functions. 

Data is stored in a stack of textures, with each texture representing a single traditional CPU variable and N objects, as defined by the size of the texture. 

The processor uses multiple passes to run shader instructions against textures. When the processor runs an instructions sequentially, which creates a low-level process stream.  This allows us to map functions from OOP code into a Stream instruction set.

We have implemented standard force-based physics equations as an example of the processor.  Fleshing out the collision model is all that is neccessary to complete a model.

This is significant, as this moves both draw and physics update cycles to the GPU.  It frees the CPU-GPU bridge interface from data-stream updates, opening up bandwith to use for CPU messages and control signals used to manipulate the objects.  In effect, a GPU persistant world with remote controls. 

Prototype Implementation

Object Oriented Approach to GPU Programming


Summary of theoretical work prior to prototype implementation.


Background Research Summary

GLSL Primer - Intro to GLSL with simple example and resources.

GPU Footprint - Justification for GPU persistant objects.

VertexProcessing - Using the vertex processor to do interesting things.

Video Archieve

These are unedited videos from various stages of development.
Higher numbered files contain more recent footage.

We are currently working a more published video montage, however, we wanted to show off some raw footage in the mean time.