In February of 2015, I joined Xbox as a contractor to begin development of what is now the current generation of Xbox Avatars. In 2016, Microsoft recognized the impact my skillset could bring to the company and offered me a full time position, which I accepted - allowing me to see the Avatars 2.0 project all the way through to its release.
While I was brought in with the primary role of building internal prototype demos for a new generation of Avatars, I was also frequently called on to share my Technical Art expertise with the team maintaining previous-generation Avatars as well. Due to the many target platforms for this project, I had to draw on all of my previous development experiences.
Released in 2018
With the goal of making the new avatars look as amazing as possible, building and exploring many approaches was vital. Be it the latest physically-based shader lighting models, blendshapes, runtime IK rigs, or physics systems - it was necessary to shine a little light on everything in order to prune it down to something still beautiful, yet performant.
Additionally, I worked with prototype content artists to build and maintain intuitive pipelines, ensuring that things were properly set up for the features being evaluated.
Technical Art work included:
- Building the content pipeline, The Avatar Content Toolset, which supported:
- Content Validation Tooling in Maya and Unity
- Cinematic-quality IK/FK rig parity between Maya and Unity, facilitated by custom export/import processes
- Purely procedural Allegorithmic Substance workflow & performance validation
- Shaderless Unity AssetBundle generation
- Version-upgrade utility for Unity .NET AssetBundles
- Custom lightweight PBR Shaders
- Custom lightweight subsurface scattering PBR shader for skin of any color
- Base body-masking techniques for items
- Parallax eye shader and substance
- Spritesheet generation for lightweight display in Xbox shell
- Asset Production Guidelines
- Pipelines Tools
- Loopable cloth simulation
Building the next generation of Microsoft's Avatars was a very enjoyable experience, one which presented interesting technical challenges due to the very tightly restricted spaces in which they must appear and the wide variety of platforms being targeted. The Xbox shell, in particular, is much tighter on resources when building content to run without disrupting the performance of primary applications, like games.
Engineering work included:
- UI/UX Functionality in Unity and XAML UWP
- Avatar Instantiation/Construction/Customization APIs
- Custom Camera Rigs
- Animation States and Logic
- Custom Runtime BlendShape Systems
- Controller Input