3D Graphics, Illustration, Software Engineering, Game Development



A 2D classical music abstract art game created with Parker Porfilio for our final project in cs195n: 2D Game Engines at Brown University.  Everything is written from scratch in Java and OpenGL.  Events in the game are synced with music.  Cool features include: Voronoi shattering, swarming behavior with boids, fractal trees, broad-phase pruning for collision detection, collision groups, parallax, particle systems, sprite animation, smooth transitions and camera.  The game's physics and graphics are built upon the engine we worked on earlier in the class.

Interdimensional 3D puzzle game! 

Minecraft - click image to scroll through gallery

Simple Minecraft implementation done in cs195u.  Written from scratch in C++ with OpenGL for graphics.  Terrain is generated using 3D simplex noise, blocks are stored in 32x32x32 arrays of chars (chunks).  Chunks are streamed in as you move around the world to make it feel infinite, and vertex buffer objects and view frustum culling are used to draw more chunks at once.  There is basic platforming and collision detection, simple enemies, and the ability to add and remove blocks using fast voxel traversal.  Video coming at some point...

Code Grey

Graphics Programming

Cloth Simulator

Global Illumination Rendering Algorithms (cs224) - Click for full size

Monte Carlo path tracing with ~15000 passes

Monte Carlo path tracing with depth of field

Photon Mapping with 5 million photons

Additional papers implemented in cs224:

 As Rigid As Possible Shape Manipulation

Adaptive Unwrapping for Interactive Texture Painting

(I don't have images/videos for these yet...) 


GPU Mandelbox Fractal Raytracer

GPU Quaternion Julia Set Raytracer  

Card Fluttering Script