Banner Image

Character Creation Project

Fully customize the appearance of your own character





Technologies Used

Problems Solved:


Enabling Character Blending Programmatically - Character Feature Morphing

The character morphing technology is enabled through the use of "morph targets", or "blendshapes" which required geometry with the same number of vertices. This assumption allows each vertex to be interpolated to its target based on the desired blend weight and chosen morph targets, enabling faces to be blended programmatically.



How to Expose Customization to the End User? - Dynamic User Interface

Typically for this type of system a user interface option would have to be exposed for each option, and the blendshape "key" would have to be linked manually.

However, in our system a user interface is instantiated at runtime by doing a single loop for all blendshapes, and creating a slider which is linked with the current blendshape. This allows the end user to customize their character, while also greatly improving pipeline efficiency. Artists can add features to the character without ever needing to extend the user interface.



Making the Most Powerful Customization System - Procedural Feature Extraction

It is a challenge on the artist side to create and export so many options for the system. For example, different feature groups such as lips, noses, eyes, etc while keeping them consistent. Our solution solves this problem procedurally by allowing the artist focus solely on the face as a whole, our system extracts all those features and enabled blending of any features from any face together.

Although morphing will technically work with the same vertex count, if the features of the face are in different places then the result becomes unusable, so the system needed to match the average location of the features every time it adds a blend shape.



Feature Customization Preview

Project Summary



Back to Portfolio