新しいLive2D公式コミュニティ(日本向け)が公開されました!
ぜひご利用ください!
Live2D公式コミュニティ

■このコミュニティの今後について
このコミュニティ(forum.live2d.com)につきましては、しばらくの間新コミュニティと並行して運営しますが、2022年内を目処に閉鎖する予定です。
閉鎖時期や内容については決定次第お知らせいたします。
海外向けコミュニティについては変更ございません。
Live2Dに関するユーザーのみなさま同士の交流・ご質問・不具合の報告・提案・要望などについて是非お寄せください。
※Live2D公式スタッフからの発言や回答については確約できないことを予めご了承ください。

Live2D ヘルプ

Cubism Editorダウンロード / 動作環境
Cubism SDKダウンロード / 対応表
Cubism 製品利用ライセンス(SDK含)

Cubism 製品のライセンスについてのお問い合わせはこちら
nizima 及び nizima 製品についてのお問い合わせはこちら
【各最新OSの対応状況について】
Cubism Editorは 4.1.02 正式版以降でWindows 11 及び macOS Monterey に対応しております。ぜひ最新版をご利用ください。
※macOSをお使いの方でOSアップデートする際は必ずCubism Editorのライセンスを解除してください。
Cubism EditorをインストールしているmacOSをアップグレードしたい
Cubism SDKについては各SDKのREADMEまたはNOTICEをご確認ください。

【Mac各機種への対応状況について】
現在、Cubism EditorはApple M1チップ搭載機種には対応しておりません。
詳細は 動作環境 をご参照ください。
関連するお問い合わせへの対応はこの文章をもって代えさせていただきます。
Cubism 製品のマニュアル・チュートリアルはこちら
 
Cubism Editorマニュアル    Cubism Editorチュートリアル    Cubism SDKマニュアル    Cubism SDKチュートリアル

ArtMeshのワールド座標の取得方法

下記のページを参考にさせて頂き、ArtMeshのワールド座標を取得しようとしているのですが
どうしてもローカル座標しか取得できません。
注意点などありましたらご教授願えませんでしょうか。
よろしくお願いします。

参考ページ
https://forum.live2d.com/discussion/1745/artmeshのワールド座標

・SDKバージョン Cubism 4 SDK for Unity R1

コメント

  • @gohhon さん

    提示していただいたディスカッションの回答は間違いです。大変申し訳ございません。
    CubismRenderer.Meshの頂点座標はローカル座標です。
    頂点座標からワールド座標を取得するには、GameObjectのTransformをかけ合わせる必要があります。
        Vector3 worldPosition = transform.TransformPoint(vertexPosition);
    Cubismの場合、CubismDrawableはツリーの子になるGameObjectにアタッチされるため、各親のTransformの結果も考慮する必要があります。


    それぞれのTransformを計算する方法も考えられますが、以下のように一度親子階層を解除してから上記の計算を行うとよろしいかと思われます。
        Vector3 vertexPosition = _cubismRenderer.Mesh.vertices[0];
        
        // 親子関係を解除
        Transform parent = transform.parent;
        transform.parent = null;
        
        // ワールド座標取得
        Vector3 worldPosition = transform.TransformPoint(vertexPosition);
        
        // 親を再設定
        transform.parent = parent;
コメントするにはサインインまたは登録して下さい。