FAQ

[마지막 갱신일: 2021/11/25]

 

Q. Cubism SDK for Unity를 Unity로 가져왔지만 모델을 넣을 때 등에 DllNotFoundException이 나옵니다.
Q. 장면에 여러 모델을 배치하면 드로우 콜이 증가합니다. 어떻게 해야 하나요?
Q. Unity에서 내보내는 것은 어떤 플랫폼을 지원합니까?
Q. 벤치마크가 있습니까?
Q. 저는 Cubism 2.x 사용자입니다. 2.x 프로젝트를 3.x로 업그레이드하는 것이 좋습니까?
Q. 3.0 SDK가 지원하는 Unity 버전은 얼마입니까?
Q. 프로젝트를 Unity5.x에서 Unity2017.x로 업데이트하는 데 문제가 있습니까?
Q. 스키닝의 물리 연산이 SDK상에서 생각한 것처럼 흔들리지 않는다
Q. R8 이전의 SDK를 이용한 Unity 프로젝트를 Android의 64bit에 대응시키고 싶다
Q. Unity에서 런타임으로 생성된 AnimationClip을 Cubism SDK for Unity에서 사용할 수 있습니까?
Q. Cubism SDK는 IE11에서 작동합니까?
Q. Unity의 SDK를 덮어 쓰면 CubismCore 복사가 실패합니다.

 

Q. Cubism SDK for Unity를 Unity로 가져왔지만 모델을 넣을 때 등에 DllNotFoundException이 나옵니다.

A. Unity를 다시 시작합니다.

Cubism SDK for Unity를 처음 가져오거나 업데이트했을 때와 같이 Unity를 다시 시작하지 않고 모델을 업데이트하는 경우,
DllNotFoundException:Live2DCubismCore 등의 에러가 출력됩니다.

이것은 Unity가 Cubism SDK for Unity와 함께 제공되는 네이티브 라이브러리를 로드하지 않았기 때문에 발생하는 오류입니다.
Unity는 네이티브 라이브러리를 시작할 때 읽을 수 있으므로이 오류가 발생하면 Unity를 다시 시작하여 동일한 오류가 발생하지 않는지 확인하십시오.
자세한 것은 이쪽 

 

Q. 장면에 여러 모델을 배치하면 드로우 콜이 증가합니다. 어떻게 해야 하나요?

A. 정렬 레이어와 정렬 순서를 사용하여 모델 순서를 구성합니다.

SDK와 함께 제공되는  CubismRenderController 구성 요소로 정렬 값을 쉽게 설정할 수 있습니다.

Unity의 SetPass 콜은 장면에 그리는 메쉬의 텍스쳐나 셰이더 등이 변화하면 증가합니다.
모델 제작 단계에서도 SetPass가 적게 되도록 궁리하는 것이 가능하지만, 각 모델간에서도 마찬가지로 SetPass의 증가가 발생합니다.
그 때문에, 모든 모델로 텍스쳐나 셰이더등의 전환도 정리할 수 있으면, SetPass 콜의 삭감을 전망할 수 있습니다.
여러 모델 간의 전환을 정리하려면 정렬 레이어와 정렬 순서를 사용합니다.

텍스쳐나 셰이더 등의 전환을 줄이는 상세 및 모델 제작시의 주의점에 대해서는 Editor 매뉴얼의 「SDK로 모델을 취급할 때의 퍼포먼스에 대하여」를 참조해 주십시오.

 

Q. Unity에서 내보내는 것은 어떤 플랫폼을 지원합니까?

A. 현재 Cubism SDK for Unity가 지원하는 플랫폼은 다음과 같습니다.

  Windows macOS 리눅스 Android iOS 소비자
PlayStation®4 Nintendo Switch™
대응 상황

자세한 내용은 「플랫폼 지원 상태」를 참조하십시오.

 

Q. 벤치마크가 있습니까?

A. Cubism SDK for Unity에는 벤치마크용 샘플 장면이 포함되어 있어 각 플랫폼에서 성능을 쉽게 확인할 수 있습니다.

Native, Web에는 없습니다.

 

Q. 저는 Cubism 2.x 사용자입니다. 2.x 프로젝트를 3.x로 업그레이드하는 것이 좋습니까?

A. 프로젝트의 규모와 개발 운영 기간에 따라 다릅니다.
3.0부터는 SDK의 상당한 개선으로 인해 이전 버전과 호환되지 않습니다.
Cubism 2.x의 내장 모델 데이터는 3.0 SDK와 호환되지 않으며 Cubism 2.x SDK의 API는 3.0 SDK와 전방 호환되지 않습니다.
3.0 SDK를 사용하려면 모델 데이터를 3.0 Editor로 다시 내보내거나 Unity 프로젝트의 코드, 자산 등을 업그레이드해야 합니다.
따라서 프로젝트 업그레이드는 에디터와 SDK 모두가 제공하는 이점과 업그레이드 비용을 확인한 후에 결정해야 합니다.

 

Q. Cubism SDK for Unity가 지원하는 Unity 버전은 얼마입니까?

A. 정식에 대응하고 있는 Unity의 버젼은, 그 SDK가 릴리스 되었을 때의 최신의 것에 대응하는 방침이므로, 정식 대응하고 있는 버젼은 3.3 현재는 Unity 2018.3이 되고 있습니다.
그 이전 버전에서의 동작은 서포트 대상 외입니다만, 조립식이나 머티리얼 등을 재작성하면 동작하는 일이 있습니다.

SDK 패키지의 csc.rsp, mcs.rsp는 gmcs.rsp, smcs.rsp라는 파일 이름으로 바꾸면 Unity5.5에서도 사용할 수 있습니다.
자세한 내용은 여기를 참조하십시오.

 

Q. 프로젝트를 Unity5.x에서 Unity2017.x 이상으로 업데이트하는 데 문제가 있습니까?

A. Unity5.x에서 Unity2017.x 이상으로 프로젝트를 업데이트하면 Assets에 저장되지 않은 모델 Prefab의 구성 요소가 사라집니다.
5.x에서 2017.x 이상으로 프로젝트를 업데이트하는 경우 Hierarchy의 모델을 Apply 버튼으로 업데이트 한 후 프로젝트를 올리십시오.

 

Q. 스키닝의 물리 연산이 SDK상에서 생각한 것처럼 흔들리지 않는다

A. 물리 연산의 계산은 입력되는 차분 시간(FPS)에 영향을 받습니다.

물리 연산은 파라미터나 내부 진자의 상태와 입력에 의해 계산 결과가 바뀝니다.
다단 진자 모델을 사용하는 스키닝의 물리적 연산은 특히 약간의 입력으로 계산 결과가 크게 다릅니다.
같은 동작을 원한다면 물리 연산 베이크를 한 .motion3.json 파일을 사용하십시오.

Cubism Editor의 물리 연산·씬 블렌드 설정에서의 외형과 SDK에서의 외형이 다른 경우, 동작의 FPS가 다르기 때문에 원인이 될 수 있습니다.
현재의 Cubism Editor는 실제 동작 FPS로 계산되고, 모델의 규모나 동작하는 PC의 성능에 계산 FPS는 좌우됩니다.
물리 연산의 동작을 세밀하게 채우는 경우, 실기상에서 확인하면서 채워 가는 것을 추천합니다.
Cubism Editor의 물리 연산이 SDK상 등과 동작을 맞추기 어려운 문제는 향후 업데이트로 수정을 예정하고 있습니다.

 

Q. R8 이전의 SDK를 이용한 Unity 프로젝트를 Android의 64bit에 대응시키고 싶다

A. 최신판의 SDK로부터 64bit 대응판의 라이브러리를 취득해 사용해 주세요.

Cubism 3 SDK for Unity R8 이전의 SDK는 Android 64bit를 지원하지 않습니다.
R8 이전의 SDK로 만든 프로젝트를 64비트를 지원하려면 R9 이상의 Cubism SDK for Unity에서 64비트 지원 버전의 Android 라이브러리를 가져와 프로젝트에 추가합니다.
Cubism SDK for Unity의 64bit 지원 버전 Android용 라이브러리 파일은 다음 계층에 있습니다.

/Assets/Live2D/Cubism/Plugins/Android/arm64-v8a/libLive2DCubismCore.so

또한, Cubism SDK for Native에 동봉된 Android용 라이브러리 파일은 Cubism SDK for Unity에 동봉된 것과 동등하기 때문에 Native의 64bit 대응판 Android용 라이브러리를 사용하는 것도 64bit에 대응 가능합니다.
Cubism SDK for Native의 64bit 지원 버전 Android용 라이브러리 파일은 다음 계층에 있습니다.

/Core/lib/android/arm64-v8a/libLive2DCubismCore.a
/Core/dll/android/arm64-v8a/libLive2DCubismCore.so

프로젝트의 라이브러리를 추가한 경우 해당 라이브러리를 선택 상태로 하여 Inspector에서 Platform과 CPU가 올바르게 설정되어 있는지 확인합니다.

 

 

Q. Unity에서 런타임으로 생성된 AnimationClip을 Cubism SDK for Unity에서 사용할 수 있습니까?

A. Cubism SDK for Unity를 그대로 사용하는 것만으로는 작동하지 않습니다.

런타임에서 생성된 AnimationClip은 AnimatorController 또는 Playable API에서 재생할 수 없습니다.
따라서 이러한 기능을 이용하는 Cubism SDK for Unity도 지원하지 않습니다.

만약 런타임으로 생성한 AnimationClip을 사용한다면, Unity의 Animation 컴포넌트를 사용하여 재생시킬 수 있습니다.
다만, Cubism SDK for Unity의 기능 「MotionFade」는 Animation 컴포넌트에 의한 모션의 재생에 대응하고 있지 않습니다.
이곳은 MotionFade를 사용하지 않거나 사용자 측에서 SDK의 소스를 커스터마이즈하는 것으로 대응 가능합니다.

Cubism SDK for Unity의 MotionFade는 모션 재생에 맞게 페이드 처리를 수행해야 하며 모션 재생 상태를 모니터링합니다.
Cubism SDK for Unity에서는 CubismFadeStateObserver, CubismMotionLayer 로 재생 상태를 감시하고 있습니다.
Animation 컴퍼넌트의 재생 상태를 감시하는 컴퍼넌트를 유저측에서 구현하는 것으로 대응시킬 수가 있습니다.
모션의 재생 상태를 모니터링하는 컴포넌트는 ICubismFadeState를 구현합니다.

 

Q. Cubism SDK는 IE11에서 작동합니까?

A. Cubism SDK for Web은 IE11에서 동작 확인을 하고 있으며 지원 대상입니다.

Cubism SDK for Unity 는 지원하는 브라우저가 Unity 에 의존합니다만, IE11 은 동작 비추천 혹은 동작 불가가 되는 경우가 있습니다.
자세한 내용은 Unity 공식 레퍼런스 를 참조하십시오.

 

Q. Unity의 SDK를 덮어 쓰면 CubismCore 복사가 실패합니다.

A. 빈 장면이나 Cubism SDK를 사용하지 않는 장면을 연 상태에서 Unity를 다시 시작합니다.

Cubism SDK for Unity의 Cubism Core는 장면에서 사용하면 Unity에서 참조를 가지므로 편집기에서 사용하는 Cubism Core를 대체할 수 없습니다.
Cubism Core 참조를 재설정하려면 Cubism Core를 사용하지 않는 장면(빈 장면 등)을 연 상태에서 Unity를 다시 시작합니다.

 

© 2010 - 2022 Live2D Inc.