modoのスクリプトをKit化する
modoのKitとは
modoにはKitと呼ばれる仕組みがあります。機能を拡張するためのパッケージング方法です。Kitを使う利点はたくさんありますが、主なものを挙げると以下のようになります。- 他への依存が少ない
- KitをOn/Offする仕組みがある
- 配布が容易
modoの機能を拡張するためにスクリプトやフォームの編集があることは以前にも書きましたが、これらは色々な場所にスクリプトやコンフィグファイルが散らばってしまいます。もしかしたら同じファイル名のスクリプトがあるかもしれません。このような状態で利用者が間違いなくセットアップするのは大分難しいことです。また、Kitはメッシュなどのアセットも一緒に配ることができます。
このような点から、拡張機能を配布するのにはうってつけなのです。
今回のアプリケーションにもKitは大きな存在です。インストールするときに所定のフォルダに保存するだけなので、仕組みもとてもシンプルになります。アプリケーションを開発し始めたころはKitの存在を知らなかったので、どのようにインストールしたらいいのか悩んでいたのです。
しかしながら、世の中に配布されている拡張機能はKit化されていないものも多いのです。そこで、ある公開されているスクリプトをKit化させていただきました。
窓を配置するスクリプト
以前、modo UserGroup Tokyoの勉強会に参加させていただきました。その勉強会の中で、柳村さんが窓のメッシュを効率的に配置するスクリプトを利用されていたのです。非常に便利なスクリプトです。Kit化の承認を柳村さんに快諾いただいたので、早速Kit化してみました。
Kitの仕様
Kit化に当たっては- 基本タブにスクリプトを実行するボタンを追加
- プリセットにアセットを追加
スクリプトのほかに窓のメッシュファイルもあるので、プリセットブラウザに表示するように設定を行います。
フォルダ構成
次のような配置としました。SET WINDOW P ├─ index.cfg … Kit設定 ├─ ui.cfg … ユーザーインターフェイスファイル ├─ Set_Window_P.pl … スクリプトファイル └─ Set Window P Presets … メッシュフォルダ ├─ シャッター付窓_1000.lxl ├─ ルーバー窓_1000.lxl ├─ 上下窓_1000.lxl ├─ 単体窓_1000.lxl └─ 戸袋付窓-L_1000.lxl
Kitの全体設定
Kitの設定はindex.cfgに書き込んでいきます。modoにはこのファイルを生成してくれる仕組みはありません。コンフィグファイルの仕様はSDKのページで確認することができます。注意深く見てみると、このKitのバージョンが見てとれると思います。rel=601とあるのは、このKitはmodo601以降のバージョンで利用できることを示します。このほかにWindows/Mac、32bit/64bitなどのプラットフォームの選択なども行うことができます。DirBrowserを設定することによってプリセットブラウザにフォルダをアサインすることができます。アセットだけ配布したいという場合にもKitは利用できそうです。kit_SetWindowPKit: 1
ユーザーインターフェイス
最後に「ui.cfg」の内容をご紹介します。このファイルはindex.cfgと違って手入力するものではありません。modoの機能のフォーム編集を利用して出力することができます。フォーム編集については以前のエントリでまとめましたので、そちらを参照してください。この設定によって、基本タブの下のほうにスクリプトを実行するボタンが設置されます。Set Window P vtoolbar both small 49.50.55
Set Window P 0 20459696616:control
Set Window P louver 0 40951696624:control
コメント
コメントを投稿