Web SDK モデル移動後の当たり判定の位置について

【Cubism SDKのバージョン】Cubism SDK for Web R5 beta4
【スマートフォンの場合などは端末名】macbook pro
【OS名・バージョン】macOS Monterey 12.4
【開発使用ツール】Visual Studio 2019
【不具合の状況】
translateRelativeを使いモデルの位置を変更しても、当たり判定の位置が変わらない。
サンプルモデルやR4のサンプルコードで試してみても同じ動作でした。

宜しくお願い致します。

@momomo

お問い合わせいただきありがとうございます。
Live2Dスタッフです。

モデルの当たり判定処理はモデルが持つMatrixの位置情報を用いて判定しますが、
translateRelativeをモデルの持つMatrixではなく、画面描画用Matrixに対して使っている可能性があります。

画面描画用Matrixはサンプルコードでは
lapplive2dmanager.ts ➝ onUpdate() 内で処理されています。

モデル用Matrixは
lappmodel.ts ➝ setupLayout() 内の setupFromLayout() で取得した this._modelMatrix になります。

_modelMatrix は CubismModelMatrix クラスです。
これに対して translateRelative を使うことで、正常な当たり判定を持つ位置変更が可能になります。

参考 :
・モデルの当たり判定 :
https://docs.live2d.com/cubism-sdk-manual/hitarea/

・CubismModelMatrix :
https://docs.live2d.com/cubism-sdk-manual/layout

ご確認のほど、よろしくお願いいたします。

ご指摘の通り、画面描画のmatrixにtranslateをしていたため、モデルのmatrixに変更したところ、モデルの移動に合わせて当たり判定も移動しました。
迅速にご返答いただき大変助かりました。ありがとうございます。

「いいね!」 1