アートメッシュに設定されたユーザデータを取得

最終更新: 2017年11月21日

ここでは、モデルからアートメッシュに設定されている「UserData」の情報を取得するまでの説明を行います。

概要

[UserData]は、ユーザがアートメッシュに任意のメタデータを付与する機能です。
ユーザデータの扱い方によっては、そのアートメッシュを当たり判定に指定したり、特別なシェーディングを施すなど、様々なことに活用できます。

アートメッシュへのユーザデータの設定方法については 「ユーザデータとイベント」 をご覧ください。

アートメッシュに設定されたユーザデータの取得には、以下で説明する手順を行います。

Projectウィンドウの[Create]をクリックし、[C# Script]をクリックしてC#スクリプトを作成します。
ここでは名前はUserDataTestとします。

作成したUserDataTestの中身を以下のように書き換えます。

using Live2D.Cubism.Framework.UserData;
using UnityEngine;

public class UserDataTest : MonoBehaviour
{
	private void Start ()
	{
	    var userDatas = gameObject.GetComponentsInChildren<CubismUserDataTag>();

	    foreach (var userData in userDatas)
	    {
	        Debug.Log(
                "Drawable ID : " + userData.gameObject.name +"\n" +
                "Value : " + userData.Value 
                );
	    }
	}
}

その後、ユーザデータが設定されたモデルのPrefabをHierarchyに配置します。
配置したPrefabのルートに、上で作成したUserDataTestコンポーネントをアタッチします。

モデルのインポートについては 「SDKをインポート」 のチュートリアルをご覧ください。

以上で設定は終了です。

この状態でSceneを実行すると、Consoleウィンドウに、ユーザデータが設定されたアートメッシュのIDと、ユーザデータに設定された文字列が出力されます。

この記事はお役に立ちましたか?
はいいいえ
この記事に関するご意見・
ご要望をお聞かせください。