This page lists implemented features and plans for future releases.
Name | Description | Availability |
---|---|---|
Animation building | Building an ozz run-time (optimized, compressed) animation from a raw (simple, editable, offline) animation format. | 0.1.0 |
Skeleton building | Building an ozz run-time (optimized, compressed) skeleton from a raw (simple, editable, offline) skeleton format. | 0.1.0 |
Sampling | Sampling an animation at a given time, in local space. | 0.1.0 |
Local to model space conversion | Converting from local space (bone transform relatively to its parent) to model space (bone transform relatively to the root). | 0.1.0 |
Serialization | Serialization of skeleton and animation data structures, endiannes support. | 0.1.0 |
Key-frame optimizations | Optimizes redundant key-frames. | 0.1.0 |
Blending | N-way blending of local space skeleton postures. | 0.2.0 |
Partial animation | Support building of animation masks, sampling and blending masked animations. | 0.3.0 |
Fbx support | Adds full pipeline support for Fbx files (skeletons and animations). | 0.4.0 |
Key-frame compression | Compress animation memory footprint. | 0.6.0 |
Skinning | Supports for matrix palette skinning. | 0.7.0 |
Additive animation | Supports building, sampling and blending of additive animations. | 0.8.0 |
Hierarchical key-frame optimizations | Improves key-frame optimization quality by considering the full joints hierarchy while evaluating optimization error. | 0.8.0 |
Support multi take importing | Allows importing of all animations from a DCC file with a single command. | 0.9.0 |
User channels | Support for importing and sampling tracks of user data (float, Float3, Quaternion...). | 0.10.0 |
Per joint compression setting | Allow overriding of compression settings per joint. | 0.11.0 |
Two bones IK | Two bone IK solver for short joint chains that consist of three joints (two bones). | 0.11.0 |
Aim IK | Aim IK solver rotates a joint so it aims at a target. | 0.12.0 |
glTF importing | Supports conversion from glTF exchange format files to ozz binary runtime data structures. | 0.13.0 |
Backward sampling optimization | Optimize backward sampling of animations. | 0.15.0 |
Random seek optimization | Optimize seek time while sampling long animations. | 0.15.0 |
Motion analysis and extraction | Supports building of motion tracks, motion and leg cycles, foot movement, extracted from full animations. | Next release |
Animation retargeting | Retargeting animations from one skeleton to another. | To be planned |
Gradient band interpolation | A sample which demonstrates this 2 parameter blending technique. | To be planned |
Dual quaternion skinning | Skinning technique that removes linear blend collapsing artifacts. | To be planned |
Features usage is demonstrated with the samples.
The run-time code (ozz_base, ozz_animation, ozz_geometry) only refers to the standard CRT and has no OS specific code. Os support should be considered for samples, tools and tests only.
Name | Description | Availability |
---|---|---|
Linux | All samples and full pipeline support. | 0.1.0 |
Windows | All samples and full pipeline support. | 0.1.0 |
macOS | All samples and full pipeline support. | 0.3.1 |
macOS arm | All samples and full pipeline support. | 0.15.0 |
emscripten/wasm | Runtime and samples support. | 0.5.0 |
Android | Runtime and samples support. | Unofficial support |
iOS | Runtime and samples support. | Unofficial support |
Nintendo Switch | Runtime and samples support. | Unofficial support |