.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에 적용한 경우의 표시 예입니다.

이 기사가 도움이 되었나요?
아니요
이 기사에 관한 의견 및 요청사항을 보내 주시기 바랍니다.