当前位置: 首页 > news >正文

通过PS和Unity制作2D动画之二:IK的使用

一、IK的概念

IK:Inverse Kinematics,反向动力学。

(1)正向动力学

在骨骼动画中,构建骨骼的方法被称为正向动力学。它的表现形式是:子骨骼(关节)的位置根据父骨骼(关节)的旋转而改变。

举个例子,当我们抬起手臂时,是肩部关节带动整个手臂的运动,用父子骨骼理解就是父带动子。

(2)反向动力学

它和正向动力学恰恰相反,它的表现形式是:子骨骼(关节)末端的位置改变会带动自己以及自己的父骨骼(关节)旋转。

举个例子,当我们拿起一个杯子的时候是用手掌去拿。以杯子为参照物,我们移动杯子的位置,手臂会随着杯子一起移动。

用父子骨骼理解的话就是子带动了父。

(3)IK的用处

  • 瞄准功能
  • 头部朝向功能
  • 拾取物品功能

(4)总结

正向动力学:父带动子。

反向动力学:子带动父。

二、IK Manager 2D

想要让对象具备IK的能力,需要为父对象添加IK Manager 2D脚本。

(1)IK Solvers

IK解算器,在这里添加IK

  • Chain(CCD):可以自定义影响N个关节点,不能反向
  • Chain(FABRIK):可以自定义影响N个关节点,可以反向
  • Limb:只会影响3个关节点,一般用于控制四肢

(2)Weight

权重,当有多个IK控制同一点时,权重会影响控制的百分比

(3)Limb Solver 2D

在IK Solvers的list中添加Limb,添加完成后会在bone_1下生成New LimbSolver2D。

  • Effector:默认的IK点位置,此处需要新创建空对象的信息
  • Target:根据IK点位置生成的IK对象,此处Solver会自动生成结果
  • Flip:旋转反向,用于控制IK的旋转方向
  • Constrain Rotation:约束旋转程度
  • Solve from Default Pose:从默认姿势进行求解计算
  • Weight:当前IK解算器的权重

示例:

1. 将New LimbSolver2D修改为Arm_Solver。

2. 找到最左端的骨骼,在这个骨骼下面创建一个空对象

3. 改变position的值移动GameObject的位置到左端的最外面

4. 将该GameObject放到Effector选装中,可以看到有3个节点高亮,同时在Arm_Solver下生成了Arm_Solver_Target的对象。

5. 拖动第一个节点做动作

6. 在IK Solvers中再创建Limb,重命名为ArmR_Solver。用相同的方法创建右臂的IK。

本文参考:IK的使用_哔哩哔哩_bilibili

http://www.lryc.cn/news/501568.html

相关文章:

  • 图像边缘检测原理和常用检测算子及MATLAB实现
  • 企业经营数据分析系统:提升决策能力的利器
  • 【49】AndroidStudio构建其他人开发的Android项目
  • Oracle 数据库中SERIALLY_REUSABLE包是一种特殊的包类型
  • css基础记录
  • Python后端 -- 万字长文全面解析Django框架
  • el-thee懒加载删除某条数据 ,el-thee懒加载重置,el-thee刷新某个节点
  • 【PyQt5教程 四】Qt Designer 样式表(styleSheet)实现基本小部件的自定义动态效果和资源浏览器背景添加方法
  • 【git】--- 通过 git 和 gitolite 管理单仓库的 SDK
  • 计算机网络之NAT、代理服务、内网穿透、内网打洞
  • 2024-金盾信安杯线上赛 WP
  • MySQL 基础架构
  • 汽车升级到底应不应该设置“可取消“功能
  • 【MySQL】mysql中的事务
  • 大语言模型(LLM)与智能机器人的应用分析
  • Inno Setup 学习笔记(一)
  • 从阿里云EDM到美团云:典型微服务治理平台的实战经验分享
  • 【接口自动化测试】一文从3000字从0到1详解接口测试用例设计
  • 反向代理-缓存篇
  • 【伪代码】数据结构-期末复习 线性表
  • JavaWeb学习、过滤器、ajax异步请求、json、jquery-api文档
  • 深入探索 JVM:原理、机制与实战
  • JavaWeb学习(3)(Servlet详细、Servlet的三种实现方式(面试)、Servlet的生命周期、传统web.xml配置Servlet(了解))
  • 支付宝租赁小程序助力便捷生活新方式
  • Linux-ubuntu环境配置
  • 深入解析下oracle的number底层存储格式
  • nginx代理rabbitmq和配置 Nginx 代理达梦数据库
  • 汉语唤醒词的模糊判断(Python)
  • Redis篇-2--原理篇1--I/O多路复用机制(5种I/O模型,I/O多路复用)
  • Knowledge Graph Studio:让知识图谱构建更简单、更智能