前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Animation Rigging 如何让你的Avatar人物更具灵活性

Animation Rigging 如何让你的Avatar人物更具灵活性

作者头像
CoderZ
发布2022-12-26 21:04:19
1.2K0
发布2022-12-26 21:04:19
举报

? 简介

Animation RiggingUnity官方发布的可以对Avatar人物骨骼进行约束的工具,已经有稳定的经过验证的Vertified包体,可以将其理解为一个IK工具,使用它可以让我们的人物动作表现更具灵活性。

Package Manager

? 基本组件

?Rig Builder 依赖Animator组件,所以将其与AvatarAnimator组件挂载于同一个物体上,支持同时控制多个Rigs,帮助我们实现动画融合

Rig Builder

?Bone Renderer 骨骼可视化组件,方便我们进行编辑、绑定,只需要将所有的骨骼节点添加到Transform集合中。

Bone Renderer

添加完成后,在Scene窗口看到Avatar的骨骼可以被渲染出来:

骨骼可视化

?Rig 约束控制组件,与骨骼根节点位于同一层级,将其添加到Rig Builder组件的Rig Layers列表:

Rig

Rig Layers

? 应用

本文以两处用例来表现Animation Rigging的作用,使用的环境如下:

?Unity 2022.3.33?Animation Rigging 1.0.3

Aim Constraint

例如你想使你场景中的NPC一直“关注”你,可以使用Aim Constraint瞄准约束:

Aim Constraint

?Constrained Object:被约束的物体,这里的Head是NPC的头部骨骼节点。?Source Objects:目标物体,这里的Head是Player的头部骨骼节点,表示NPC的头部一直看向Player的头部。?Constrained Axes:被约束的轴,这里只使用Y轴,表示只控制NPC头部的Y轴旋转。?Min/Max Limit:最小最大值限制,用于限制NPC的头部旋转角度在指定范围内。

Aim Constraint

Two Bone IK Constraint

例如你想使美术提供的动作与你场景的物体更加“契合”,可以使用Two Bone IK Constraint约束,这里以一个Sit Down坐下的动作为例,如下图所示,我们可以发现Avatar坐下后胳膊与我们场景中的椅子并不是很"契合":

Sit Down

接下来我们为其添加Two Bone IK Constraint来改善Sit Down动作的表现:

Two Bone IK Constraint

RootMidTip是我们想要进行约束的骨骼节点,Source Objects中的Target是新建的一个空节点,用于控制Avatar的胳膊到指定的位置,我们将其拖到椅子的把手位置:

Target

左胳膊进行约束后的效果:

约束效果

我们可以通过插值方式来控制Weight权重数值,让约束效果逐渐起作用,使其融合进我们的Sit Down动作过程中。

代码语言:javascript
复制
using UnityEngine;
using UnityEngine.Animations.Rigging;

public class Example : MonoBehaviour
{
    [SerializeField] private Animator animator;
    [SerializeField] private TwoBoneIKConstraint constraint;

    private void Update()
    {
        var casi = animator.GetCurrentAnimatorStateInfo(0);
        if (casi.IsName("sitdown"))
        {
            constraint.weight = casi.normalizedTime;
        }
    }
}

动画融合

Animation Rigging中有多种约束类型,合理使用可以让我们的Avatar人物更加活灵活现。

本文参与?腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-11-20,如有侵权请联系?cloudcommunity@tencent.com 删除

本文分享自 当代野生程序猿 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ? 简介
  • ? 基本组件
  • ? 应用
    • Aim Constraint
      • Two Bone IK Constraint
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
      http://www.vxiaotou.com