昨年の12月26日に到着していながら未だに使用していない VivoBookFlip14 。
主たる要因はこれまで日常的に使っていた自作の Blender2.7 用プラグインの 2.8 以降への移植ができていない為でした。
で、長い間悩んだのですが、パネルにボタンを追加して機能を追加する…という記事を見つけまして。アレ、1個パネルを作って、そこに今まで作った機能を全部ボタンとして追加すれば良くね?
と、思い立って2日…完成してしまった。
数か月悩んだものが数日で解決する事もあるのが開発の怖い所。ただ、「すべからく努力~」と言わないまでも、悩み続けないと辿り着けないんですよねえ。
そして、コレまで Blender 用に作ったスクリプトの内、主要な6個の機能をまとめたのですが…総ソースコード300行以下。
print 文の削除等整理をしたのも有るけど、圧縮の必要も無いコンパクトサイズになりました。
公開に当たって一応面倒だけど注意を書かねば。
1.使用してどんな不利益が生じても責任は負いません。
2.改造、再配布はしても良いけどこのソースコードで直接商売をする事は禁止します。(当アドオンを使ってモデリングデータ等の商品を作る事は構わないけど、出版物に直接コードを載せる等は禁止という事です。居ないとは思いますが)
3.バグ等を見つけたら下にコメントを貰えると助かります。
では、コレで3回目の説明になる機能もありますが、各機能の説明おば。
まず、インストールの仕方は省略させて頂くとして、インストール後は3DViewに通常ショートカットNキーで呼び出せるサイドバーの「100H_Addon」タブとして実装されます。
パネルの下に各機能がボタンとして実装されるのですが、現在は「オブジェクトモード」と「アーマチュア編集モード」で表示される内容が異なります。
- Set Bone Roll Zero
アーマチュア編集モード時に表示されるボタンです。
選択したボーンのみロール値を0にします。※現状ではオブジェクトモード時にアーマチュアが選択されている必要があります
これが
こうなる。
ロール値が0じゃないと不都合がある場合に使います。通常は全選択して全て0という使い方が主になります。
- Sort VG by the Name & Sort VG by Hierarchy
それぞれ、オブジェクトモード時に表示されるボタンです。
それぞれ名前順/ボーン継承順位順にVGの並べ直しを行います。
これが…
名前順の場合
継承順の場合
尚、継承順については私も深く理解できておらず、ボーンに関連付けされていないVGの順位等がどう並ぶのか?等不透明な部分があります。
- Pruning Idle VG
オブジェクトモード時に表示されるボタンです。
VG設定済みのメッシュオブジェクトを選択してこのボタンを押すと、全頂点を検索し、未使用VGを削除します。
今回は Dummy~ と命名したVGは頂点で使用していないので…
これが
こうなる
以降は順を追って説明します。
そもそも、私のモデリング/リギング方法の都合で、左半身のみ編集/リギングを行う→左右リギング済みのモデルを作る→編集用に左半身のみの状態に戻す。という作業の自動化の為にアドオンを作成していました。
標準機能で上手く行かなかった部分をアドオンで補っていたので、順を追って説明します。
- Append LR to Bonenames
アーマチュア編集モード時に表示されるボタンです。
選択したボーンのみ名前の最後に左右を示す.L .R を付加します。※現状ではオブジェクトモード時にアーマチュアが選択されている必要があります
標準機能であるアーマチュアコンテクストメニュー(右クリック)→名前→自動ネーム(左右)でも挙動は同じなのですが、Xの中心位置の取り方がシビアだった為作りました。
本アドオンでは+-0.0001の範囲内のボーンはリネームしません。又、範囲内に入ったボーンは改めてXの座標を0にセットし直します。
又、あらかじめリネームする前に .L .R が語尾についていた場合一旦削除してからリネームを行う為、連続して使用しても~.L.L といった名前にはなりませんが、故意にそういった名前を作りたい場合や、最初から~.L と~.R が混在した場合は挙動があやしくなる事をご了承ください。
- Pair VG Maker
オブジェクトモード時に表示されるボタンです。
~.L ~.R の左右を追加した名前のVG設定済みのメッシュオブジェクトを選択してこのボタンを押すと、対になるVGを追加します。
これが
こうなる
その後は標準機能で左右リギング済みオブジェクトを作る
まず、編集モードでアーマチュアを選択し、アーマチュアコンテクストメニュー(右クリック)→対称化
次にオブジェクトモードでリギング済みメッシュオブジェクトを選択し→モディファイアーを追加→ミラー
そしてミラーをX軸にチェックを入れて(デフォルトでは入っている)「適用」
これで、リギング済み左右モデルができるハズ。
- Halving Object
オブジェクトモード時に表示されるボタンです。
左右対称にリギングしたメッシュオブジェクトに影響を与えるアーマチュアを選択し、このボタンを押すと、アーマチュア/影響を受けたメッシュオブジェクトが半分の状態に戻ります。
又、ボーン名称、VG名称も左右を示す接尾語が抜けます。
これが
こうなる
ふう、コーディングよりはるかにココのブログページの更新の方が時間がかかりました。
今回初めてグーグルドライブを使ったファイル共有を使ってみましたが…、モロに本名が出てますね…グーグルのユーザー登録はお金が絡む事案があるので偽名を使わなかったのですが、メールアドレスで登録している意味がないというか、グーグルにユーザーを守る気が無さ過ぎるというか…せめてニックネームのみ表示が無いのかよ…
…ちなみに、今回のプラグイン、ほとんど枕元で作りました。寝る前に思い立ってパパっと…そう、アノ中華PCで。
存外、幸運を呼ぶPCなのかもしれないですね。
※以下、22年3月6日追加分
- Sort Bone group
ポーズモード時に表示されるボタンです。
これが
こうなる
…見たまんま名前順に並べ直します。アクティブなボーングループがインデックスを注視したままなので変わってしまう事が有る点に注意。※22年6月6日修正しました
- Copy Pose Mode hide flag to Edit Mode
アーマチュア編集モード時に表示されるボタンです。
エディットモードがこの状態
ポーズモードのボーン隠蔽がこの状態で
こうなる
オブジェクトモードで選択されているアーマチュアのポーズモードでのボーン隠蔽状態を編集モードへコピーします。
※以下、22年3月24日追加分
※22年6月6日同機能のバグを修正してアップデートしました
- Show the active gloup bones
ポーズモード時に表示されるボタンです。
オブジェクトモードでボーンオブジェクトを選択した上で、ポーズモードにして
こういったボーンを隠した状態で…
ボーングループをアクティブにしてボタンを押すと
こうなる(例だと僧帽筋のボーングループだったのでこうなりました)。
ちなみに、アクティブなグループのボーンを表示するだけで他のグループには影響が無い為、表示されていたボーンが隠される…といった事はありません。
0 件のコメント:
コメントを投稿