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

学习做动画7.跳跃

1。打开ABP_CharacterBase,我们新建跳跃的逻辑

大概就是这样的。

2。

①进入到JumpStart需要人物处于"掉落状态",且z轴的速度大于零,代表我们正在起跳。

②起跳完毕后,我们进入JumpLoop状态

③当速度与加速度的一个除数小于某个值的时候,就算到顶点了。

④从JumpSelector->JumpApex则为正在处于“掉落”状态、并且z轴的速度小于0,则直接过渡。

⑤FallLoop->FallLand,则是通过一个距离匹配来设置

⑥由移动组件里的数据来判断是否着陆

3。我们新建一个函数UpdateCharacterStateData用来更新角色的状态

新建一个函数UpdateJumpFallData用来更新角色到达顶点的时间

我们需要把新建的两个函数放入线程安全更新函数内

新建一个函数UpdateGroundDistance

然后进入事件图表,将刚刚新建的函数连接

4。接下来则是完善这个动画的转换条件

①JumpSources->JumpSelector,直接改为true

②JumpSelector->JumpStart,使用IsJumping进行判断

③:JumpStart->JumpLoop则开启自动规则

④:JumpLoop->JumpApex则是通过JumpApexTime进行判断

⑤JumpSelector->JumpApex则是用IsFalling进行判断

⑥JumpApex->FallLoop则是开启自动规则

⑦FallLoop->FallLand是当地面的距离小于200时

⑧FallLand->EndInAir与EndInAirSources->EndInAir是当角色接触到地面时

⑨EndInAir->CycleAlias则是使用共享规则ToStart,有加速度则过渡到Cycle

⑩EndInAir->IdleAlias则是直接打钩,同时更改优先顺序为2

这两个导管内也需要打钩

5。然后我们进入到ALI内,新建五个动画层

然后回到ABPCharacterBase

(更正)

然后进入ABP_CharacterBase内

进入JumpStart状态

进入JumpStartLoop状态

进入JumpApex状态

进入FallLoop状态

进入FallLand状态

然后再进入ABP_LayersBase

新建五个动画序列

先进入JumpStart动画层。新建序列播放器、绑定JumpStart并设置循环动画为false

JumpStartLoop动画层

JumpApex动画层

FallLoop动画层

最后是FallLand,这里我们选择使用序列求值器

然后我们给它"变为相关时"绑定函数

继续为"更新时"绑定一个函数.

这里的DistanceCurveName我们需要进入到动画里去找,distance代表角色到地面的距离

这里的曲线是在这里进行设置,我们需要设置成Z轴

找到Jump的动画,对他们进行矩阵化操作,设置根运动与曲线

然后再找到对应的曲线进行压缩即可

这时,我们可以进入PistolLayers为其赋予动画了

http://www.dtcms.com/a/357805.html

相关文章:

  • UCIE Specification详解(十)
  • 快速深入理解zookeeper特性及核心基本原理
  • 【拍摄学习记录】06-构图、取景
  • Docker03-知识点整理
  • TypeScript:map和set函数
  • 2025 DDC系统选型白皮书:构建高效低碳智慧楼宇的核心指南
  • 【python开发123】三维地球应用开发方案
  • python 解码 视频解码
  • 打工人日报#20250829
  • 人工智能-python-深度学习-批量标准化与模型保存加载详解
  • OpenTenBase 技术解读与实战体验:从架构到行业落地
  • 2024年06月 Python(四级)真题解析#中国电子学会#全国青少年软件编程等级考试
  • c++标准模板库
  • 轨道交通场景下设备状态监测与智能润滑预测性维护探索
  • 动态环境下的人员感知具身导航!HA-VLN:具备动态多人互动的视觉语言导航基准与排行榜
  • Free Subtitles-免费AI在线字幕生成工具,支持111种语言
  • 【ChatMemory聊天记忆】
  • STM32F4系列单片机如何修改主频
  • 从世界人形机器人大会看人形机器人如何实现复杂人类动作的精准复现?
  • 【论文简读】MuGS
  • 【拍摄学习记录】05-对焦、虚化、景深
  • 2025年06月 Python(四级)真题解析#中国电子学会#全国青少年软件编程等级考试
  • Golang 面试题「中级」
  • 四旋翼飞行器动力学建模与简单PID控制
  • 锂电池充电芯片 XSP30支持PD/QC等多种快充协议支持最大充电电流2A
  • 嵌入式Linux驱动开发:i.MX6ULL平台设备驱动
  • 第22章笔记|把“可传参脚本”打磨成“高级好用的工具”
  • 博客系统测试实战:功能和性能的全面解析
  • selenium自动下载更新浏览器对应的webdriver
  • 关于shell命令的扩展