画力がないなら立体を作ればいい

デジタル箱庭クリエーターを目指す小さな足跡

Zbrushが使いにくいのは「可視状態」の制御に手間がかかるから

(約 7,200文字の記事です。)
f:id:yamato-tsukasa:20190218143834j:plain
Zbrushを触って以来、そのポテンシャルの高さに驚いた。だが使ってみると、使いにくい。とてもとても使いにくい。出来ることは凄いのに、とにかく作業しづらい。使いにくい。
何でなんだろうとずっと思っていた。そしてそれを便利にするためにプラグインを自ら開発した。今回はそんなちょっと回想録的な日記。

Zbrushが使いにくいのは可視状態の制御の手間が多すぎること

実はこれとは別の機能が欲しくてZbrushのプラグイン作りを始めたのだ。Back To the Centerというプラグイン。

Zbrush用プラグイン「Back To the Center」(斜め配置と原点配置とを往復可能) - YAMATO - BOOTH

一度斜め配置させても再び原点に戻して対称編集をしてワンクリック一発で元の位置に戻せるという優れ物。で、これを作り終えて自分でも過去の作品を触ってみると、やっぱり別件で使いにくい。どうやら本質的に使いにくいのだZbrushは。それに気付いて、それを解消しようとして作ったのがVisibility Switcherだ。

Zbrush用プラグイン「Visibility Switcher」(全ての目玉アイコンをワンクリックで一気に復元) - - BOOTH

これは全てのサブツールの目玉アイコンの状態(可視状態)を記憶してサブツール名に紐付けるという優れ物。服なら衣装系だけを表示状態にさせたあとにViSすればその可視状態が全ての服に記憶される。あとは服の一部のサブツールを選んで復元すればいつでも服だけのソロ表示が手に入る。

ソロ表示が苦手。単一のソロでなくてグループのソロ表示ね

これがZbrushではできないのである。単一のソロ表示ならボタンがある。だが複数サブツールだけを限定的に表示させるようなグループ表示機能がない。これが使いにくい理由の一つ。
例えば、服にしたって上半身用と下半身用とがある。もちろん制作途中に全体像も見たくなる。だが一度全体表示にしてしまうと再び元の部分表示状態に戻すのがとても面倒だ。特にサブツール数が20を超えるとそれだけでも修行である。だから使いにくい。

手段としてではなく目的としてサブツールを使うという本末転倒

サブツール数を減らすためにはサブツールを結合するしかない。だが結合すると不便なこともある。パーツ同士がブラシに干渉する。避けるためにはポリグループによるマスク機能などを使ってマスクするしかない。これがまた作業に一手間加えることになる。だがサブツール数は増やせない。苦渋の選択の結果、やはり不便さが残る。やはりZbrushは使いにくい、となる。

サブツール分けされていれば干渉しないし表示/非表示も切り替えられるけども

やっぱりサブツール数が増えると目玉アイコンの制御がとてつもない作業量になる。でもそれを除けばサブツールは小分けの方が都合がいい。可視状態でも半透明化と実表示とを切り替えられるし、目玉アイコンで本当に消すことも出来る。パーツごとに作業時に干渉しないので造形が楽。
問題は、サブツールの山に埋もれてどれがどこにあるのか分からなくなること。もちろん画面表示中はALT+クリックが使える。問題なのは「非表示化した状態のサブツールの選択方法」。実はキャンバス上からの選択方法にはこれがない。だからサブツールの山から地道に探し出すしかなくなるのだ。だからZbrushは使いにくい。

サブツールヘルパーというプラグイン群の構想

元々サブツールを便利にするための仕組みを作りたいと考えていたので、サブツールヘルパーと冠して細かい機能を少しずつ公開して追加していくスタイルにした。
そして今のスタイルに至る。

その中でもまずは便利に使えるようになったのが「目玉アイコン制御ツール」なのだ。このシリーズの第1段。

可視状態を反転させるプラグインを作ろう

すぐに開発してViSに実装した。とても快適。これが一つのエポックメイキングである。今までは非表示状態のサブツールを選ぶためにはあの狭いサブツールウィンドウを上下往復するしかなかったのだが、反転させてしまえば見えるのでキャンバス上から探すことが出来る。見つけてALTクリックすれば画面上に表示させられる。これだ!

Zbrushのサブツール操作プラグイン「YT Subtool Helper」 - YAMATO Tools - BOOTH


とにもかくにも、一度非表示化させたサブツールもワンクリックで反転して画面上から選択出来るようになったので、発想の転換が出来るようになった。一度全表示にさせてから、ソロ表示させたいパーツ類を逆にどんどん非表示にしていき、最後に一気に反転させる。例えば40のサブツールのうちソロ表示させたいパーツはたったの3つだとしよう。ならば3つだけ非表示にさせてから反転させれば3つのソロ表示になる。少々の変更ならば目玉をクリックしても大した作業ではない。もちろん可視ツールならワンクリックで消せばいい。とにかく表示/非表示の制御が劇的に楽になったのだ。しかも目玉アイコンをクリックせずに、広い画面から見た目で判断できるのでストレスも少ない。

Zbrushでは選択中なら非表示に出来ない

そして目玉アイコン制御ツールを考えている時に実装する機能は、反転機能と、キャンバス上でパーツを非表示にさせる機能だ。なぜならば、サブツールパレット上で目玉を切り替えても選択状態ならばキャンバス上から消えない。これもZbrushが使いにくい理由。ALT+クリックで呼び出しはいいものの、逆に消すことは出来ない。で、考えた結果、ALT+クリック+下矢印キーの動作を実現するボタンがあれば、マウスを重ねてそのボタンのホットキーを押せば画面上からそのパーツが消えることになる(なぜならば選択状態でなくなるので目玉が非表示なら消える)。これがとても便利だった。まずは開発して良かったボタン。

f:id:yamato-tsukasa:20190218144422p:plain

f:id:yamato-tsukasa:20190218145321p:plain

やっぱりサブツールパレットが使いにくいのは移動手段が少ないから

で、便利にキャンバス上からサブツールを制御できるようになっても、まだ不便だ。なぜだろう?サブツールパレットには上下矢印キーしか制御手段がないからだ。だからマウスでドラッグしたりクリックしたりするしかない。不便な理由。なのでワープロみたいに使えるようにしたいと思った。これが第2弾の構想。そして「フォーカスの移動制御ツール」が誕生した。Home, End, PageUp, PageDownが使える。そしてCenterボタンを作った。これを押すと今の選択状態のサブツールがパレットの大体中央に移動する。なのでその上下のパーツを見ることが出来る。ZbrushではALT+クリックではなぜか選択サブツールがTOPに来てそのちょっと上のパーツが見えない。それを見るためだけにいちいちパレットを上下にドラッグしなければならない。ストレス。なので、キーボードでこれが切り替えられたら楽だなと思った訳だ。実際、もう普通に使っている。そしてあとで分かることになるのだが、このHome, Endが意外な使い方に必須となったのである。当時はPageUP,Downのついでに作っただけだったのだが。

f:id:yamato-tsukasa:20190218144606p:plain

サブツールの並び替え問題

実は作者はViSを開発しているのでサブツールの並びとは無関係にパーツの可視状態をViSで紐付け管理出来ているので、並び順はわりと適当でいい。だが問題なのは、ViSに新規登録するためにはやはり面倒なサブツールパレットを操作する必要がある。そして最初の問題、非表示状態にしている状態で全体を反転させられないシーンも結構あり、そんな時にサブツールを探し出すにはあの無駄な労力が必要になることに気付いたわけだ。特にサブツールがばらばらにあるとき、その中の1つのサブツールだけを非表示状態から探し出すのは修行でしかない。
もちろんViSがあるので、一度表示状態を仮にBankにでも登録しておいて、反転表示にして探し出したあと、再び元に戻してViSで復帰することが可能なので、普通の人の作業の比ではないが、それでも面倒なことは確かだ。そこで、根本的にサブツールの並び替えが出来ないか考えた。そして出来たのが「可視サブツールを一カ所にまとめるツール」である。

f:id:yamato-tsukasa:20190218144810p:plain

並べ替えが何度でも簡単にできると探す手間が激減

これは開発し終えて初めて使ってみたときに感じた。開発中はどうしても理論上の動作が実現できるか否かだけが問題であり、実装できるかできないかだけが重要だ。だが理論通りに動作したのであれば、実際にクリエーター目線で使ってみよう。そして使ってみて驚いた。快適。
特に可視状態にしてしまえば好きなところに一括移動可能であり、元々がばらばらでも一カ所にまとめて移動させられるのがとても便利。作業中はどうしても作業順にサブツールが並びやすい。その方が作業がしやすいからだ。それは重要だ。だが、時間が経つにつれてパーツごとに固まっていて欲しい。服なら服、小物なら体の部位に関連する所にある方が制御しやすい。

つまり、サブツールの並びは永久固定よりも、作業状況に応じて自由に変えられる方が圧倒的に作業しやすいのだ。これを開発し終えて実際に使ってみて作者が感じたことだから間違いない。Zbrushで作業しづらい理由がここにあったのだ。そして奇しくもそれを解決した時点でその原因が分かったのだ。皮肉である。今までのZbrushの使いにくさの根本的な問題点はこれだったのだ。だから作業が進むにつれて、後半になるにつれてどんどんZbrushが使いにくくなる。その原因であるサブツールがどんどん増えるわけだから。

サブツールヘルパープラグインでその原因を排除

これも今なら分かるが、結局、便利に使うためのプラグインをおおかた開発し終えて、それを実際に使いながら感じたことから導くと、やはりZbrushの使いにくさの根本的な原因はサブツールの制御が作業後半に向かうにつれてとても多くなること。これである。だが、サブツールヘルパーという武器を作った今、それを使えば作業初期でも作業後半でも、一定の操作効率を確保した状態で作業が出来るので、後半に向かって辛くなることがない。前半のままの快適性を維持できる。これがこのプラグインの最大の効果である。BTCやViSも便利だが、それを周りから支え、作業全体に常に一定の効果を与えてくれるサブツールヘルパーの存在がZbrushを便利に使うための鍵だ。作者がそう感じている以上、間違いない。

可視サブツールを一カ所にまとめるツールが一つの山場

これがあれば、いつでも好きなときに可視サブツールをひとまとめに出来るし、好きな場所に移動させられる。出来ることはそれだけというたった1つのボタンが大きくZbrushを便利にする。並べ替えはただ単に対象となるサブツールを可視表示にさせて、あとはどこに移動させたいかを決めて選択サブツール状態にしてボタンをクリックするだけ。2,3秒で処理が終わる。

f:id:yamato-tsukasa:20190218145522p:plain

このツールの完成により、例えばHome, Endキーで最初または最後に一気に可視サブツールを固めて移動させられる。例えば修正作業などで必要パーツを上か下に固めておきたいときなどに便利だ。作業後に、ViSなどで選択状態を絞り込んで個別に固め直しも簡単なので。その際にはPageUP,Downでの高速閲覧が効いてくる。一方のツールが他方のツールの価値を高めた面白い例。

f:id:yamato-tsukasa:20190218145754p:plain

ViSのようにサブツール名をボタン代わりにする使い方も便利だが、こっちの方はもっと根本的だ。不便な並びを便利な並びにできるからだ。そしていつでも並び替え可能。便利な並びになっていれば、やむを得ずサブツールパレット上でサブツールを探すにしても楽だ。もっとも基本的にはやはりキャンバス上での選択がもっとも効率的なのでそっちで済ましたいところだが、それが出来ない場合でも相当に楽だ。「だいたいあの辺にある」が使えるからだ。そしてすぐに見つかる。ストレスが少ない。つまり使いやすい。

ある位置から下の表状態を反転させたいときなどにこいつが便利に登場する。たまに必要になる機能が地味に嬉しい。
f:id:yamato-tsukasa:20190218145937p:plain

便利なツールが増えたのでZbrushが快適に使える

ようやく作者が納得した環境に辿り着いた気がする。
斜め配置や位置合わせはBTCを使えば楽で正確。
表示状態の切り替えはViSを使えばワンクリック。並べ替えも自由。
サブツールの制御はキャンバスクリックでの選択&反転を基本とし、キーボード操作と並べ替えやまとめ配置により常に快適な並びにして作業すれば面倒が少ない。

ここまでくると、だいぶパーツの可視表示の制御が思い通りに簡単にできる。そしてようやく造形が出来るのだ。造形する以前に、造形対象を楽に選定できなければ、それのためにどんどんエネルギーが費やされる。Zbrushが使いにくい理由はこの辺にあるのだとようやく気付いた。表示状態を如何に少ない手間で切り替えて使うか。時間を造形に使うか。BTC, ViS, YT Subtool Helperはそのための手段であった。ようやく出そろった気がする。

プラグイン開発も一端落ち着かせようと思う

元々プラグインを作ること自体が目的ではない。あくまでもZbrushを使いやすくしてから使い込みたいと思ったのがきっかけだから。長く使っていくつもりだから、なるべく早いうちに快適環境を整備したかった。とは言っても、さすがにプラグインを作ることになろうとは思ってもいなかったのだけれど、BTCという凄い機能がきちんと形になったことに自信を付けて、思い切って本質的な問題を解決してみたくなったわけだ。そしてViSが誕生し、シーンごとの可視状態の制御が出来るようになって、その脇をしっかり固めるサブツールヘルパーのメイン機能が出そろった。もう造形作業に戻りたい。

実際、道具なのだから使っているうちに問題点や改良点も見つかるだろう。実際いつも使うごとに、ここをこうしたい、ああしたいと思うことばかりだ。使ってみないとわからないからね。もちろん改良できたら順次公開予定。

でも、とりあえずは大きな開発はここで終了ということにしたい。いつまでもプラグインばかり作ってもいられない。

本当は、名前重複検査ツールなども考えていたのだが、今日、可視サブツールを一カ所にまとめるツールを開発し終えてZbrushを触った感じでは、ようやく問題の根本を克服できるレベルになった、と感じたのだ。ゴールを感じたのだ。名前はユーザーが一意に付けるだけで済むのだから、大規模なツールを作る必要もない。BTCやViSにはそれを実装したリネームツールもあるので、それにホットキーを割り当てて運用すればいい。自分が必要と感じないのにエネルギーを使ってまで作るべきツールは存在しない。なのでお蔵入り。それがないと不便だと感じたら作ろうと思う。

開発済みプラグインにはそれぞれキラリと光るいいところがある

もちろん大規模開発の第一弾であるBTCと、その次のViSは力作だ。本当に力を込めて作った。自分でも使い倒したいツールだ。だがその脇を固めるサブツールヘルパーは、使い始めてからすぐに効果を感じている。細かな調整でブラッシュアップするならサブツールヘルパーかもしれない。シンプルなだけに、ちょっと変えると大きく便利になるからだ。今も既にいくつかアイディアがある。でもすぐには公開しないで、自分で使ってみて納得できる状態になってから一気にアップデート版に盛り込みたい。

なので、いったんはプラグイン開発に注いできたエネルギーと情熱は一度終了ということにします。これだけ便利になったのだから、次は便利にZbrushを使うステージに入りたいと思います。Zbrushを使うためのノウハウではなく、造形をなすためのノウハウが欲しい。今まで作って生きたプラグインたちは、確実にZbrushを使いやすくしてくれます。いい子に育ってくれた(笑)

多くのZbrushユーザーに役に立つことを願って

全てのプラグインは、一度使うと間違いなく手放せなくなる、そういうプラグインばかりです。どうか皆様のよきZbrushライフに貢献することを願っております。


2019/02/18
大和 司

今回の創作活動は約1時間(累積 約757時間)
(186回目のブログ更新)