LipSync (UE)

업데이트: 2024/09/05

이 페이지에는 알파 버전에 관한 설명이 포함되어 있습니다.

개요

LipSync는 설정된 음원 파일의 음량에 따라 입 개폐 파라미터의 값에 대해 값을 적용하는 기능입니다. 수동 외에, 컴포넌트에 설정된 파라미터를 기초로 자동으로 값을 조작하는 것도 가능합니다.

컴포넌트 취급법

Cubism SDK for Unreal Engine의 LipSync는 CubismLipSyncComponent를 CubismModel 액터의 하위 컴포넌트에 추가하여 사용할 수 있습니다.

.model3.json에 립싱크용 파라미터가 설정되어 있는 경우 가져오기 시에 자동으로 CubismModel 액터에 CubismLipSyncComponent가 하위 컴포넌트로 추가되기 때문에 사용자 측에서의 설정은 불필요합니다.

대상 파라미터 추가 방법

.model3.json에 립싱크용 파라미터가 설정되어 있는 경우 가져오기 시에 자동으로 CubismModel 액터에 CubismLipSyncComponent가 하위 컴포넌트로서 추가되지만, 수동으로 LipSync의 대상이 되는 파라미터를 추가하고 싶은 경우는 「상세」 탭에서 CubismLipSync를 선택하고 하단에 표시되는 목록에서 「Live2D Cubism」→「Ids」를 열고 지정된 파라미터의 이름을 수동으로 다시 작성하거나 새 인덱스를 삽입하여 파라미터 이름을 수동으로 추가하십시오.

파라미터 적용

CubismLipSyncComponent는 BlendMode로 지정된 블렌드 방식에 근거해, Ids에 설정된 ID에 해당하는 모든 파라미터에 대해 일률적으로 Value의 값을 적용합니다.

for (const FString& Id : Ids)
{
	UCubismParameterComponent* Destination = Model->GetParameter(Id);

	if (!Destination)
	{
		continue;
	}

	switch (BlendMode)
	{
		case ECubismParameterBlendMode::Overwrite:
		{
			Destination->SetParameterValue(Value);
			break;
		}
		case ECubismParameterBlendMode::Additive:
		{
			Destination->AddParameterValue(Value);
			break;
		}
		case ECubismParameterBlendMode::Multiplicative:
		{
			Destination->MultiplyParameterValue(Value);
			break;
		}
	}
}

자동으로 값 조작

AutoEnabled가 true로 설정된 경우 자동으로 립싱크처럼 작동하는 값이 적용됩니다. 이 동작은 CubismLipSyncComponent에 준비된 파라미터로 제어할 수 있습니다.

  • TimeScale
    동작의 시간 스케일을 나타냅니다. 값을 늘리면 동작이 빨라지고 작으면 동작이 느려집니다.

음원 설정

AutoEnabled가 false로 설정되어 있는 경우 Source에 음원 데이터의 참조를 추가하면 지정한 파라미터에 대해 음원에서 흘러나오는 음량에 근거한 값을 적용할 수 있습니다. 이 동작은 CubismLipSyncComponent에 준비된 파라미터로 제어할 수 있습니다.

  • Gain
    음원에서 얻은 음량의 게인, 즉 증폭률을 지정합니다. 크게 하면 적용되는 값이 커집니다.
  • Smoothing
    음원에서 얻은 음량에 따라 입 움직임의 매끄러움을 지정합니다.
    값을 늘릴수록 입 움직임이 음량 변화에 더 매끄럽게 응답하게 됩니다.
이 기사가 도움이 되었나요?
아니요
이 기사에 관한 의견 및 요청사항을 보내 주시기 바랍니다.