【대응 완료】 motion3.json의 재현성이 저하되는 경우에 대해

[마지막 갱신일: 2022/10/06]

Cubism SDK for Java는 현재 알파 버전입니다. beta판이나 정식판으로 사양이 바뀌는 경우도 있습니다.

개요

애니메이션의 타겟 버전을 「SDK (그 외)」로 설정한 상태에서 베지어 핸들이 크게 조작된 커브를 포함한 motion3.json 파일이 Cubism SDK for Native 및 Cubism SDK for Web에서 올바르게 파형이 재현되지 않는 경우가 있습니다.

본 결함의 대응은 이하의 SDK의 버전 이후로 실시하고 있습니다.

  • Cubism 4 SDK for Native R3 beta1
  • Cubism 4 SDK for Web R3 beta1

Cubism SDK for Unity에서는 타겟에 「SDK (Unity)」를 설정해 작성된 모션을 사용하는 것이 추천되므로, 본 대응의 대상 외가 됩니다.

Cubsim SDK for Java(alpha판)는 Cubism 4 SDK for Native R3 이후에 출시되었으므로, 본 대응은 불필요합니다.

영향을 주는 흐름

다음 조건이 모두 적용되는 제작 흐름에 영향을 미칩니다.

  • 사용 중인 Cubism SDK는 다음과 같습니다.
    • Cubism 4 SDK for Native R2를 포함한 이전 버전의 제품
    • Cubism 4 SDK for Web R2를 포함한 이전 버전의 제품
  • Cubism Editor의 모션 작성에서 설정 타겟을 「SDK (그 외)」로 모션 작성을 하고 있다.
  • 모션의 감수를 Cubism Viewer (for OW)로 실시해, SDK상에서의 확인을 실시하고 있지 않다.

위의 조건에 해당하는 흐름에서 모션의 정확성을 향상시키기 위해 두 가지 조치를 취하십시오.

  • 씬의 인스펙터상에서 설정 타겟을 「SDK (Unity)」로 변경한다.
  • 모션 감수 작업을 SDK상에서 실시하도록 한다.
  • 4.1alpha4 이후의 OWViewer에서 「4.0 이전의 SDK의 모션 재생을 재현」의 체크를 설정한 후 확인을 실시한다.

 

SDK의 버그 내용

결함 상세

애니메이션의 대상 버전을 「SDK (Unity)」로 지정하면 베지어 핸들의 시간축 위치가 커브 사이의 1/3, 2/3 위치로 제한됩니다.
이 제한 하에서, 베지어 곡선의 계수 t는 시간축의 움직임과 일치하여 직선의 변화로서 계산을 단순화할 수 있다.

 

본 버그에서는 애니메이션의 타겟 버전을 「SDK (그 외)」로 설정된 베지어 핸들의 제한이 없는 상태에서도 제한이 있는 것으로 계산해 버렸기 때문에, 모션으로 재현되는 파라미터의 완급에 약간의 차이 가 발생했습니다.

 

 

SDK 대응 내용

R3 beta 이후의 Cubism SDK for Native 및 Cubism SDK for Web에서는 정확한 완급이 있는 베지어 커브로 모션을 재생합니다.
이 변경에 대해 Cubism SDK for Native에서는 CubismMotion.cpp에 있는 UseOldBeziersCurveMotion을 Cubism SDK for Web에서는 cubismmotion.ts에 있는 UseOldBeziersCurveMotion을 true로 변경하여 R2 이전 재생 방법으로 되돌릴 수 있습니다.  

또, Cubism SDK for Java (alpha판)에서는 CubismMotion.java상에 있는 USE_OLD_BEZIERS_CURVE_MOTION 를 true로 하는 것으로 Native, Web의 R2 이전의 재생 방법을 재현할 수 있습니다.

© 2010 - 2022 Live2D Inc.