アートメッシュに設定されたユーザデータを取得 (SDK for Cocos Creator)

最終更新: 2023年3月14日

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

概要

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

アートメッシュへのユーザデータの設定方法については こちら をご覧下さい。

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

具体的な記述例としては以下のような形になります。

import { _decorator, Component, Node } from 'cc';
import CubismUserDataTag from '../extensions/Live2DCubismSdkForCocosExtension/static/assets/Framework/UserData/CubismUserDataTag';
const { ccclass, property } = _decorator;

@ccclass('UserDataTest')
export class UserDataTest extends Component {
  protected start() {
    let userDatas = this.getComponentsInChildren(CubismUserDataTag);

    for (let i = 0; i < userDatas.length; ++i) {
      let data = userDatas[i];
      console.log("id:"+data.node.name + "\n"
      +"value:"+data.value);
    }
  }
}

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

モデルのインポートについては 「こちら」のチュートリアルを参照してください。

以上で設定は終了です。

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

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