Unity 人物模型学习笔记

一、关于模型的检查

拿到人物模型时,检查人物:

  1. 位置信息是否在0点
  2. 布线/UV是否正常
  3. 身体各部分是否分开
  4. 各部分命名是否清晰
  5. 骨骼需要绑定

二、Unity人物动画

https://www.bilibili.com/video/BV1cc41197mF?spm_id_from=333.788.recommend_more_video.-1&vd_source=707ec8983cc32e6e065d5496a7f79ee6

1. 人物下载
  • mixamo.com,可以下载人物模型和动画
2. 导入unity

https://www.bilibili.com/video/BV1Wu411F7Ca?spm_id_from=333.788.recommend_more_video.-1&vd_source=707ec8983cc32e6e065d5496a7f79ee6

  • 通过使用外部材质,导入模型的贴图
    在这里插入图片描述
3. 人物动画

https://www.bilibili.com/video/BV1RH4y1i7px/?spm_id_from=333.337.search-card.all.click&vd_source=707ec8983cc32e6e065d5496a7f79ee6

  • 导入模型后,建立Animator,并关联骨骼(Avatar)阿凡达
  • 可以查看Avatar文件,有骨骼等设置
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 建立一个Animator Control,加一个状态节点,绑定一个动画
    在这里插入图片描述
  • 这里先绑定了一个抠帧动画
    在这里插入图片描述
  • 先去掉Avatar骨骼,发现可以运行(这是因为这个案例的模型不符合T-Pose或Humanoid规则)
  • 只要符合T-Pose与Humanoid规则,相互的人物动画,就可以互通使用
4. 人物动画素材下载
  • https://www.mixamo.com

  • https://assetstore.unity.com/3d/animations

  • 一些动画组件:

  • https://assetstore.unity.com/packages/3d/animations/human-basic-motions-free-154271

  • https://assetstore.unity.com/packages/3d/animations/human-basic-motions-157744
    在这里插入图片描述

  • https://assetstore.unity.com/packages/3d/characters/humanoids/humans/anime-girls-pack-263442
    在这里插入图片描述

  • https://assetstore.unity.com/packages/3d/animations/frank-platformer-basic-222129
    在这里插入图片描述

  • https://assetstore.unity.com/packages/3d/animations/basic-standing-animation-package-219976
    在这里插入图片描述

  • https://assetstore.unity.com/packages/3d/animations/synty-animation-idles-299700
    在这里插入图片描述

  • https://assetstore.unity.com/packages/3d/animations/dialogue-anims-222285
    在这里插入图片描述


三、Animation Rigging

Unity 的 Animation Rigging 是一个强大的动画系统扩展包,主要用于在运行时(Runtime)或编辑器(Editor)中对角色骨骼进行程序化控制,增强传统动画的表现力。它的核心作用是在保持原有动画的基础上,添加动态的、可编程的骨骼控制

网址:https://www.bilibili.com/video/BV1Vf421D7YY/?spm_id_from=333.1387.favlist.content.click&vd_source=707ec8983cc32e6e065d5496a7f79ee6

1. 安装

在这里插入图片描述

  • 下载一个免费的人物UnityChan
    在这里插入图片描述
2、Bone Renderer Setup
  • 菜单 -> Animation Rigging -> Bone Renderer Setup
  • 添加Bone Renderer组件
    在这里插入图片描述
    在这里插入图片描述
  • 能显示骨骼,选择骨骼,调整骨骼显示等
3、Rig Setup,望向目标
  • 菜单 -> Animation Rigging -> Rig Setup
    在这里插入图片描述
  • 在Rig 1里,可以增加骨骼约束
    在这里插入图片描述
  • 在Rig下建立HeadAim,并添加组件Multi-Aim Constraint 多目标约束
    在这里插入图片描述
  • 找到头部的节点,拖入
  • 加入Target
    在这里插入图片描述
  • 通过AnimationRigging小窗口改变Target的样式
    在这里插入图片描述
  • 加入HeadAim的Source Objects,调整Axis
    在这里插入图片描述
  • 限制旋转,更加自然
    在这里插入图片描述
  • 使用权重,来减轻在某种情况下的影响
    在这里插入图片描述
  • 或者
    在这里插入图片描述
  • 碰到需要多个跟随目标的情况,可以如下设置
    在这里插入图片描述
  • HeadAim是头部,ChestAim是身体,都绑定Target,就可以实现
    在这里插入图片描述
4、IK骨骼约束
  • 可以再添加一个约束层
    在这里插入图片描述
  • 建立Rig 2,并有手臂移动约束器
    在这里插入图片描述
  • 使用Two Bone IK Constraint,双骨IK约束器
    在这里插入图片描述
  • 这里有3个骨骼,把手、手肘和手臂分配给它
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 建立一个target
    在这里插入图片描述
  • 选择Target,在选择LeftHand节点,选择菜单Animation Rigging -> Align Transform,对齐到手上
  • 通过右下方的Animation Rigging小窗口,改动下形状
    在这里插入图片描述
  • 把目标绑定在Target关联
    在这里插入图片描述
  • 这样手的位置被约束到了一个位置
    在这里插入图片描述
5、更多案例

通过Animation Rigging的Samples,导入更多的案例进行学
在这里插入图片描述

核心约束脚本
  1. BoneRenderer

功能:在Scene视图中可视化骨骼层级结构
用途:调试和查看骨骼位置关系

  1. RigBuilder

功能:管理所有Rig层的核心组件
用途:必须添加到角色根对象上,协调所有Rig约束

  1. Rig

功能:定义约束层容器
用途:组织和管理一组相关约束

常用约束类型
  1. TwoBoneIKConstraint

功能:实现经典的两段骨骼IK解算
用途:手臂/腿部控制,末端受目标位置和旋转控制

  1. MultiParentConstraint

功能:多父级约束
用途:允许一个骨骼受多个变换源影响,可设置权重混合

  1. MultiPositionConstraint

功能:多位置约束
用途:混合多个位置源的影响

  1. MultiRotationConstraint

功能:多旋转约束
用途:混合多个旋转源的影响

  1. MultiAimConstraint

功能:多目标注视约束
用途:控制骨骼朝向多个目标点

  1. ChainIKConstraint

功能:链式IK约束
用途:处理多骨骼链的IK解算,比TwoBoneIK更灵活

高级约束
  1. BlendConstraint

功能:约束混合
用途:在不同约束设置之间平滑过渡

  1. OverrideTransform

功能:变换覆盖
用途:临时覆盖骨骼的变换值

  1. TwistChainConstraint

功能:扭曲链约束
用途:实现脊柱等部位的扭曲效果

  1. DampedTransform

功能:阻尼变换
用途:为变换添加延迟/阻尼效果

实用工具脚本
  1. RigTransform

功能:装备变换代理
用途:在装备系统中创建虚拟控制点

  1. WeightedTransformArray

功能:加权变换数组
用途:存储带权重的变换数据

  1. RiggingMenu

功能:快速创建装备的菜单工具
用途:加速装备创建流程

典型应用场景
  • 角色装备:组合使用TwoBoneIK和MultiParent创建完整角色装备

  • 面部动画:使用MultiPosition和MultiRotation控制面部混合形状

  • 动态道具:通过OverrideTransform实现武器拾取/放置

  • 注视系统:MultiAimConstraint创建头部/眼睛注视控制

  • 程序动画:结合ChainIK和脚本创建动态运动效果

测试源码地址:https://download.csdn.net/download/qq_17523181/90855595

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

朗迹 - 张伟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值