結論としては
反響のイイPMDは作っていくけど
たぶん、あたしはMMDはやらない・・・
でもMMDの格闘が出たらキャラ製作はしてみたい!
ってな事で、格闘版で使われるというXNA版のMMDを調べてみたら
スキニングはクォータニオンスキニングですな
というか、いつかは作るであろう
自作ゲームではボーン数とメモリの観点から
等倍スケールを実装したデュアルクォータニオンで行く予定です
現在のライブラリではマトリクスから変換してますが
作るときはコンテントパイプラインでキーフレームを
クォータニオンに変換させてやってやろうと思ってます
ここで、XNA版MMD格闘用のモデルを作るにしても
自作ゲームでのモデルを作るにしても
デュアルクォータニオンは関節が膨らんだり
一定以上の角度補間で破綻したりするので
XSIで確認出来なくちゃ、予想外の結末を迎えるかもしれない・・・
ちゅーこって、前置きが長くなりましたが
XSIでデュアルクォータニオンを再現する方法を探してますよぉぅ~
調べてみると
ICEでデュアルクォータニオンを再現できるみたいですね~
ということで、初ICE
普通のICEスキニング
そしてクォータニオン!
なんか挙動が違う気がすしますが
関節が膨らんでいたりするので
多分OKなんでしょう!
ただね
Nullデフォーマーでは駄目なのかな?
・・・
・・・
・・・
こいつは致命的!
ゲームで使えないじゃない!
ということで
XNAでデュアルクォータニオン実装したから
XSIでも出来るだろうと思い
プラグインを作りはじめましたよ・・・
で、デュアルクォータニオン系の関数やら
XSIの行列を変換する関数を実装して気付いちゃったんだよね・・・
スキン行列を変換するから
デフォーマーの行列を変換しても意味ないじゃない!
ってな事に・・・
XSI内で頂点に影響してる行列を習得できるか調べないと・・・
おそらく無理なのかな・・・悲しい!
6.0くらいにはデュアルクォータニオンのプラグインあるみたいなんですけどね・・・
デュアルクォータニオンは出来ないかも知れないけど
デフォーマーの動かし方は解ったので
ビューポート上でリアルタイムの物理は出来るな多分
コメント