Jim Susinno

ProjectsAboutResume

RiftRay

C++
GLSL
VR
Shadertoy

Shadertoy interface for Oculus Rift

Immerse yourself in the worlds of Shadertoy!

Designed for the original Oculus Rift DK-1 through CV-1. Features UI panes for live parameter adjustment, dynamic render target resolution, vertical FOV scaling for fast frame rates, and XBox controller support. Presented at @party 2014 in MIT's Stata Center.

Links: Github, Blog Writeup


Atoms

C++
OpenGL
CUDA
Kinect

Interactive digital art installation

Using Kinect to track users in space and high-performance fluid simulation on the GPU, this piece lets you swirl your arms to create vortices in space. These vortices blow pieces of your avatar around, which are constantly sloughing off your video feed. Your shattered remains persist on the floor indefinitely, leaving pieces of yourself behind long after you have gone.

Links: Website


Snowfall

C++
OpenGL

OpenGL Geometry Shader Demo

This demo uses OpenGL geometry shaders(as an extension) in conjunction with instancing to render thousands of uniquely shaped snowflakes constructed on the GPU. Depth-of-field effect is added per-pixel, with a blur depending on the depth buffer value.

When this demo was written, geometry shaders were still new and largely experimental. Since that time, new tessellation shader stages and a new Mesh Geometry Pipeline have been introduced, rendering this implementation out-of-date(but still pretty).

Links: Website


Jouleplating

LuaJIT
OpenGL
OpenGLES

Flexible, minimal game engine in LuaJIT

Game and visualization engine implemented entirely in Luajit. Adapted for use in several programming applications including VR, demo productions, presentations, and a libretro core running smoothly on Raspberry Pi and other SBCs. Scenes are composable and can be included in other scenes for quick prototyping.

Links: Bitbucket, Design Blog


lr-jouleplating

LuaJIT
OpenGL
OpenGLES
Raspberry Pi

LuaJIT game engine wrapped in a libretro core

The Libretro API allows many different game engines to smoothly connect to a common frontend. By wrapping the function calling interface of Jouleplating in the Libretro framework, OpenGL code can be easily ported to systems like RetroPie.

The core runs well on Raspberry Pi as well as other handheld SBCs such as the RK3266, and is a very viable high-performance, low-code game development framework for any platform which supports OpenGL.

Links: Bitbucket


Cratered

LuaJIT
OpenGL

Demo Production

Demo production for 2018's @party, a creative coding party and competition. Won first prize in the freestyle compo. It uses OpenGL compute shaders to deform the surface of the @party moon with each arriving demo meteor.

Links: Bitbucket, Pouet, Blog Writeup, Foguete


Cardboard Waves

GLSL
Shadertoy

Animated Art

Cardboard Waves is an animated multimedia art piece implemented entirely in GLSL using SDF modeling techniques popularized by iq, of whom I am a proud supporter on Patreon. It was a featured shader on the front page of the wonderful Shadertoy.com.

Links: Shadertoy