RESUME for Kelvin McDowell

A brief bio

I have been a programmer within the video game industry for over a decade. I've contributed to projects published by Sierra, Discreet, GT Interactive, Microsoft and others. I have a broad knowledge of many areas of game programming including rendering, game logic, scripting, computational geometry, AI and art pipelines. I greatly enjoy working within the industry and have little desire to work outside of it.

Relevant Skills

Over twenty-five years experience programming. The last decade professionally.
Ten years experience with C++.
Eleven years 3D programming experience.
Nine years experience with OpenGL.
Familiar with cross-platform programming issues.
Plugin and exporter writing experience with Lightwave3D, 3D Studio Max and Maya.
AI experience including path-finding and scripting.
Extensive gameplay programming experience.
Leadership, scheduling and interviewing skills.
Learned to program to make games. Not just for any old job.

WORK EXPERIENCE

April 2005 - Present

Working as an idependant contractor. Worked on C# Avalon/WPF/Silverlight drawing and layout application. Direct3D 9 experience porting an OpenGL based application. Xbox 360 experience porting a middleware engine. PowerPC assembler experience writing a scripting language foreign function interface.

October 2003 - March 2005

Employed by Rockstar Vancouver.
Worked on Bully for the Playstation2. Optimizing collision system. Extending and optimizing lua based scripting system. Implemented gameplay specific features working with design team.

August 2002 - August 2003

Contracted at a small Vancouver game startup. Worked on both PC and Xbox, doing rendering, scripting and level pipelines. Included writing a collision system from scratch including export pipeline. Wrote plugins for creating triggers, points and other game related objects in Maya. Integrated lua as the scripting system along with bindings to the level objects from Maya.

July 1999 - July 2002

Employed by Relic Entertainment.

Worked as a senior programmer on the Homeworld2 development team. Worked extensively with scripting, collision detection and response, pathfinding, gameplay and rendering code. Was involved in decision-making, scheduling, interviewing and hiring.

Worked on an unannounced Xbox title and wrote the level creation pipeline within 3D Studio Max. Implemented the basic character movement, collision detection and related code for a platformer-style game.

Worked on Impossible Creatures during its earlier development writing AI and gameplay code. Helped design and implement features in collaboration with the design team.

January 1998 - July 1999

Consultancy work for a number of mostly Vancouver-based companies. I performed many different tasks during this period, including: A vertex-weighted skeletal animation plugin for Lightwave3D; designed a cross-platform (PC / Mac) 2D engine including file I/O, rendering, event system and user interface. Implemented the majority of the PC version; Wrote a Automation-based (ActiveX / COM) animation database integrated with Photoshop; Wrote an OpenGL based cartoon-style renderer (the first cartoon-style renderer that made use of 3D rasterization hardware as far as I know) as a demo for the sadly defunct Rendition.

July 1996 - December 1997

Employed by Intelliscape Interactive / Motion Works Group

Worked on game design and programming at Intelliscape using Renderware and the Microsoft Game SDK (which later became DirectX). Intelliscape was absorbed by Motion Works Group. Worked as an IRIX (SGI Unix) administrator for Motion Works' film effects department. Wrote scripts to automate artist tasks and plugins for the flame* non-linear editing system. Worked as a gameplay programmer at Motion Works on the title Anastasia which became the first shipped product I ever worked on.