UltraScatter Pro 大量インスタンスを簡単配置するツール

指定したオブジェクトを、適当にバラバラと配置するツールだ。こんなことができる。


UltraScatterPro

UltraScatterの分散効果

例えば、鳥を多数配置して、渡り鳥の群れのようにするとこう!

木を配置して、森に!

寄りでレンダリングすると、こう!

人間を適当に配置して群衆シーンに。

散らばり具合のほか、向き、大きさ、も制御できる。

つまり、「荒木飛呂彦先生のかたつむり」のような表現が可能!

UltraScatterProの付属物

表示がおかしくなってるアイコンが7個あるけども、多分、無視して良いと思う。PDFのマニュアルと、UltraScatterProだけ相手にしてればいいんじゃなだろうか。Lowres…と書いてある枯れ枝みたいなやつは、表示が重くならないようにオブジェクトの代わりに表示させる木だ。

UltraScatterProのざっくりした使い方

球(Sphere)の表面に、立方体(Cube)をバラバラ並べてみよう。

まず、画面上部のCreateメニューから、Create PrimitiveでCubeとSphereを呼び出す。

Cube(立方体)をクリックして選択状態にしてから、Smart ContentのUltraScatterProを起動する
Scatter Object(散布オブジェクト)には、自動的に選択したオブジェクトが設定される。
Settings画面にで、surface(デフォルトで選択されてる)を選び、Target objectにSphereを選択、Number of Instance/Iterationsに200を設置する。
Number of Instancesは、散布するオブジェクト数だ。
Distributionタブにて、Density ControlのSpacing(cm)を10.00に設定、3D NoiseのプルダウンメニューをPerlinに設定。
Spacingは、散布するオブジェクトのすき間を設定する。3DNoiseは、ノイズの白いところに沿って散布オブジェクトを配布する感じ。
Rotationタブで、Rotaton PointをBottomに、AlignmentをSurface normalに設定する。
RotationPointは、回転の基準位置だ。この場合、立方体の底を、表面の法線方向に沿って回転させることになる。
平たく言うと、立方体の横を表面に沿って貼り付ける感じ。
ウインドウ下のSurfaceScatterボタンをクリックすると、オブジェクトが散布される。
散布されるのだが、あまりにポリゴン数が多かったり、テクスチャのサイズが大きすぎると操作不能なくらいにDAZ STUDIOが重くなるので注意。
散布前に、Scene Optimizerでテクスチャを削減したり、Decimettorでポリゴン数を減らしておくのがよいだろう。
※散布後にやろうとしても、処理に時間が重くなりすぎるのでダメ。散布処理前に軽量化しよう。

ボリューム散布 オブジェクト形状に沿って立体的に散布

指定したオブジェクトの形に合わせて立体的にオブジェクトを散布する。

象の形の植木を作ったり、そーゆーことに使うのかな。

けっこうな数のインスタンスを使わないと、もとの形には見えないので使いドコロが少々難しいかも知れない。

爆発する木片 大小の板を球状にボリューム散布

SphereをTargetObjectに指定して、RotationをX,Y,Zともバラバラに、大小2枚の木の板を散布。

爆発エフェクトはハリボテだ。木片のバリエーションは、もう少し増やしたほうがリアルかもなぁ。

参考)SY KABOOM Iray 

けっこうそれっぽく見える。

大量のナイフを投げるシーン

ジョジョ第三部の名シーンを再現。

ナイフの方向は、Point at指定しているのだが、そのままだと横を向いてしまう。刃先を対象に向けるためにRotatonタブのClamp Y axisにチェックを入れた。

原理はイマイチわかってないが、とりあえず目的の形に出来たのでよしとしよう。Z軸の値のみランダムに回転するうにして、バリエーション感を出している。

なお、point atの対象の「cube(プリミティブの立方体)」は、ナイフを投げる男性側に設置した。

ナイフの広がりは、cone状のプリミティブで指定。

コーン形状、使い勝手が良さそう。

振り返ってはいけない小道 大量の手が追ってくるシーン

同じくジョジョの名シーンから、「振り返ってはいけない小道」

手のフィギュア(Poserにデフォルトで付属してたやつ)を女の子の方に向けて、Sphre(球)状にボリューム散布した。

Rotationタブで、Inherit object rotationにチェックを入れると、オブジェクトの向きそのままで散布してくれる。

均一にみな同じ方向を向いてると違和感があるので、X、Y、Z方向それぞれランダムに最大20度づつ回転させるようにした。右手と左手の2パターンしかないんだけど、それっぽくしあがっている。

Matrix 等間隔に配置

3次元の等間隔にオブジェクトを配置する。XとZのRowsだけ数値を指定すれば、2次元的に等間隔配置が可能だ。

応用例は、CITY BLOCKと呼ばれる市街地コンストラクションキットなどを配置して街を作り上げたり。

教室シーンを簡単に整列散布

漫画の背景などで、とても面倒くさいとされる教室シーン。

親子関係のあるオブジェクトを整列散布できるので、机を親にして、イス、子供を子に設定したオブジェクトを散布するとこのとおり。

親子関係の設定は、Sceneタブにてドラッグ&ドロップ操作をおこない、イス、子供をドラッグして机の上にドロップすれば親子関係にできる。(右クリックして、Change Parentでも可)

男の子と女の子の2種類を散布した。

UltraScatterの小技集

配布済みのオブジェクトを再編集する

Sceneタブにて、UltraScatterPro…[xx instances]を選択状態にしてからUltraScatterProを起動すると、設定済みのパラメータ等々が画面に出てくる。

複数のオブジェクトをランダムに散布する方法

画面上部のCreateメニューから、Create Groupを作り、Groupの子オブジェクトにオブジェクトを設定すると、Group内のオブジェクトを散布してくれる。

Groupの子オブジェクトに設定するには、Sceneタブにてドラッグ&ドロップ操作でいける。

Affinity 散布範囲を制御

指定したオブジェクトの周囲にだけ散布したり、散布しなかったりを制御できる。

上記は、鉄火巻きの周辺10cmに散布しない(Repel設定)&周辺30cmに配布する(Attract)を組み合わせた例。

結果として、ドーナツ状に配布ができている。

指定した木の周りだけキノコを生やすとか、そういう使い方ができそう。

UltraScatterデメリット弱点

重い

かなり面白そう。だけど、そんなにたくさんアイテムを配置したら、重くてしょうがないんじゃん?

うちのパソコンなんて、G8フィギュア1体に服と髪をつけたら、イッパイイッパイだよ?

そうなのだ。

だから、遠くのアイテムはポリゴン数を減らすような措置が絶対必要になる。

Decimator for DAZ Studio(ポリゴン削減)や、Scene Optimizer(テクスチャ削減)が必須と言えるだろう。

Decimator for DAZ Studio ポリゴン削減ツール
重いフィギュアのポリゴンを減らすツール。UnityやUnreal Engineなどゲームエンジンにデータを持ち込む際に使われるツールだが、DAZ STUDIOでのレンダリング速度や配置時の操作レスポンスが向上するため単にデータを軽くする目的でも重宝されている。早い段階で入手しておくと、何かと役立つツールだ。
Scene OptimizerでIrayレンダを高速化!DAZ STUDIOテクスチャ軽量化ツール
DAZ STUDIOのレンダリング時間を激減するという不思議ツール。 Scene Optimizer  そのカラクリはというと、シーン内のアイテムに使われているテクスチャの解像度を自動的に下げてくれるのだ。 ややカメラ...

インスタンスを大量生成後に、フィギュアに服を着せるとハングアップする

なぜか、インスタンスを散布後にフィギュアに服を着せるといつまでたっても服を着せ終わらない…という状態になった。

そうなると、強制終了するしかなくて、シーンを保存してないと全部パー。悲しい。

なお、どうしてもデータを残したい場合はひたすら待ってれば処理が終わるっぽい。単に時間かかってたのか。私が経験した中では、服を着せるだけで30分くらいかかったというケースがあった。

原因は不明だけど、以下の様な対処をしておくしかなさそうだ。

  • こまめにシーン保存
  • オブジェクト散布前にフィギュアに服を着せておく

エロい分野への応用アイデア

人体についた「汗」や「水滴」の表現に使えるんじゃないだろうか。

透明な球を人体の表面上に分散配置すれば、手描きの汗マップを描くことなくリアル汗を作り出せる…?

やってみた。結果は上々。

設定パラメータレシピを記録しておく。

半径1cmの球を画面上部のCreateメニュー→Create Primitiveから作って選択状態にしてからUltraScatterProを起動。

インスタンスの数は300個。でも、実際に生成されるのは、何故かこの数より少し少ない。

Distributionは特に設定なし。

Scaleは球を細長く伸ばすためにXとZのScaleを変化させる。

球をランダムに回転。これで合ってんのかな。配置の基準は球の中心部(Center)になるようにして、顔の表面に球が半分埋まる感じにした。

球(Sphere)にGlassシェーダーを適用。

平たく言うと、Surfacesタブで球のsurfaceを選択状態にしてから、Smart ContentのShaders→Iray→Glass(デフォルトで入ってるやつ)の中から適当なやつを適用したということだ。

こうなった。美しい。


フィギュア:Dior HD for Genesis 8 Female 

関連ツール

UltraScatterと組み合わせて使うと、より遊べる範囲が広がるツールを紹介しておこう。

インスタンス実体化ツール


Instances to Objects 

UltraScatterProで生成したインスタンスをオブジェクト化(実体化)できる。インスタンスは、メモリの使用量が少なくて済む分、ポーズやモーフが全インスタンスに反映されてしまう。このツールを使うと別オブジェクトに変換できるというわけだ。

ただ、あまりにもインスタンス数が多いと変換処理自体が失敗したり、重くて操作不能になったりする点は注意。もともと、DAZ STUDIOのインスタンスを、別の3DCGにエクスポートするためのツール。

以下は、象の形にボリューム配置した球を、オブジェクト実体化して、dForceで物理演算をかけた例。

インスタンスの状態だと物理演算対象にできないが、実体化(オブジェクトに変換)することで物理演算対象にできるのだ。

DAZ STUDIOのdForceの使い方
自然に服や髪をフィットする物理演算機能dForce。パラメータ指定が複雑なのが難点だ。実は、簡易的に設定できるdFore Surface Adjusterが用意されている。ウェイトマップで作用範囲を塗り分けて制御しよう。パラメータを変えたら布の動きがどう変わるか、GIF動画を使って解説。

なお、ポーズはそのままで移動だけしたい場合は、インスタンスの塊を選択状態にしてから、画面上部のEditメニュー→Object→Instances→Break Instancesを選べば、インスタンスがバラバラになり、位置・回転・拡大縮小を個別に手動設定できるようになる。

ポリゴン削減ツール

Decimator for DAZ Studio ポリゴン削減ツール
重いフィギュアのポリゴンを減らすツール。UnityやUnreal Engineなどゲームエンジンにデータを持ち込む際に使われるツールだが、DAZ STUDIOでのレンダリング速度や配置時の操作レスポンスが向上するため単にデータを軽くする目的でも重宝されている。早い段階で入手しておくと、何かと役立つツールだ。

インスタンスは、メモリ上ではオブジェクト1つ分の容量しか食わない…とは言え、プレビューやレンダリングではポリゴンが多いほど処理は重くなる。

遠景などの場合は、分散配置前にこのツールでポリゴンをできるだけ削減しておくといいだろう。私のような素人から見ると、ポリゴンを30%(7割減)に減らしても、見た目は大きく変わらない気がした。遠景なら20%くらいに減らしてもいいかも。

テクスチャ解像度削減ツール

Scene OptimizerでIrayレンダを高速化!DAZ STUDIOテクスチャ軽量化ツール
DAZ STUDIOのレンダリング時間を激減するという不思議ツール。 Scene Optimizer  そのカラクリはというと、シーン内のアイテムに使われているテクスチャの解像度を自動的に下げてくれるのだ。 ややカメラ...

インスタンスをたくさん配置したいときって、遠景がほとんどだろう。解像度の高いテクスチャは不要なことが多い。

そこで、テクスチャの解像度をワンタッチで削減してくれるこのツールが役立つ。

プレビュー、レンダリングが劇的に軽くなるので、インスタンス大量配置シーンを作る人にとっては必須のツールだ。

カメラに映らないインスタンスを削除してくれるツール

Camera View Optimizer カメラ範囲外のオブジェクトを消すツール
カメラに写ってないオブジェクトを隠す・削除してシーンを軽くするツール。 Camera View Optimizer  大量のオブジェクトがシーン内にあって、レンダリングが重いとかメモリ不足になる場合に威力を発揮する。 ...

Ultrascatterによるインスタンスの自動配置は、カメラ位置によっては映らない箇所にも大量のインスタンスを生成する。

そこで便利なのがこのツール。

カメラを指定すると、映らないオブジェクトやインスタンスを自動で削除、または非表示にしてくれる。

実際に組み合わせて、ちゃんと動くことを確認した。UltraScatterProで生成したインスタンスを、うまく削除することができた。


▲609オブジェクトのうち、カメラに映らない512オブジェクトを削除した!

関連アイテム 分散配置済みの自然な森

道路わきに木を自然に分散配置したアイテムがこれ。同作者による背景シーンだ。

The Harpwood Trail for Daz Studio

おそらく、UltraScatterを使って木を自然に配置している。

なるほど、木一本のアイテムなら買わないけど、リアルに木が配置された森なら、けっこういいな…。

分散配置することには、価値があるということか。

UltraScatter ProとAdvanced Instancingの違い

UltraScatterには、Pro版とAdvanced Instancing版の2グレードがあるが、Advanced Instancingは旧版だ。Pro版を選ぼう。

Proが上位版で機能が多い。10ドル差なので、とりあえずProを買ってしまうのもアリだと思う。

だけど、このアイテムが親切なところは、下位のAdvanced Instancingを買ったあと、「あー、Pro買えばよかった」と思った時に、アップグレード版があるのだ。

UltraScatterPro – Upgrade from UltraScatter Advanced Instancing  (アップグレード用)

Proにだけできるのは以下のの通り。

  • 指定オブジェクト内部(Volume)、格子状(Matrix)配置が可能
  • 分散配置設定をインポート(保存)できる
  • アイテムの向き+傾きを揃える
  • アイテムの向きを自然にフォールオフさせる
  • ランダム配置用ノイズを関数で生成できる
  • 指定オブジェクトの方向に向ける

 

そんな感じ。面白ツールのひとつとして、一応ウィッシュリスト入りさせておこう。

UltraScatterPro

タイトルとURLをコピーしました