James Farris

Software Development Engineer

Senior Project - Dischord

Junior Project - Game Editor

For my junior year my goal was to make an editor that resembled unity as closely as possible so that designers and artists who were already familiar with Unity could jump in right off the bat. For the UI I used WPF and AvalonDock but everything else is hand written in C# and C++. What isn't seen here is the reflection library I wrote which was used for a variety of purposes such as C# binding (as our engine's scripting language) and property editing in the editor.

Here's a small taste of what I ended up with:

 

<script src="//platform.linkedin.com/in.js" mce_src="//platform.linkedin.com/in.js" type="text/javascript"></script>

I love tools development for games! I have written a new editor for every game project I have worked on while at DigiPen. Each game project gave me the opportunity to try new things and help me grow as a tool developer.

Here are some of the projects I have worked on while at DigiPen!

Sophomore Year - Level Editor

This video demonstrates the main features of the level editor (for our second project) which includes triangle-based geometry and a complex trigger system. The editor was created for in-game use using Anttweakbar. The game and editor were both written from scratch in C/C++. 

 Download

Freshman Project II

Editor

The editor I made from scratch during my freshmen year for my GAM100 and GAM150 classes at DigiPen. It was written in C# and uses Windows Forms for the GUI and XNA to render the graphics to the window. Watch in 1080p fullscreen for the best viewing! 

 

Game

Zombie Hut is an arcade style game where you play as a deliver boy who tries to deliver pizzas during a zombie apocalypse.

This game was written from scratch in C in less than 3 months time. 

 

 Download

Freshman Project I

My first semester game project at Digipen. All design, art and programming was done by me. Also, not included in the video is a full-blown map editor which includes entity, npc, lighting, pathing and tile creation/editing. 

Asteroids!

In my CS230 class I was tasked with making an asteroid remake using my newly written Vector/Matrix math library along with my Game State Manager I wrote earlier in the semester.