ボーン処理順不具合の件
このような親子関係を持つボーンがあったとして
IKボーン→IK子ボーン→IK子ボーンを付与親に持つボーン
処理順がこうなっていた場合
IK子ボーン→IK子ボーンを付与親に持つボーン→IKボーン
PMX仕様ではIKボーンの変化量がIK子ボーンを付与親に持つボーンに伝わることがないので動きません。
PMDE上でも動きません。
しかし、MMD、MMMではなにかしらの回避がされているため動きます。
そのため仕様外のモデルが作られてしまいます。
1.なんとなく動くものを作れる
2.不備を認識できない
簡単に利用できることが重視されるので対応としては1.でよいのでしょう。
で、なにかしらの回避とはなんなのか
最初はボーン変形の処理順を再配置しているのではと思ったのですが
やってみると影響が未知数でボツ
なので、
モーションデータからローカル変形を生成する処理を2周させることにしました。
2周ループ
{
ボーン数分ループ
{
1.モーション
2。IK
}
}
こうなるので解決するわけです
IK子ボーン→IK子ボーンを付与親に持つボーン→IKボーン→IK子ボーン→IK子ボーンを付与親に持つボーン→IKボーン
負荷が増えるので最善ではないですが...
IK子ボーンを親・付与親にしているボーンの処理順が
IKボーンの処理順より早い場合のみ2周するようにすることで多少ましに...
積んでるタスク
1.3Dプログラミング基礎
高速化
物理演算
MMDと比べて重力の影響が大きいのはバージョンの違いなのか実装不具合なのか
ver2.8を入れてみる
並列化の検討 もっといい方法はないか
MMDXのエッジを見る
物理干渉マトリクス
2.ツイッターbot
MMDBotAgentのタイムラインからトレンド抽出
MMDBotSeigaの個人とお題を分けようかな
ごちゃごちゃして見難いし
俺得モデルフェス用のスタンドアロンクローラーマイリスとクリップ
3.3Dプログラミング応用
・ゲームっぽく移動できるもの
・表情をプリクラっぽく出力できるもの
・モデルの首挿げ替えするもの
0 件のコメント:
コメントを投稿