Live2D

本指南将带你完成 SillyTavern 中 Live2D 扩展的安装与自定义配置。该扩展允许你为角色使用 Live2D 动画模型,为虚拟角色增添动态且可互动的元素。

前置要求

在开始之前,请确认你已满足以下前置要求:

  1. 分支选择:请确保你正在使用最新版本的 SillyTavern,以便获取最新的功能与更新。

  2. 扩展安装:在扩展面板(以堆叠方块图标表示)的“下载扩展与素材”菜单中安装“Live2D”扩展。

  3. 模型文件夹放置:将你的 Live2D 模型文件夹放入 /data/<user-handle>/assets/live2d 目录。一个组织规范的 live2d 素材文件夹可能如下所示:

    素材文件夹示例

    • 一个 Live2D 模型文件夹应包含该 Live2D 模型所需的所有组件,例如表情、动作、贴图、音效和配置文件。其中,***.model.json 文件必须位于 Live2D 模型文件夹的根目录下,扩展才能检测到该模型。在本例中,shizuku Live2D 模型文件夹可能如下所示:

    Live2d 模型文件夹示例

    • 注意:模型也可以放在角色专属文件夹中,例如 /data/<user-handle>/characters/Shizuku/live2d/。但放在角色文件夹中的模型仅对该特定角色可用。

扩展设置

Live2D 扩展提供了多种设置来自定义动画模型的行为。以下是主要设置项:

UI 全局设置
UI 全局设置

全局设置

  1. 启用

    • 勾选此项可激活该扩展,使你的 Live2D 模型能够在 SillyTavern 中互动。
    • 如果你只想使用普通立绘,可以禁用该扩展。
    • 当你希望在群聊中移动普通立绘时,可以先禁用该扩展;待需要使用 Live2D 模型时再重新启用。
  2. 跟随光标

    • 勾选此项可让 Live2D 模型跟随你的光标移动(前提是该模型支持此功能)。
  3. 自动发送互动

    • 勾选此项后,当你点击映射了消息的区域时会自动触发角色互动(详情请参见触发区部分)。

调试设置

这些设置可帮助你在调试时控制 Live2D 模型的行为与可见性。

  1. 动画前重置模型

    • 勾选此项可在任何动画开始前重新加载模型。这会强制动画启动,并允许你在需要时连续点击。某些模型可能需要此选项以确保动画从一个兼容状态开始播放。
  2. 显示模型边框

    • 勾选此项可显示模型边框,便于确认在哪里点击可以拖动模型。如果存在触发区,它也会一并显示。将鼠标悬停在某个触发区上时会显示其名称。
  3. 重新加载按钮

    • 点击此按钮可重新加载所有 Live2D 模型。在出现故障时使用。

角色选择

这些设置允许你管理角色并为其分配 Live2D 模型。

  1. 刷新按钮

    • 点击刷新按钮可更新当前对话中的角色列表。
  2. 选择角色

    • 使用下拉列表选择一个要为其分配 Live2D 模型的角色。
  3. 移除按钮

    • 点击此按钮可删除某个角色的所有已分配模型。删除前会出现确认提示。

模型选择

UI 模型列表
UI 模型列表
  1. 刷新按钮

    • 如果你的 Live2D 模型未出现在列表中,请点击刷新按钮。
  2. 选择模型

    • 从列表中选择一个模型,将其分配给所选角色。
    • 模型可以位于素材文件夹或当前角色的文件夹中。
    • 列表会显示模型文件夹名称、其来源(素材或角色),以及检测到的模型设置文件名称。
    • 注意,某些模型文件夹可能包含同一模型的不同版本。你可以尝试不同的模型文件,看哪个效果最好。
    • 若不选择任何模型,则在使用普通立绘时(如果有的话)回退到普通立绘。
    • 设置按角色和模型分别保存。

模型设置

UI 模型设置
UI 模型设置
  1. 模型缩放

    • 使用滑块调整模型的大小,使其放大或缩小。
  2. 模型中心 X 偏移

    • 使用滑块调整模型相对于窗口中心的水平位置。
  3. 模型中心 Y 偏移

    • 使用滑块调整模型相对于窗口中心的垂直位置。

备注

  • 这些设置会被保存,并在不同对话间保留。
  • 你也可以用鼠标拖动模型,相关设置会随之更新并保存。
  • 如果你把模型弄到了可视范围之外,可以使用这些 UI 设置将其拖回屏幕。此外,勾选“显示边框”复选框可以清楚地看到在哪里点击拖动模型。

模型说话

UI 模型说话
UI 模型说话
  1. 嘴巴张开 Y 参数 ID

    • 从列表中选择与模型嘴巴 Y 值对应的参数 ID。并非所有模型都有该参数,且名称因模型而异。通常是类似 "PARAM_MOUTH_OPEN_Y" 或 "ParamMouthOpenY" 的形式。从列表中选择元素时请留意模型的状态,它会尝试运行说话动画。如果嘴巴动了,就说明选对了!
  2. 嘴部动作速度

    • 调整滑块可改变嘴巴动画的动作速度。
  3. 每字符时长

    • 设置每个字符的持续时长。说话动画的总时长为该时长乘以消息的字符数。

备注

  • 这种嘴巴动画并非对每个模型和每种动画都有效。即使你的模型包含嘴巴活动的动画,也并不意味着该嘴巴动画能被此扩展控制。如果参数列表中没有任何内容,你的模型很可能是用过于老旧的 Live2D 版本制作的,无法正确访问其参数。

模型动画

UI 模型动画
UI 模型动画
  1. 开场动画

    • 从列表中选择在与该角色开始对话时播放的表情和动作。你还可以设置一段延迟,在此期间模型将不可见,以便在需要时将角色隐藏一段时间以达到完美的效果。
  2. 默认动画

    • 从列表中选择角色发送消息时播放的表情和动作。在使用表情分类扩展时,请设置一个回退动画。

备注

  • 在列表中选择动画后即会播放。
  • 使用重播按钮可重新播放所选动画。
  • 某些模型将表情定义为动作。
  • 如果列表中没有任何内容,可能是模型的设置文件未定义任何表情/动作。

触发区映射

UI 模型映射
UI 模型映射
  1. 默认点击动画

    • 从列表中选择点击模型时播放的表情和动作。你还可以设置一条将作为用户消息发送的内容。
  2. 触发区

    • 如果模型具有触发区,它们会被列出,你可以为每个触发区分别分配动画/消息。

备注

  • 某些模型没有触发区,但所有模型都会检测默认点击。
  • 当你点击一个未映射任何内容的触发区,或点击任何触发区之外的位置时,都会触发默认点击。
  • 触发区的优先级在模型中定义;例如,“嘴巴”位于“头部”内部。如果行为不正常,可能是模型文件的问题。
  • 对于某些模型,必须等当前动画结束后才能开始下一个动画。如果你想强制刷新并连续播放动画,请使用调试复选框。

分类表情映射

UI 模型分类
UI 模型分类
  1. 要求

    • 需要使用表情分类扩展;否则将回退到默认动画。
  2. 映射

    • 对于表情分类扩展检测到的每一种情绪,你都可以分配一个表情/动作动画。

备注

  • 如果在收到新消息时上一个动画尚未结束,新动画可能不会播放。此行为取决于 Live2D 模型本身。如果你想强制播放动画,请使用调试复选框。

感谢你阅读本指南!你的 SillyTavern 体验现已增添了动画化且可互动的 Live2D 模型。