人気ブログランキング | 話題のタグを見る

管理人syogeki            主にCG日記。


by g-sp
カレンダー
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

追加装甲1 完成

とりあえずここは完成。
イドモード時に足の追加装甲になるパーツです。
おそらくコイツの中で一番大変な部分だと思います。
昨日の画像とほとんど変わってないように見えますが、昨日のはハリボテです。
全体の形を作ってからナイフで刻んで変形を仕込んだだけで、厚みが無いです。
今回は全パーツに厚みを付けてエッジの面取り処理。
可動部分に関節っぽいものを追加。
全部合わさった時につなぎ目が筋彫りのように見えるよう、ベベル半径は小さめです。
追加装甲1 完成_f0106593_16561456.jpg
追加装甲1 完成_f0106593_16563081.jpg




変形はいつものごとくエクスプレッションで一括制御してるのですが、今のやり方だと色々と問題点が。
1 ローカル座標で管理してる為、親を変えると位置がおかしくなる。
2 ↑と同じ理由で、回転方向対称コピースクリプトを使うとおかしくなる。
3 最初と最後の2種類の状態しか繋げれない。
4 状態の定義が静的。
5 状態定義を修正する方法が面倒。

他にもある気がしますが、パット思いつくだけでこれだけ。
特に1にはよく悩まされ、最近になって2にも悩まされ、今回のヴェルトールについては3と4が致命的。

1は親の変更処理をするスクリプトを作ったんですが、親の親とかに同じくエクスプレッションがかかってるとその状態をも追いかけたりしないといけなくなり、変更が非常に難しい。
2についても変更処理のスクリプトを作ればいいんですが、1より複雑な気がしてやる気が出ない。
この二つはローカル座標で定義しているから起きる問題なので、グローバル座標に直せば解決します。
が、グローバル座標で状態を定義するとアニメーション不能。
3はまぁ今のやり方だと駄目なだけで、条件処理(<とかの記号)を使えば出来そうですね。
今使ってるスクリプトだと出来ないので改良すればこれは比較的楽にクリア可能。
4はカスタムパラメータから状態を読み込んでる関係で、どうあがいても今のままじゃ解決不能。
5も同じく・・。

前振りが長くなりましたが、これら全てを解決できる方法を思いつきました。
カスタムパラメータから状態を読み込むのではなく、それぞれの状態用にヌルを別々に用意してグロバール座標をエクスプレッションでつなぐ方法です。
初期状態用のヌルと終了状態用のヌル、エクスプレッションで実際に動かすヌル、最低でも3つ必要になるのでヌルの数が3倍になりますが、親の変更や対称コピーへの対応、状態の動的定義もできるようになるはず。
式も改良して3種類以上の状態もつなげることができるようにすれば、全部クリアできます。
修正は状態定義用のヌルを直接動かすだけなのでラクラク。
思いついただけでまだ実行に移してませんが、やらざるを得ない状況なので、ヴェルトール制作を少しストップしてスクリプト作ります。

それにしても、今のヴェルトールの状態でもヌル102個あるわけで・・これ以上増えたらものすごく大変なことになりそうですね。
ジェネシックガオガイガーは確か300以上使ってあった気がしますが。
自分で動かす可動部分はチェインではなく全てヌルで、変形用の関節も全部ヌルで制御してますからね。
スクリプトでエクスプレッションまとめて設定できるようになってから、調子に乗って使いまくってしまい、いつの間にかすごい量になってます。
X線モードにすると酷いことになります。
これの3倍になるというんだから、想像もつきません。
さらに中継点をつければ4倍5倍と増えていくわけですが。
色分けをしてもさすがにきついので、なるべく小さめのサイズで使うようにして、関係するヌルの選択のスクリプトも作っておいたほうがいいかもしれない。

ともあれ今日はソフトボールでツカレテシマタ
by g-sp | 2007-06-05 16:59 | ヴェルトール