Rukhanka is an ECS animation system that mimics the standard 'Mecanim' animation system of Unity. Use familiar tools for authoring animations and animation state machines without any difference from the 'Monobehaviour' world. During the baking phase, it converts all required Animator, Animation, Skinned Mesh Renderer, and Avatar Mask data into its internal structures. All converted data is 'Burst' compatible and processed in a parallel and very performant way.
Rukhanka has the following main features:
Unity Animator Controller conversion and processing
Generic and Humanoid animations and avatars
Animation data preparation for Entities Graphics skinned meshes
Bone visualization system
Extended logging and validation layer
Arbitrary (non-skinned meshes) object hierarchy animation
Avatar masks
Root motion
All 2D blend tree types support (Direct, 1D, 2D Simple Directional, 2D Freeform Directional, 2D Freeform Cartesian)
Client-server animations synchronization with 'Unity Netcode for Entites' package
Works with Unity.Physics
Animation and animator controller events
Inverse Kinematics
Blend shapes
Full source code
The package contains samples for HDRP and URP.
Rukhanka has limitations:
Legacy animations are not supported.
Although Rukhanka implements all core animation functionality it is not 100% equivalent to Unity 'Mecanim'. For a full feature support matrix please refer to documentation.
Rukhanka 是一个模仿 Unity 标准 “Mecanim ”动画系统的 ECS 动画系统。使用熟悉的工具编写动画和动画状态机,与 “Monobehaviour ”世界没有任何区别。在烘焙阶段,它会将所有需要的动画、动画、蒙皮网格渲染器和头像遮罩数据转换为内部结构。所有转换后的数据都与 “Burst ”兼容,并以并行和高性能的方式进行处理。
Rukhanka 具有以下主要功能:
Unity 动画控制器转换和处理
通用和人形动画与头像
为实体准备动画数据 图形蒙皮网格
骨骼可视化系统
扩展日志和验证层
任意(无蒙皮网格)对象层次动画
头像遮罩
根运动
支持所有二维混合树类型(直接混合、一维混合、二维简单定向混合、二维自由形态定向混合、二维自由形态笛卡尔混合)
使用 “Unity Netcode for Entites ”软件包同步客户端和服务器动画
与 Unity.Physics 协同工作
动画和动画控制器事件
反运动学
混合形状
完整源代码
软件包包含 HDRP 和 URP 示例。
Rukhanka 有其局限性:
不支持传统动画。
尽管 Rukhanka 实现了所有核心动画功能,但它并不完全等同于 Unity 的 “Mecanim”。有关完整的功能支持矩阵,请参阅文档。
|