Skip to content

配置结构

Live2D 使用 RitsuLib 全局数据存储,键为 settings,文件名为 settings.jsonSchemaVersion6。 通常应通过游戏内设置修改,不建议在运行时手工编辑。

解析规则

text
程序默认值 → Global → 单模型 Overrides 的非 null 字段

null 表示继承。Filter 与 Mask 按完整对象覆盖,不逐个子字段混合。

顶层结构

json
{
  "SchemaVersion": 6,
  "Global": {
    "Hotkeys": {},
    "MainMenu": {},
    "InGame": {},
    "Playback": {},
    "Rendering": {}
  },
  "Models": [],
  "RemovedExternalModelIds": []
}

Global

Hotkeys

ToggleVisibility 保存全部 Live2D 模型的显示总开关键绑定。

字段类型说明
Visiblebool是否显示
Anchorenum九点锚点
OffsetX / OffsetYfloat1920×1080 参考画布偏移
Scalefloat等比缩放
RotationDegreesfloat顺时针角度
Opacityfloat限制到 0..1
LayerintGodot ZIndex
MouseInteractionbool是否接收鼠标输入

锚点枚举包括四角、四边中心和正中心。地图与战斗都使用 InGame

Playback

字段默认值
Speed1;负值按 0 处理
EnablePhysicstrue
EnablePosetrue
AutoPlayIdletrue
ActionCooldownSeconds0.1

Rendering

字段说明
MaskViewportSizeCubism Drawable 蒙版纹理尺寸;0 自动(1024),正值最高 2048
BlendModeNormalAddSubtractMultiplyPremultipliedAlpha
Filter整模型合成后的颜色滤镜
Mask模型局部坐标画布裁切

Filter 范围与公共 API 相同。Mask 的用户可配置字段为 TypeX/YWidth/HeightCornerRadius。 椭圆与圆角边缘由着色器连续计算,不存在需要手动调节的渲染分段。非法持久值会被限制到有效范围或恢复安全默认值。

Models

每个模型包含:

字段说明
Id管理模型稳定 ID
Enabled持久单模型总开关;默认为 true
DisplayName界面显示名称
ModelRelativePath受管理目录中的 model3 相对路径
SourcePath原始导入路径记录
ContentHash内容身份与重复检测
ImportedAt / DisplayOrder导入时间与排序
Overrides场景、播放和渲染覆盖
AvailableActionsMotion/Expression 元数据
ActionBindings快捷键绑定

AvailableActions.Kind0(Motion)或 1(Expression)。动作绑定还包含场景范围、循环标志与 RitsuLib KeyBinding。

RemovedExternalModelIds 记录用户从模型库删除的提供方模型身份,防止相同 Pack 再次注册时立即将其加入。游戏内的恢复按钮会清空对应排除记录。

运行时覆盖

ILive2DModelHandle.ApplyQueueUpdateSet* 只修改当前会话,不写入 settings.json。句柄会在节点重建时 恢复这些覆盖;Parameter 与 Part 是更短生命周期的动态值,不属于配置,也不会恢复。

Last updated: