Hello Ocean

An interactive experience that allows you to explore the amazing underwater biome. Navigate underwater by moving your tablet in real space and experience the 360 degree exploration of the beautiful caribbean reef.

This project was made to create an encourage the students of Mountainview Elementary School in Morgantown, WV to learn more about the aquatic biome in a fun, engaging and collaborative experience.

Tech: Android and iOS App, Unity3D

App Store

Youtube: Link

Space Race

A multi-player space game played on a giant 26ft screen using the gyroscope on Android Tablets and Phones.

Tech: Android App, Unity Multi-player Networking, 2 Floor Projection (BVW Festival Selection)

NOTE: Beta Version Pics & Video

Youtube: Link


Combined Augmented Reality with Virtual Reality for the purpose of Visual Storytelling.
A Virtual character existing in a B&W world comes to our world to borrow color. He realizes in the end its not colors but the people that he is actually missing.

Tech: Augmented Reality - Webcam mounted on Virtual Reality - Oculus Rift.

Youtube: Link


A 4-player competitive and colaborative game on the Jam-O-Drum.
Two players work together to control a sumo wrestler to push the other teams' character off the arena.

Tech: Jam-O-Drum (BVW Festival Selection)

Youtube: Link

Flying Squirrel

A flying experience over Pittsburgh skies as a squirrel picking up topings to deliver a pizza.

Tech: Oculus Rift, PSMove

Youtube: Link

Helping Nima

A Cinematic experience from the Shark's POV to help Nima survive as a guest who controls water waves/currents.

Teach: Xbox Kinect. Cinematic Experience

Youtube: Link

Below are various notable Computer Science projects that I did at Purdue University.

Courses include Computer Architecture, Graphics, Systems Programming, Data Structures & Algorithms, Operating Systems and Compilers.

Graphics Procedural Modeling Project

Went through research papers that focussed on ways to implement efficient modeling of Buildings.

Implemented a program that can transform one building to another with just few parameteric changes.[based on multiple research papers.]

Concurrent Ticket Sales Application

Using java, the project involved the concept of Multi-threading based on concurrency.
Situations like booking the same seat in two different sale locations at the same time can be handled with the help of concurrency.

Multi-core 3D Image Processing

Using java, the project demonstrate the use of concurrency to make sure all resources are utilized.
Thus dividing the work amongst vairous threads, significantly improvises the performance i.e. reduced completion time

lore 1 % java Project6
Select the color map[0=JetColorMap,1=XRayColorMap]:0
Enter the camera position[x y z]: -50 128 76
Enter the camera orientation[polar azimuth rotation]:0 0 0
Enter the width of the image: 640
Enter the ray-casting step size: 0.02
Enter the number of threads: 24
Execution Time: 9001 ms

Talk Server & Client

Using C, the project demostrates the use efficent use of data-structures and the concept of buffers.
Ultimately deals with memory in computer to efficiently produce a simple talk server-client mechanism.

MIPS Assembly Language Projects

2-3 simple C programs are written in MIPS Assembly to highlight various basic concepts.
Programs included stack usage during function calls, recursive functions, arithmetic calculation based programs and the effiecient use of registers.

Shell Project Series

The projects focussed on:

Lex, Yacc, Process creation - execution, file redirection, pipes, Wild-Cards and Elimination of Zombie processes.

HTTP Server & Client

The project focussed on building an HTTP Server and a Client.
Mutual exclution and running multiple processes were of primary focus as we built clients requesting data that connected simultaneously.

VOIP Android App

The team project had two components.

TCP based Android client to Unix server via LAN(router) - Users online list + status of clients
UDP client to client communication via voice packet transmission.

OS Projects

Xinu OS improvisation:

Implemented Bounded Buffer for communication, Block Message Passing, Round-Robin Scheduling Policy and Extending the Linux Kernel API.

Compiler Project

JavaCC based Compiler for the Mojo Language
Worked on:

Lexical Analysis:Scanner, Syntactic Analysis:Parser, Semantic Analysis:Type-checking, Synthesis:Translation, Instruction Selection and Register Allocation

Any of the above project code can be requested via email.