表情编辑器

通过表情编辑器,可以为角色创建各种面部表情——微笑、惊讶、生气等,并通过帧动画实现眨眼、嘴巴张合等动态效果。

face-editor


创建表情

  1. 在左侧项目树的 素材 → 表情 分类,点击右侧的 + 按钮,会在列表中添加一个新表情
  2. 双击该表情名称可以修改表情名称(如「开心男」「哭泣女」等)

编辑器界面

区域说明
表情树管理表情使用的图片部件,状态,帧
属性面板编辑选中元素的属性
画布预览右侧主区域,预览当前帧的表情效果
帧时间轴管理帧动画的每一帧

部件(Part)

表情的部件是面部各元素的图片,如眼睛(睁开、闭合)、嘴巴(闭合、微张、大张)、眉毛等。

添加部件

  1. 在表情树的 部件列表 右侧,点击 + 按钮
  2. 选择图片文件导入
  3. 为部件命名(如「脸」「闭嘴」「张嘴」等)

通常需要为同一个面部元素准备多张不同状态的图片。例如,嘴巴需要「闭嘴」「张嘴」两张。

face-part


帧动画(Frame)

帧动画是表情的核心。每一帧定义了脸的部件和位置,连续播放多帧就形成了动态表情效果。

创建帧

有 2 种方式创建帧:

  1. 在表情树的 帧列表 右侧,点击 + 按钮,会在列表中添加一个新帧
  2. 在帧时间轴面板中,点击右键,在菜单中选择 添加帧

add-frame

编辑帧内容

选中帧后,你可以为该帧绑定部件:

add-binding

添加部件后,可以通过以下方式调整表情效果:

  • 删除某个部件:在表情树的对应帧中,点击右侧的 x 按钮即可解绑该部件
  • 调整部件位置:在画布上拖动部件或在属性面板中精确设置

edit-frame

示例:制作说话动画

帧序号显示的部件效果
第 1 帧脸、闭嘴闭嘴
第 2 帧脸、张嘴张嘴

预览帧动画

点击预览区域上方的 播放 按钮可以预览帧动画的循环播放效果,确认动画是否流畅。


状态(State)

状态定义了帧动画的播放区间。一个表情可以有多个状态,每个状态对应一段帧序列。

常见状态

状态用途说明
默认角色不说话时通常只有一帧,也可以包含偶尔眨眼的帧序列
说话角色说话时包含嘴巴张合的帧序列

创建状态

  1. 在帧时间轴面板中,选择起始帧,点击右键,在菜单中选择 创建表情状态。这会添加一个以选择帧作为起始帧的新状态,动画长度默认为 1 帧。

add-state

  1. 在表情树中,可以修改状态名称
  2. 在属性面板中,设置状态对应的起始帧长度

edit-state

例如,假设共 2 帧:

  • 默认状态:起始帧 0,长度 1
  • 说话状态:起始帧 0,长度 2

设置默认/说话状态映射

  1. 在表情树中,选中表情根节点,在属性面板中找到「默认状态」和「说话状态」属性
  2. 分别填写对应的状态名称
    • 默认状态:在剧本中,角色首次切换到该表情时,会自动切换到默认状态,通常设置为「默认」
    • 说话状态:在剧本中,角色说话时会自动切换到说话状态,通常设置为「说话」

edit-property


使用技巧

  • 帧数控制:帧数不宜过多,一般 3-8 帧即可满足基本的表情动画需求
  • 说话嘴型:说话状态通常需要至少 2-3 帧嘴型交替,以产生张合效果
  • 表情与角色关联:创建表情后,在剧本中让表情入场,并通过 【表情名】依附到【角色名】的【脸】 绑定到角色脸部骨骼。

角色能使用表情的前提是:角色姿势对应的骨架中要有一个名为「脸」的骨骼。


动画剧本

可在剧本中使用的素材部分

表情编辑器中创建的元素,在剧本中可以通过以下方式引用:

元素引用方式说明
表情名【表情名】表情作为 2D 演员使用,可 入场依附到 角色脸部骨骼,也可单独显示
状态名【表情名】变换为【状态名】通过 变换为 切换表情状态
帧率【表情名】的【帧率】设置表情帧动画播放速度

此外,表情支持通用播放控制命令:

命令说明
播放【表情名】循环播放当前状态的表情动画
暂停【表情名】暂停表情动画
重置【表情名】将表情动画重置到当前状态起始帧

角色能使用表情的前提是:角色当前姿势对应的骨架中必须有一个名为「脸」的骨骼。

角色使用 命令时,如果角色子树中存在表情演员,并且表情素材配置了说话状态,表情会在台词期间自动切换到说话状态,结束后恢复原状态。

剧本示例

为角色设置表情

// 将开心脸绑定到小明的脸部骨骼
【开心脸】入场。
【开心脸】依附到【小明】的【脸】。

切换表情状态

// 手动切换到微笑状态
【开心脸】变换为【微笑】。

说话时自动切换表情

// 说话时自动从默认状态切换到说话状态(嘴巴张合动画)
// 说话结束后自动切回默认状态
【小明】说:"你好!"。

手动控制表情动画

// 手动播放表情帧动画(例如持续眨眼效果)
播放【开心脸】。

// 停止表情帧动画
暂停【开心脸】。

综合示例:入场后切换表情并说话

【小明】入场。
【小明】的【位置】变更为【教室】的【讲台】的【位置】。
【开心脸】入场。
【开心脸】依附到【小明】的【脸】。
【小明】说:"大家好!今天给大家讲个笑话"。
【开心脸】变换为【大笑】。
【1】秒后。
【开心脸】变换为【默认】。