万圣节特惠:−40% Pixor 现价 $19.99 $11.99,截至 11 月 4 日,在 itch.io →

预备动作与跟随动作:让跳跃有分量

一段在 3D 中看着不错的片段,变成几个像素高后常常会发飘:起跳前没有下蹲,落地没有分量。「节奏」节点会根据每个部位的移动速度,加上手绘动画师会加的东西。

预备动作与跟随动作:带「节奏」节点的骑士跳跃:这个示例项目渲染出的精灵表

示例项目

预备动作与跟随动作:带「节奏」节点的骑士跳跃:.pixor 项目及其素材库模型(CC0)。左侧的精灵表就是它渲染的结果。

侧面看去,一个像素画骑士僵硬地跳起
素材库原样的跳跃
同一个骑士,起跳前蹲得更深,落地时压扁
经过「节奏」节点,强度 1.5

入门 · 约 5 分钟 · 或用 91 秒看完

1. 侧视摄像机

打开一个已绑定骨骼的模型:本教程使用免费 CC0 素材库中的骑士。在场景步骤中,在大纲中点击南摄像机,把游戏视角设为平台跳跃。

2. 固定比例

把摄像机的尺寸设为每米像素数并输入 34。贴合模型的摄像机会重新缩放模型以容纳动作的全部范围,所以更深的下蹲会让精灵变小;比例固定时,骑士保持大小不变,画布在它周围扩大。

3. 素材库的跳跃

在动作步骤中,选择添加动作 › 素材库片段:jump。在风格步骤的 2D 视图中观看:它能播放,但是发飘。骑士没有下蹲就离地,落地也毫无分量。

4. 添加「节奏」节点

回到动作步骤,在动作节点图中选中片段节点,选择添加动作节点并挑选节奏(在「过滤器」下)。它接在片段之后,其余的都根据每个部位的移动速度自动算出:

  • 预备(预备动作):在某个部位快速移动之前,它会先向反方向稍微移动一点。
  • 过冲(跟随动作):快速动作停下时,该部位会稍微越过一点,再回稳。
  • 压扁:在下落停止处,模型会短暂变扁变宽,然后弹回。

5. 它的设置

节点的字段就是它的设置:强度(1;0 为原始片段,2 为两倍)、预备、过冲和压扁(各为 1;0 为无),以及秒,即预备和回稳持续多久(0.1)。本教程把强度设为 1.5。相同的数值每次都得到相同的帧。

6. 有了分量

在风格步骤中,跳跃现在会在起跳前下蹲、在落地时压扁。用 2D 视图的洋葱皮(O)或改动之处(D)逐帧检查。

7. 导出

在资产步骤中,从节点库添加一个文件:每个片段一个 GIF输出,然后导出:精灵表、它的 JSON 和跳跃的 GIF。

从命令行

--timing 给一次渲染的每个片段加上「节奏」节点:先写强度,再按名称写任意设置。

pxr render knight.glb --camera platformer --pixels-per-metre 34 --clip lib:jump --timing 1.5
pxr render hero.glb --clip attack --timing 1.5,squash=0,time=0.08
pxr project set game.pixor --timing overshoot=2

pxr project set --no-timing 会再把它们去掉。

下一步

  • 动画节奏:停顿、帧数,以及一帧该停留多久。
  • 亚像素动画:比一个像素还小的呼吸。

问题

「节奏」节点会改变姿势最终停在哪里吗?

不会。片段中静止的每个姿势都被精确保持,任何东西都停在原来的位置。只有姿势之间的动作会在之前加预备、在之后加过冲。

它对 Mixamo 或其他动作捕捉片段有效吗?

有效。它读取每个部位的移动速度,所以任何片段都适用:素材库片段、Mixamo 下载的动画、你自己设的关键帧。慢动作几乎保持原样;快动作得到的效果最多。

循环的行走还能无缝循环吗?

能。在循环动作中,效果会绕回循环,所以开头的动作会在上一轮的结尾做预备,循环保持无缝。

为什么加了「节奏」节点后我的精灵变小了?

贴合模型的摄像机会为更深的下蹲和压扁腾出空间。把摄像机的「尺寸」设为「每米像素数」,无论动作如何,比例都保持不变。

延伸阅读

在浏览器中免费用你自己的模型试试,或者获取完整版。

在浏览器中试用 获取 Pixor