Welcome to FaceToons docs!
FaceToons is a comprehensive toolkit designed to streamline texture-based character facial animation directly in Unity, offering an array of tools for animators, artists, and developers alike.
From simple winks to eye twitches, from smirks to lip-synced sequences. FaceToons allows you to quickly and non-destructively add expressive and unique animations to dialogues within minutes. No keyframes necessary. (And it also comes with an advanced toony Eye ShaderGraph!)
Key Features
Animate, Fast!
- Layer, Mix & Match C# driven procedural animation with hand-made overrides using FaceToons Clips. Animation feels more like directing.
- Skip adjusting animations in external tools. FaceToons is modular, non-destructive and works directly within Unity Timeline. WYSIWYG.
- Comes with lip-sync support using Rhubarb (open-source).
Scalable
- Toony characters should not be restricted by rigid texture atlasses. FaceToons allows you add or modify expressions anytime during production.
Mouth Animator
- Use any amount of mouth shapes with your characters. Be it a simple open-close, the A-X mouth standard or even more.
- Supports Material Mouths, projected Decal Mouths or Custom renderers through our API.
- Multi-angle mouth (& projection) support, which adjusts mouth appearance depending on the camera angle. This replicates the 2D hand-drawn look of Cartoons & Anime.
Eye Animator
- Use FaceToons Clips to change character moods, make them look at a transform, make the iris dart... or automate with procedural animation. All clips can be layered and overriden.
- Eyes are layered into iris, emblem and cover. All which can be controlled separately to create a wide-range of expressions without the need to create additional textures.
- Bring realistic ambient eye animation to gameplay too using procedural animation or APIs.
Advanced Eye Shader
- Fits any 2D-ish character style. Be it Anime, Cartoony or Retro N64.
- Heavily customizable. Change pupil distance (cross-eyed vs apart), fake parallax depth, rotate iris, add emission & more.
- ShaderGraph file makes it easy to integrate into custom shaders or rendering pipelines.
Optimized
- Uses TextureArrays for packing commonly switched textures (such as mouth shapes or eyelids), improving GPU performance.
- Tested on 2015 phone hardware & integrated graphics.
Extremely Customizable
- Base & Abstract Classes to create your own implementations provided. Add more procedural animation states, create custom Eye Animators or include blend-shape data & custom logic in FaceToon frames. Everything is ready to be customized.
- Eye & Mouth animators can be controlled through API.
- Likewise, your timeline FaceToons data can be fed into your own inherited animators.
- Documented Source-Code included
Supported Platforms
FaceToons uses TextureArrays for efficient memory and bandwith management. As of Unity 6, TextureArrays are supported on all platforms with shader model 3.5 (or higher) or the following graphics APIs (Vulkan, DX11, DX12, OpenGL ES 3.0, WebGL 2.0, OpenGL Core, Apple Metal... full list here).
Rhubarb Integration
Rhubarb LipSync Editor integration is supported on MacOS & Windows. Created animation can be played by all platforms.