Created on | Updated on

GAME JAM STARTER KIT:PLACEMENT(配置)

概要

mceclip0.png

本記事では、SideFXが公開している GAME JAM STARTER KIT から PLACEMENT(配置)を Unreal Engine を使って解説します。

GAME JAM STARTER KIT のダウンロードはこちらから:
https://www.sidefx.com/ja/tutorials/game-jam-starter-kit/

このツールを使用すると、複数のオブジェクトをカーブに沿って配置したり、オブジェクトに散布したりできます。 オブジェクトの方向とスケーリングを制御して、デザインにランダム性を追加できます。

 

ツールの使い方

mceclip1.pngmceclip35.png
このツールには、カーブに沿ってオブジェクトを配置する Curve 機能と、入力オブジェクト上にランダムに配置する Scatter on Object 機能があります。また、Instance の設定から自分で用意したアセットを配置することもできます。
このツールはプロシージャルかつインタラクティブであるため、カーブや入力オブジェクトを変化させると、生成されるモデルもそれに従って変化します。

本記事では、配置されるものをオブジェクト、その結果できるものをモデルとして解説します。

 

パラメータの変更

Curve

mceclip3.pngmceclip6.png
mceclip7.png
Spacing を変更すると、配置されるオブジェクト同士の間隔を調整することができます。

mceclip8.png
Rotations ではオブジェクトの回転について制御できます。

mceclip9.png
Target の変更でオブジェクトの配置軸を変えます。
デフォルトでは Y 軸(Houdini での上方向)に設定されていますが、
上は Target を X 軸(手前方向)にしたもので、オブジェクトそれぞれの傾きが変わっているのが確認できます。

mceclip10.png
Roll では、方向性にかかわらず傾斜を加えることができます。

mceclip11.pngmceclip12.png
Roll は X 軸で回転させ、Yaw と Pitch もそれぞれ YZ 軸で回転させます。

mceclip13.png
同様に、Full Twists と Partial Twist でランダムさを加えながら回転させることができます。

mceclip0.png
Scale オプションでは、配置される各オブジェクトのサイズを変更します。

mceclip1.pngmceclip2.png
Scale Minimum と Scale Maximum で各オブジェクトの大きさの最大値と最小値を制御できます。
上の二枚のうち、左は最大値と最小値が共に 1.0 のため、すべてのオブジェクトは同じ大きさになっています。
右は最小値を 0.4 にしたもので、一部のオブジェクトが他よりも小さくなっているのが確認できます。

mceclip4.png
Scale along curve をチェックすると、カーブに沿ってオブジェクトをスケーリングさせることができます。
スケールランプでさらに細かい制御ができます。

mceclip3.png
上の場合、ランプが一次関数になっているため始点から終点にかけて滑らかにスケールしています。

Instance

mceclip5.png
Instance タブの設定から、ゲームエンジンに用意したアセットを配置することができます。

mceclip6.png
Method から Unreal を選択します。Unity での開発の場合は Unity にします。

mceclip7.png
Asset が空欄になっているのが確認できます。

mceclip8.png
配置したいアセットの上で右クリックし、 Copy Reference を選択してパスをコピーし、

mceclip9.png
Asset にそのままペーストします。

mceclip10.pngすると、選択したアセットがカーブ上に配置されているのが確認できます。

mceclip11.pngmceclip12.png
Curve の Rotations に戻り、これまでの解説で変更したパラメータを 0 に戻します。

mceclip14.png
mceclip15.png
Rotations の中に、Always look up というオプションがあります。
チェックを外すと、カーブを変更したとき、カーブに面するように向きが変わります。

mceclip16.png
チェックを入れると、カーブの変更にかかわらずオブジェクトは常に上を向きます。

Scatter on Object

mceclip17.png
Scatter on Object から、Plane の上にアセットの柱を立てる処理をします。
オプションから Scatter on Object を選択すると、上のようにパラメータが展開されます。

mceclip18.png
シーンの Curve モデルを選択した状態で、Method を Curve から Scatter on Object に変更します。

mceclip19.png
input オプションを選択し、Object をWorld Outliner Input に変更します。

mceclip21.pngmceclip22.png
シーンに Plane を配置し、

mceclip23.png
Start Selection を選択、

mceclip24.png
シーンの Plane を選択した状態で Use Current Selection を選択すると、

mceclip25.png
指定した Plane 上にオブジェクトを配置させることができました。

mceclip26.png
settings から、細かい設定を変更できます。

Direction はオブジェクトを配置する方向を指定できます。
アセットを配置するオブジェクトが平面ではなく球面だった場合、今の設定だと +Y となっているため、球面の Y 軸方向の正のみ、つまり球面の上半分にのみにアセットを配置させることができます。

mceclip27.png
Density Scale は配置するオブジェクトの密度を制御します。
値を少し上げるだけで十分な結果が得られるため、デフォルトでは 0.5 と低い値に設定されています。

mceclip28.png
Relax Points で各オブジェクト間の距離を制御できます。
上は値を 0 にしたもので、複数のオブジェクトが重ねっているのが確認できます。

mceclip29.png
mceclip30.pngmceclip31.png
Rotations で配置されたオブジェクトの回転を制御します。
rand rot XYZ(random rotation)で三次元ごとにランダムに回転させ、シード値でさらにランダム化させることができます。

mceclip32.png
Scale でオブジェクト単位でサイズを変更できます。

mceclip33.pngmceclip34.png
Overall scale でモデル全体を一様にスケールさせ、
Scale Minimum と Scale Mamimum でオブジェクト一つ一つの最大値と最小値を制御します。
Noise scale でさらにランダム化します。

 

mceclip16.pngmceclip33.png

このツールを使えばカーブに沿って任意のオブジェクトを自動で配置できるため、柵や線路など規則的に並ぶものに活用できます。

Scatter については極めてランダムな要素が強く、例えば芝生のように、一定方向を向き各サイズが違うものを散在させるのに使えます。

問題が解決しない場合は、Born Digital サポートまでお問い合わせ下さい。

サポート問い合わせ