Live2D Cubism SDK教程
SDK for Native
SDK for Web
SDK for Java
SDK for Unity
SDK for Cocos Creator
Live2D GARAGE
群组SDK
Live2D GARAGE
口形同步设置
最終更新: 2020年1月30日
这里将说明如何使模型从AudioSource的音量进行口形同步(口型同步)。
以下说明以追加到已执行[
SDK载入~置入模型
]的项目为前提。
为了从AudioSource获取音量并进行设置,请另行准备一个可以由Unity处理的格式的音频。
口形同步设置使用Cubism SDK中名为MouthMovement的组件。
要在Cubism模型上设置MouthMovement,请执行以下三个处理:
1. 附加管理口形同步的组件
2. 指定口形同步的参数
3. 设置操作指定参数值的组件
附加管理口形同步的组件
将管理口形同步、名为CubismMouthController的组件附加到作为模型根的GameObject上。
CubismMouthController有两个设置项目。
– Blend Mode:针对当前为指定参数设置的值,指定如何计算Mouth Opening值。
Multiply:将Mouth Opening值正片叠底到当前设置的值。
Additive:将Mouth Opening值加算到当前设置的值。
Override:用Mouth Opening值覆盖当前设置的值。
– Mouth Opening:嘴巴开合的值。1视为张嘴、0视为闭嘴状态。当从外部操作该值时,指定参数的值也会联动。
此次将Blend Mode设置为[Override]。
指定口形同步的参数
在[模型]/Parameters/下,置入了管理该模型参数的GameObject。
另外,这个GameObject中设置的名称就是参数的ID。
附加到这些GameObject的CubismParameter与您可以使用CubismModel.Parameters()获得的项目相同。
从该GameObject中,将名为CubismMouthParameter的组件附加到ID被视为口形同步的组件。
通过以上设置,您将能够进行嘴巴开合的操作。
但是,仅依靠上述设置,即使执行也不会进行口形同步。
为了自动进行口形同步,还需要设置操作CubismMouthController的Mouth Opening值的组件。
设置操作指定参数值的组件
将口形同步输入用组件附加到作为模型根的GameObject。
MouthMovement包含作为输入范例,根据AudioSource的音量和Sin波操作嘴巴开合值的组件。
此次附加一个名为CubismAudioMouthInput的组件,以便您可以从AudioSource设置值。
CubismAudioMouthInput 有以下四个设置项目。
– Audio Input:设置用于输入的AudioSource。使用此处设置的AudioSource中附加的AudioClip的音量。
– Sampling Quality:设置要采样的音量的精度。以下设置的阶数越低,精度越高,但计算负载越大。
– High
– Very High
– Maximum
– Gain:设置以多少倍的值处理采样音量。1为等倍。
– Smoothing:设置从音量计算的开/关值平滑化多少。值越高,则越平滑,但也会增加计算负载。
此次设置如下。请在Audio Input中设置附加AudioSource的GameObject。
– Sampling Quality:High
– Gain:1
– Smoothing:5
最后,要获取音量,请将AudioSource附加到任意GameObject,并将其设置为上述CubismAudioMouthInput的Audio Input。
这样就完成了口形同步设置。
如果您在此状态下运行场景,将播放AudioSource中设置的音频,并且将根据其音量对模型进行口形同步。
关于本报道,敬请提出您的意见及要求。