問題タブ [inverse-kinematics]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - CCD で関節の回転を制限する方法
Unity で IK ソリューションを作成しようとしています。
意図したとおりに動作する単純な CCD アルゴリズムを作成しました: https://www.youtube.com/watch?v=tZvdZGUxbbc
しかし、関節角度に制約を追加しようとすると、動作が不正確で歪んでいます: https://www.youtube.com/watch?v=k1YY9KqqaYY
現在、ターゲットに到達せず、現在の試行が試行しきい値未満である間、チェーン内のすべてのジョイントを反復処理する for ループがあります。
各関節の補正回転が計算されたら、それを関節 [i] に適用します。次に、各ジョイントの回転をチェックし、最小から最大の範囲内に固定します。
回転を適用し、回転制限をチェックするコードは次のとおりです。
2 番目のビデオに示されているように、結果は非常に貧弱です。
誰かが解決策と、おそらくこれが機能しない理由の説明を提案できますか?
貼り付けたコードの更新、修正されたタイプミス。