Skip to main content
Skip table of contents

SG Com 5.1 有哪些新功能?

呼吸动画

SG Com 现在可以为呼吸生成动画。只需定义角色的胸部呼吸肌肉,即可使用本功能。

连续呼吸动作是由生物模型生成,而生物模型则受到音频分析的限制。呼吸动作会与吸气、呼气声以及角色讲话中的停顿精确同步。同时,声音的表现会影响呼吸的强度和速度。

如有需要,可以通过两个全新的情绪修改器来调整默认的呼吸情绪:使用 SG_COM_MOD_BREATH_MAG 调整呼吸幅度,使用 SG_COM_MOD_BREATH_SPEED 调整呼吸速度/频率。

改进了非嘴部动作

实时控制非嘴部情绪的动态肌肉模型已改进。肌肉的响应时间缩短,从而增强了情绪的互动性。动作更加自然,卡顿更少。

笑声自动模式和笑声动画

我们的宗旨是针对人类可以发出的所有声音自动生成动画,为此,SG Com 5.1 添加了一个新的自动模式笑声。每当在音频中检测到笑声时,就会触发此功能。这个新的自动模式会将情绪映射到多种笑声似的表情。例如:

CODE
SG_COM_SetAutoMode(engine_handle,SG_COM_LAUGH_MODE,”my_laughter_mode”);

InsertExpression 函数

通常情况下,SG Com 会根据音频自动确定表情出现的时间、表情的类型和幅度。然而,有时用户可能需要更精确地控制所出现的表情。现在,通过 SG_COM_InsertExpression 函数,即可实现此功能。调用此函数时,将触发一个新表情。您还可以指定以下条件:

  • 具体需要触发哪个表情

  • 表情的具体持续时间

  • 表情的具体比例

例如,以下命令会触发即时表情切换,无需指定表情类型、持续时间和比例:

CODE
SG_COM_InsertExpression(engine_handle, nullptr, 0, 0);

此命令会触发表情 “/Happy/3”;而表情的持续时间和比例将由程序自动确定。

CODE
SG_COM_InsertExpression(engine_handle, "/Happy/3", 0, 0);

以下命令会触发表情 “/Happy/3”,表情比例为 0.5,表情的持续时间为 2,000 毫秒。

CODE
SG_COM_InsertExpression(engine_handle, "/Happy/3", 2000, 0.5);

状态更新类型

SG_COM_Status 枚举中新增了两种状态类型,可在 SG_COM_EngineStatusCallback 函数中使用:

  • 当呼吸状态从吸气切换到呼气或从呼气切换到吸气时,会触发 SG_COM_STATUS_BREATH_CHANGED。此时,message 字符串的参数为 “inhale” 或 “exhale”。

  • 当检测到新的自动模式时,会触发 SG_COM_STATUS_AUTO_MODE_CHANGEDmessage 参数为自动模式的名称(例如“积极”、“消极”、“笑声”等)。无论自动模式是否主动映射到特定情绪模式,都会触发此更新。

此外,对于 SG_COM_STATUS_EXPRESSION_CHANGEDmessage 参数不仅包含表情在角色情绪模式库中的路径,还包含表情比例。路径与比例通过分号分隔。例如,如果表情为 “/Happy/3”,比例为 0.5,则信息字符串为:

CODE
/Happy/3;0.5

API 更改

SG_COM_Modifier 枚举中,幅度和速度修改器的类型已进一步细分。

SG Com 5.0

SG Com 5.1

描述

SG_COM_MOD_SCALE

SG_COM_MOD_SPEECH_MAG

调整语音动作的幅度

SG_COM_MOD_NONVERBAL_MAG

调整非嘴部动作的幅度

SG_COM_MOD_BREATH_MAG

调整呼吸动作的幅度

SG_COM_MOD_SPEED

SG_COM_MOD_NONVERBAL_SPEED

调整非嘴部动作的速度

SG_COM_MOD_BREATH_SPEED

调整呼吸动作的速度

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.