Expression (UE)

最終更新: 2024年9月5日

此页面包含有关Alpha版的描述。

概述

Expression是处理Cubism表情动态的功能,可以通过将表情参数的值与当前参数的值进行加算或正片叠底来设置。

表情功能设置文件以.exp3.json格式输出。
请参考此处了解表情的机制。

如何处理组件

通过将CubismExpressionComponent追加到CubismModel Actor的子组件,可以使用Cubism SDK for Unreal Engine中的Expression。

如果在.model3.json中设置了.exp3.json的路径,载入时CubismExpressionComponent会自动作为子组件追加到CubismModel Actor中,所以用户端无需设置。

表情动态的播放方法

载入模型时,.exp3.json会转变为Unreal Editor的.uasset,并追加到CubismExpressionComponent的Jsons数组中。
在Unreal Editor中,您可以通过将Jsons中注册的要播放的动态的索引指定为Index来应用表情动态。如果Index超出数组索引范围,则不应用。
动态的注册顺序可以在Editor上任意变更,尽管通常没有必要,但用户也可以任意追加或删除动态。

要控制动态的播放/停止,请使用CubismExpressionComponent中提供的以下函数。

UFUNCTION(BlueprintCallable, Category = "Live2D Cubism")
void PlayExpression(const int32 InIndex);

UFUNCTION(BlueprintCallable, Category = "Live2D Cubism")
void StopAllExpressions(const bool bForce = false);
  • PlayExpression
    • InIndex
      指定要播放的动态的Jsons索引。
  • StopAllExpressions
    • bForce
      如果指定true,则将强制停止而不应用淡变。
      如果指定false,则将通过应用淡变的方法进行停止。

关于更新顺序

CubismExpressionComponent负责更新表情动态,但更新是在更新CubismParameterStoreComponent之后应用的。
这是为了确保CubismExpressionComponent所做的更新影响下一帧。
更新CubismExpressionComponent后调用CubismParameterStoreComponent::LoadParameters()可能会导致意外动作。

请问这篇文章对您有帮助吗?
关于本报道,敬请提出您的意见及要求。