animation-programming-basics_冲突文件_zkx_20240828215918

Overview

  • Skinning

  • Skeletons

  • Animations

  • Root Motion

  • Synchronization

  • Events

  • Motion warping

Skeletons and Skinning

Skinning : Deformation Boness

Skeletons

有用户可修改的骨骼和只有程序可以修改的骨骼

  • Core Skeleton

    • 需要制作几种

    • Average Male

    • Large Female

    • Bipedal Mech

  • Gamplay bones

    • 不用渲染

    • Attachement bones (holsters, weapon bones )

    • Anchor bones (used to anchor characters in the environment for actions)

    • IK Target / Offsets

  • Procedural Bones

    • 辅助渲染

image.png

Bind Pose vs Reference Pose

  • bind pose

    • mesh skeleton default pose

    • skin weight

  • reference pose

    • animation skeleton default pose

    • 不常用

两种 Pose 通常是不一样的

Multi-part Character

角色的骨骼可以控制多个 Mesh 而不只是自己的 Skin mesh,比如身上的衣服

Skeleton Best Practices

image.png
image.png

Mistake

最重要的是分离动画骨骼和渲染骨骼,动画骨骼控制骨骼当前位置,通过两者共同的核心骨骼生成当前的渲染骨骼位置,传给 Gpu 渲染

衣服的动画要和躯干的分离,单独依赖骨骼

Animation

动画数据导入和采样

用关键帧数据存在曲线

image.png

数据采样

image.png

Animation Sampling

image.png

Blending

image.png

Coordinate Spaces

image.png

数据存储在 Parent Space,空间变换到 Character 或 World Space 后交给渲染系统

Pose API

Interpolative and Additive

Interpolative Blending

image.png

Additive Blending

image.png

Bone Mask

image.png

Global Blend

image.png

Root Motion

Multiple names

  • Ground

  • Displacement

  • Root

  • Character

Character in Games

image.png
image.png

Sampling Root Motion

image.png

More use

image.png

Best Practice

角色的 Root 最好和动画的 Root 分开

image.png
  • Projected root 通常会抖动

  • 而 Authored root 是直线

image.png
image.png

起点到终点需要保持 z 轴一致,方向一致

Code vs Anim Driven

Code Driven

image.png

Anim Driven

image.png
image.png

Event and Synchronization

Events

image.png

Event Sampling

image.png
image.png

Event Consumers

每帧收集所有的事件给 Event Consumer 消费

image.png

Event User

image.png

Synchronization

动画同步

image.png

动画速度同步

image.png

Sync Track 对 Track 进行同步,可以在最后一个 Sync 进行同步

Motion Warping

apply root motion,move root to target point

Basic Procedural Adjustments

  • Preplace / Add rotation

  • Replace / Add transform

Warping

  • 弯曲运动轨迹

弯曲关键点

image.png
image.png

Sampling Warped Root Motion

可能在路径上有误差

image.png

Wrap 可能到中途需要改变目标

角色旋转时脚步通常用 角度融合

image.png

最后更新于

这有帮助吗?