投稿記事

2020年 09月の記事 (2)

blender 2.8x 以降のバージョンで注意すべき操作

blender 2.8x 以降のバージョンで注意すべき操作


 先日、自作の初音ミク3Dモデルを動かしていたところ、メッシュオブジェクトの数カ所に頂点位置が崩れている不具合を見つけました。どうやら気がつかないうちに意図せず頂点を編集していたようなのです。崩れていたメッシュオブジェクトは、どれもモデリングの早期に編集が確定しており、ここ最近は触る必要がなかった(はずの)箇所でした。にも関わらず意図せずに変更が入っていたのです。今回の記事ではその原因について書いていこうと思います。

編集したはずのない箇所になぜか謎の変更が入っている

 実はこのような現象は今回が初めてではなく、blender 2.8xに変えて以降はちょくちょく発生していました。指先の編集をしただけのはずなのに、なぜか髪の毛の頂点が崩れていたり下着の頂点位置がずれていたりということに暫く経ってから気がつく、ということが過去に何度かありました。ちなみに指先(ボディ)のオブジェクトと髪の毛や下着のオブジェクトは別のオブジェクトになっており、本来ボディのオブジェクトを変更するだけならば頂点位置が変わるはずはありません。

 もちろんこの現象がblenderのバグにより引き起こされているとは言いません。しかし操作系のくせにより、ヒューマンエラーが発生しやすい構造になっているとは言えます。

blender2.79以前とblender 2.8x以降で大きく変わった点

 blender 2.79以前では一度に一つのオブジェクトしか編集できませんでしたが、2.80になって複数のオブジェクトを同時に編集できるようになりました。(オブジェクトモードで複数のオブジェクトを選択し、その状態で編集モードに切り替える)

■頭、足、肩は別々のオブジェクト



■頭、足、肩のオブジェクトを複数選択後、同時に編集モードで編集


 使ってみると実感するのですが、この変更により編集作業が相当便利になりました。

複数オブジェクトの同時編集で注意すべき点

 複数オブジェクトの同時編集は非常に便利で強力な編集機能です。一方で意図せずに他のオブジェクトを気づかぬうちに変更してしまうというリスクも内包しています。では実際に意図せず他のオブジェクトを変更してしまうようなケースがあるのでしょうか。実は十分あり得るケースなのです。そういった状況が発生するケースを動画にまとめてみました。

【動画解説】
1)まず最初にフェイスパーツをオブジェクトモードで選択し編集モードに切り替えます。この状態では3Dビュー内のどこをクリックしても別のオブジェクトに切り替えることはできません。



2)別オブジェクトを編集したいときは一旦、オブジェクトモードに戻してから別のオブジェクトを選択し直します。動画では脛パーツを選択して編集モードに切り替えました。この時点では編集モードで編集できるのは脛パーツのみであり、頭部パーツは編集できません。


3)もう一度、オブジェクトモードに戻り頭部パーツを選択し直し、編集モードに切り替えます。今度は3Dビューではなくアウトライナー(右上のオブジェクト名が並んでいる枠)から脛パーツ(LBX02 shin)をクリックします。

4)すると強○的にオブジェクトモードに切り替わり、脛パーツのみが選択された状態になります。

5)この状態で編集モードに切り替えると、オブジェクトモードでは選択されていなかった頭部パーツも編集モードになり、編集可能になってしまいます。(※頭部パーツは編集モードからオブジェクトモードに切り替えられていないので、内部的には編集モードになったままであったと推測されます)

 この動画では、モデル全体が見えるようにビューを設定しているので、頭部パーツが編集可能になってもすぐに気付くことができます。しかしもしこれが一部を拡大しているような状況だったならどうでしょうか、例えば脛を拡大表示していて頭部が画面の外に置かれている状態の時に、頭部まで編集可能になっていることに気がつけるでしょうか。もしも頭部が編集可能になっていることに気づかぬまま、脛部を全選択(A)し移動や拡大縮小を行なったら……

 今まで自分の作業内で発生していた不具合は、このような背景で発生したと思われます。

再発防止案

 不具合原因がヒューマンエラーであるならばその対策を考えなければなりません。そもそもアウトライナーでオブジェクトを選択しなければ、上記のような状況は発生しませんが、しかしアウトライナーの機能の一つがオブジェクトの直接選択である以上、それを使わないというのは作業効率の低下につながり、あまり良い方法とは言えません。それよりも良いのは設計がFIXしたメッシュオブジェクトにはプロテクトをかけて変更不可にすることです。しかしそのような機能はblenderにはありません。仕方がないので擬似的にプロテクトをかける方法を考えます。

 まず一つ目はオブジェクトを選択できないようにする方法です。アウトライナーの右上のプルダウンメニューをクリックします。


選択の可否を決める三角のアイコンをクリックしてオンにします(デフォルトではオフ)

アウトライナーに選択の可否を決めるアイコンが表示されるので、編集したくないオブジェクトを選択不可にします

これで、3Dビューからでもアウトライナーからでもオブジェクトを選択できなくなりました。

 もう一つは、編集モードで頂点を全て非表示にする方法です。非表示の状態は実質的に編集不可の状態でありプロテクトをかけたことと同義になります。全選択(A)コマンドは表示中の頂点のみに対してのみ効果があるので、非表示中の頂点は編集モード中の処理から完全に除外・保護されます。

以上、不具合発生状況と、その考えられる原因、対策方法でした。

おまけ

不具合修正(とblenderの強○終了連発)で作業に1日費やしたミクたち。


この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

近況報告200904

近況報告

 前回の記事を書いてから約一ヶ月近く音信不通でしたが生きてます。
前回触れた通り、今はドリクラ玲香のモデルを作成しています。ドリクラ玲香のモデルはメッシュ、リグ共に今後作成するモデルのベースにする予定なので、設計段階からかなり力が入っています。(派生モデルができてから手直しが発生すると工数がとんでもないことになるので、設計段階で完成度をある程度確保しておきたいのです)

 メッシュに関しては、前回の記事の段階で(スキニングしながら多少の手直しは必要になるでしょうが)一応の完成をみているので、今はリグの作成に取り掛かっています。

高機能リグ

 現行モデルのリグは基本的なスケルトンにいくつかの補助ボーンやコントローラを追加した中程度の機能を持つリグで、MMDやUnityへの書き出しは比較的少ない工数で可能なものの、一方でFKで動かす部分がかなり残っており、動画や大量の静止画を作ろうと思うとポーズ付けの工数がそれなりにかかるという欠点がありました。

Rigifyのリグ

 そこで現在はリグを一新すべく、Rigify(blenderのアドオン)に操作性を近づけた高機能リグの設計に取り掛かっています。Rigifyのような高機能リグは、基本構造の段階でMMDモデルの標準ボーンやUnityのHumanoid Rigと設計思想が違うので、blenderの外部(特に汎用性が求められるフォーマット)へ書き出して利用するのには向きません。しかし一方でデフォーム専用ボーンやFK用IK用のコントローラ、基本スケルトンなどが明確に分かれており、本来なら高機能になればなるほど複雑化するボーンが構造化され、複雑でありながらメンテナンスがしやすくなっています。またポージングの殆どがIKとコントローラで動かすことができ簡単な操作でポーズが付けられます。

今後の予定

 ドリクラ玲香モデル用のリグを作りつつ、高機能リグ(とフェイシャルリグ)の解説記事を複数回に分けて書いていく予定です。

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

月別アーカイブ

限定特典から探す

記事を検索