.cdi3.json 사용
업데이트: 2021/10/28
개요
여기에서는 .cdi3.json을 사용하여 파라미터, 파라미터 그룹 및 파츠의 표시 이름을 커스터마이징하는 방법을 설명합니다.
사용하는 모델 데이터는 .cdi3.json이 내보내져 있는 것을 전제로 합니다.
.cdi3.json 및 SDK for Native 및 SDK for Web 구현에 대해서는 「표시 보조 파일 정보」를 참조하십시오.
사전 준비를 위해 「SDK 가져오기~모델 배치」를 참조하여 .cdi3.json이 내보내진 모델 데이터를 가져오고 프리팹 배치를 한 후 프리팹의 루트 오브젝트를 선택하십시오.
인스펙터에서 사용
.cdi3.json을 포함한 모델 데이터를 가져온 경우 .cdi3.json에 기술된 파라미터와 파츠의 이름을 모델의 프리팹 인스펙터에 표시할 수 있습니다.
또한 사용자가 원하는 이름을 지정할 수 있습니다.
이름을 설정하려면 [Cubism Display Info Parameter Name] 또는 [Cubism Display Info Part Name]의 Display Name을 입력합니다.
Display Name이 비어 있으면 .cdi3.json에 기술된 이름이 사용됩니다.
Display Name이 미설정 상태:
Display Name을 설정한 상태:
Display Name 설정 시의 파라미터 표기:
애플리케이션에서 사용
아래의 코드는 실제로 응용 프로그램에서 사용할 때의 예입니다.
내용을 아래와 같이 재기록한 C# 스크립트를 작성해, 모델의 프리팹에 어태치하는 형태로 이용할 수 있습니다.
using Live2D.Cubism.Core; using UnityEngine; using UnityEngine.UI; using Live2D.Cubism.Framework; public class ViewAllParameter : MonoBehaviour { public Text text; private CubismParameter[] parameters; private string[] parametersName; // Start is called before the first frame update void Start() { CubismModel model = gameObject.GetComponent<CubismModel>(); parameters = model.Parameters; parametersName = new string[parameters.Length]; text.text = string.Empty; for (int i = 0; i < model.Parameters.Length; i++) { var displayInfoParameterName = parameters[i].GetComponent<CubismDisplayInfoParameterName>(); parametersName[i] = displayInfoParameterName != null ? (string.IsNullOrEmpty(displayInfoParameterName.DisplayName) ? displayInfoParameterName.Name : displayInfoParameterName.DisplayName) : string.Empty; text.text += parametersName[i] + '\n'; } } }
다음은 Scroll View에 적용한 경우의 표시 예입니다.