
Asher Burdick
Graphics Engineer
Programming, Music, Art, and Design
About
I've been developing games since 2017 and have worked as a Graphics Engineer, Programmer, Technical Artist, Team Lead, Composer, and Sound Designer. I'm currently located in the Sacramento area and am open to roles as a Graphics EngineerTake a look at my resume for more details.
Work
Skills
Performance
Identification of performance bottlenecks that vary across different machines to target the experiences of specific user groups
Familiarity with Unity's profiler and memory profiler to investigate performance issues
Familiarity with Nvidia's Nsight Graphics profiler for graphics card profiling
Ability to evaluate existing systems for ways to improve performance while maintaining functionality and appearance
UI
UI layouts resilient to changes in resolution and aspect ratio
Reusable and extensible elements
Dynamic, asset-driven content layouts
Responsive and tactile animations
Graphics
Expertise in HLSL
Ability to communicate with 2D and 3D artists and address their needs with new tools and features
Ability to maintain, modify, and extend existing rendering systems
Experience isolating and addressing bugs that only appear on some graphics cards or systems
Many other hats
My experience working on small teams means I am very familiar with quickly familiarizing myself with sections of an established codebase to fix issues and add new features
Feature Spotlight: Portrait Editor
In Old World, the royal court and their opinions on the player’s actions play a major role in the way the game’s procedural narrative plays out. Old World’s characters also age as years pass in-game, starting as babies and progressing through to old age.I was tasked with creating a system that can reflect a character’s age and opinion of the player in the portraits that represent them.

Age Interpolation
Before this new feature, characters’ ages were shown in steps, with bespoke art for baby, youth, teenager, adult, and senior stages of life. I chose to blend between these stages by first morphing the differing proportions of a pair of portraits, then blending with transparency to composit the two images together. The result is a smooth blend between the two endpoints. I also created a set of features to handle edge-cases like beards, hair, headware, and even differing skin tone.

Facial Expressions
Each character has an opinion of the player, ranging from -200 (Furious) to +200 (Friendly). To show this, I implemented a system to automatically create a simple facial rig tuned to the correct locations of important features like the mouth, eyes, and eyebrows. The initial features are identified using the very useful Dlib FaceLandmark Detector on the Unity Asset Store. I then generate a custom mesh based on those points. This mesh is what allows me to manipulate proportions on a given face to represent a positive or negative view of the player.

Developer and Modding support
Old world is a released game with a thriving modding community, empowered by modding tools provided by the Mohawk Team. Modders often want to add new portraits to the game, and I felt it was important to make the new portrait features accessible to them. To this end, I provided an in-game user interface that allows modders to add new portraits or configure existing portrait mods to age and emote.

With this, portrait age interpolation and facial expressions are complete. Old World's characters are now more expressive and immersive, the internal team can easily add new portraits when needed, and the Old World modding community have a fun new toy to tinker with!





