Christopher Durham's Porfolio

Engine & Tools Programming


Hosted on GitHub Pages Theme is midnight

I’m a developer with a passsion for improving all things Developer eXpericence; in short, making developer APIs and tools that people actually enjoy using. In addition to the game development projects that I’ve worked on, I also have a strong presence in the Open Source development community. While I’m the most comfortable in the space of engine and tools development, I’m always happy with any development to help elevate other developers’ work.

Team Game Projects

Conjury Revell

A first-person shooter with wave-based arena combat. Play as a rebellious dissident fighting to rid their world of magical oppression and forge a better future for their city in the clouds.

Kibbi Keeper

A charming, first-person, virtual-pet, exploration game in which the player explores a long-forgotten valley while wrangling adorable, elemental creatures called Kibbi. Bond with these creatures, and immerse yourself in a beautiful environment to discover the fate of an ancient civilization that once resided here.

Snowpainters

An arcade racing game where you play as speedy color-changing penguins. Play alone or with friends, change between colors, race on colorful paint trails, and bring color to a snowy environment!

Solo Game Projects

Hobby Engine

A C++ engine built nearly from scratch, capable of supporting small-to-medium sized indie game projects in 2D or 3D. Uses a DirectX 11 based render pipeline along with other toolkit pieces required to build a game such as physics, networking, data-driven asset loading, and game object lifetime management.

Simpleminer

A Minecraft-alike built in the Hobby Engine. Supports infinite generated and user-manipulable worlds based on a chunk system and a dynamic lighting system.

FMOD-rs

Bindings to the FMOD audio library for the Rust programming language. Provides access to the standard FMOD API (officially usable from C, C++, C#, and JS) in a manner idiomatic to the Rust programming language, utilizing a mixture of code generation techniques and manually authored API translations.

Unreal Rust Tool

An extention to the Unreal Engine build system (Unreal Header Tool and Unreal Build Tool) that adds Rust as a supported development language for game modules. Disclaimer: extremely proof-of-concept, and only functional for basic use cases.

Open Source Projects

The Rust Programming Language

A language empowering everyone to build reliable and efficient software. I’m officially part of the operational semantics team tasked with owning, refining, documenting, and specifying the semantics of unsafe code. This is the team which is in charge of defining what exactly it means to run a Rust program.

pest, The Elegant Parser

A general purpose declarative parser generator built in and for use from Rust, based on the formal class of Parsing Expression Grammars. While I’m not quite as involved in development anymore as I have been previously, I helped refine the bootstrapping build system and still assist in project management and direction.

point-rs

A collection of abstractions focused on making working with raw pointers easier in Rust. Helps stretch the boundaries of what is accomplishable in safe Rust, including the use of custom variably-sized types not safely constructible in the base language and type-erased pointers without giving up the API safety of “fat” typed pointers at the interface of the implementation.