Unity(第二十二部)官方的反向动力学一般使用商城的IK插件,这个用的不多

反向动力学(Inverse Kinematic,简称IK)是一种通过子节点带动父节点运动的方法。
正向动力学

在骨骼动画中,大多数动画是通过将骨架中的关节角度旋转到预定值来生成的,子关节的位置根据父关节的旋转而改变,这种构建骨架的方法被称为正向动力学。
反向动力学

与之相反,反向动力学是根据骨骼的终节点来推算其他父节点的位置的一种方法。

在 Unity中,使用反向动力学需要在状态机中开启 IK 设置。

  1. 在动画上加上 IK的脚本。
csharp 复制代码
//IK写到这个方法内  layerlndex是图层的索引
private void OnAnimatorlK(int layerlndex){
		//设置头部IK
		animator.SetLookAtWeight(1);//设置IK权重,只有头部可以这样使用,
		//target.position目标节点位置
		animator.SetLookAtPosition(target.position);
		//设置右手IK权重
		animator.SetlKPositionWeight(AvatarlKGoal.RightHand, 1);
		//旋转权重
		animator.SetlKRotationWeight(AvatarlKGoal.RightHand, 1);
		//设置旋转 四元数
		animator.SetlKRotation(AvatarlKGoal.RightHand, target.rotation);
		//设置右手IK
		animator.SetlKPosition(AvatarlKGoal.RightHand, target.position);
}
相关推荐
nnsix33 分钟前
Unity ReferenceFinder插件 窗口中选择资源时 同步选择Assets下的资源
java·unity·游戏引擎
麷飞花2 小时前
unity3d scene窗口选中物体, 在 hierarchy高光显示
unity·editor·unity3d·u3d·hierarchy
ۓ明哲ڪ3 小时前
Unity功能——关闭脚本自动编译(Unity2021.3)
unity·游戏引擎
90后小陈老师3 小时前
Unity教学 项目4 3D求生枪手
3d·unity·游戏引擎
CreasyChan13 小时前
C# 反射详解
开发语言·前端·windows·unity·c#·游戏开发
IMPYLH16 小时前
Lua 的 Coroutine(协程)模块
开发语言·笔记·后端·中间件·游戏引擎·lua
世洋Blog1 天前
SiYangUnityEventSystem,一个Unity中的事件系统
观察者模式·unity·c#·游戏引擎·事件系统
呆呆敲代码的小Y1 天前
【Unity实战篇】| 游戏滑动框添加特殊效果,如实时高亮显示、曲线滑动等
游戏·unity·游戏引擎·实战·u3d·免费游戏·unity实战技巧
Tatalaluola1 天前
【Quest开发】用unity UI快速实现交互
unity·游戏引擎
技术小甜甜1 天前
[Godot] 在 Godot 3.1 中配置 ADB 可执行文件的实用指南
游戏·adb·游戏引擎·godot