Welcome to my project page!

Hi, my name is Derek Burch.
In 2010, I obtained my bachelor's degree in computer science and engineering from the University of California, Merced. Currently I am working on my masters in Electrical Engineering and Computer Science also at the University of California, Merced. My masters research focus is hierarchical search for tasks such as search and rescue using autonomous aerial vehicles.
I am very interested in game development and in my spare time I often work on personal projects to familiarize myself with various programming languages and technologies.
This page includes descriptions and code for several (but not all) of my personal/school projects.
Android Development
Coaster Frenzy
Language: Java, C++
Worked With: Jared Petker
Description: A 3D rollercoaster game/simulator where users can create/share their creations via an online community. The app has been downloaded over 100,000 times and over 10,000 unique tracks have been uploaded. A more detailed explaination of the app can be found at the market URL below.
Ring (On Hold)
Language: Java
Worked With: Jared Petker
Description: Classic shooter where the player moves around in a ring avoiding enemies that spawn, while trying to destroy them. Gameplay involves powerups and large numbers of enemies.
SVN Repository List
These repositories contain some of the projects below and also may contain projects not mentioned. The topa repository contains more recreational projects, while the eng180 repository contains a few school related projects.

Game Prototypes

Language: C#, XNA 3.1
Worked With: Jared Petker

Description: A 2d platformer that tells the epic adventure of a heroic square and its fight against Dr. Octagod.

Description: A 2d game where a circle rides along lines in order to reach the exit of a level. The circle must jump from line to line to avoid gaps and must avoid lines not matching its own color.


Robocup Virtual Rescue Competition 2009 (First Place Team)
Langauge: C/C++ (Linux)
Description: The Robocup competition is held every year and is open to many counties around the world. For the competition I wrote code to calculate a deployment plan to distribute a communications network through a building (In the USARSim robotics simulator). The code had to read from an image of the buildings floor plan and determine good locations to place the robots in order to obtain the most communication coverage. Each robot individually had a relatively short communication range that dropped fast indoors due to walls and other obstacles. Once good locations were determined each robot was assigned a destination and path planning was performed in order to get the robots to their goals. Additionally I also helped write some of the code which allowed the robots to communicate to each other via linux sockets over tcp/ip.

Langauge: Unreal Script

Description: I have implemented two robots into the USARSim UT2004 mod: The IRobot Create and the Barrett WAMArm (featured in the above image). This required creating the models using both the unreal editor and 3ds Max. I also created the textures and scripts required to run the robots in the simulator.

Language: C#

Description: This is a small c# application that can be used to issue commands to the USARSim UT2004 mod. It allows for simple control of robots and helps with issuing complicating commands with its auto complete feature. Another noteworthy feature is its tree display of the current status of the active robot.

Robot Follow
Language: C++ (Linux)
Description: This code was used to have a P3AT robot follow guests around at a UC Merced Donors dinner. The code uses the Player library to communicate with the robot hardware.


Digital Campus
Langauge: Html/Javascript
Worked With: Jared Petker

Description: The Digital Campus project is a project at UC Merced with the goal to provide information  about the campus to current and future students, parents, and staff. I was part of a team that implemented a "walkthrough" view of the campus. The project functions similarly to Google Street View and allows users to see images of the campus as if they were walking around it themselves. Our implementation also allowed users to pick two points and automatically be given a virtual tour between those campus locations. Additionally on the campus view the user is able to mouse over buildings to gain additional information.

Language: C++, Opengl

Description: A simple 3D bicycle that can be rode around in a 3d environment with trees and a track. The bicycle is completely animated featuring a moving chain, peddles, and handlebar.

3D Tetris
Language: C++, Opengl

Description: A 3D version of the popular 2D Tetris game. 

Language: C++, Opengl

Description: A program that can be used to draw 3D pipes using interpolated Bezier curves. Pipes are drawn by first creating a shape for the cross section and then creating a curve for the sweep line.

Connect4 AI
Language: Java

Description: An implementation of a Connect4 AI using game min-max trees with alpha-beta pruning. The computer is extremely difficult to beat.

Machine Code Projects
Language: MIPS 
Description: The project contains 3 MIPS assembly code files. One converts decimal numbers to hex, another computes the factorial of a given number, and the last acts as a simple calculator. While the projects are very simple, I included them anyways to show minor MIPS assembly experience.

Past/On Hold

Simple Pong
Language: Java
Worked With: Jared Petker

Description: A simple pong game with power-ups and network play.

Project Alpha
Language: C#, XNA
Worked With: Jared Petker

Description: An action rpg similar to the point and click play style of Diablo.