2020年2月17日月曜日

カーブオブジェクトを作成するツールを作ってみた

カーブオブジェクトを作成するツールを作ろうと思っていたんですが、かなり時間が掛かってしまった感じ。
実行部分はかなり昔に出来上がっていたりはしたんですが、一番厄介なGUI作成に時間がかかりました。
このブログを書き始めた頃なので構想5年くらい?


結局、こんな感じにまとまりました。


比較的リグで良く使うような形状をピックアップしましたが、けっこうな数になりました。カテゴライズもなかなか難しかったかな。
大雑把に「平面」「立体」「スペシャル」みたいに分けてみました。
このGUIへ落ち着くのに何回か作り直した感じです。


まず、Plane(平面)で作成できるのは、こんなオブジェクト。


次にSterical(立体)ではこんな感じ。


最後にSpecial(スペシャル)

増やすとしたら、ここに追加していくんでしょうかね。
完成したと思ったら、さっそく足りない形状を思い出したりしましたし・・・。

これら形状を共通した操作感で作成できるようにするのが大変でした。
まだ、ヘルプみたいなドキュメントを作成しないといけないけど、ま、いいか。
ライセンス条項とかも曖昧なままだし・・・。


GitHubとかの方が勝手が良いけどSNS機能が面倒。
なので、いつものごとく googleサイトを使って配信です。

tryCurbeObject

自分で使っていても、GUIの使い勝手が悪い印象。
操作感というかイテレーションに難ありかも。
同じ比率でサイズを変えるような機能があると便利かなと思ってみたり。

通常モードでは感じないと思いますが、上級者モードだと良く感じるかと思います。


bended Arrow を例にとると、設定できるパラメータが倍増します。

この数の項目が上級モードでは、これだけ増えます。


ここでは、主に矢印に関する設定なのですが、こんな感じ


Length を大きくし過ぎると矢印が汚くなるのも修正しないといけない。

Primary Axisは、ep[0]番の方向。
Secondary Axis は高さに当たる方向。

これだけ設定できれば、欲しいコントローラは、大抵作れる感じだと思います。


あとは、作成ボタンをクリックすると、スクリプトエディタの履歴に、作成コマンドが出力されたりしています。


GUIは、カーブオブジェクト作成するための補助ツールなので、基本的には tryCurveObject.mel だけでも賄えます。


0 件のコメント:

コメントを投稿