cubismphysics.ts内の座標回転コードについて
お世話になります。
Cubism SDK for Webに含まれるcubismphysics.tsの以下のコード(赤枠内)、


どちらもX座標とY座標を指定の角度(ラジアン)分だけ回転させるコードだと思うのですが、
Y座標が「計算済みのX座標」を使って計算されているのは想定された実装なのでしょうか?
「そもそもこれは座標回転ではない」等、私の勘違いでしたら申し訳ありません。
回答よろしくお願いします。
Cubism SDK for Webに含まれるcubismphysics.tsの以下のコード(赤枠内)、


どちらもX座標とY座標を指定の角度(ラジアン)分だけ回転させるコードだと思うのですが、
Y座標が「計算済みのX座標」を使って計算されているのは想定された実装なのでしょうか?
「そもそもこれは座標回転ではない」等、私の勘違いでしたら申し訳ありません。
回答よろしくお願いします。
0
コメント
弊社製品をご利用いただき誠にありがとうございます。
Live2D スタッフのTakと申します。
cubismphysics の回転計算コードにつきまして、ご指摘いただきありがとうございます。
本件についての影響範囲を確認し対応いたしますので、しばらくお待ち下さい。
今後とも何卒よろしくお願いいたします。
よろしくお願いします。
弊社製品をご利用いただき誠にありがとうございます。
Live2D スタッフのTakと申します。
返信までに大幅な時間をいただき大変申し訳ありません。
ご指摘いただいたコードの実装間違いにつきまして、弊社にて調査と検討をおこないました。
調査の結果、ねこま様のおっしゃる通りこの計算は間違いとなり、本来この部分のY座標計算は「計算前のX座標」を使うべき計算であることがわかりました。
しかし影響範囲を考慮した修正検討をおこなったところ、次の問題が生じました。
1. 物理演算の挙動に変化が生じてしまい、Cubism Editor 及び Cubism Viewerとの一貫性がとれなくなる
2. 1.を回避するべくすべてのCubism 製品に対して修正をおこなってしまうと、過去バージョンからCubism 製品をアップデートした際に物理演算の挙動が変わり、モデルの表現精度に影響が出てしまうことでバージョン間での表現の互換性が取れなくなってしまう
これらの問題により想定より規模の大きい影響範囲と推測され、直近のバージョンでの修正は難しいものと判断されました。
よって、本実装は現段階で仕様となります。
しかし上記問題がクリアできるタイミングで修正をおこなうことを検討しております。
すぐに修正対応とならず大変心苦しい限りでございます。
しかしご指摘により間違いであることがわかり、修正に向けて引き続き検討しておりますので対応については今しばらくお待ちいただきますようよろしくお願いいたします。