UE4 指定した範囲の中のランダム位置を取得(Random Point in Bounding Box)
ここらへんを参考にさせてもらいました。
・「Unreal Engine」エンドレスランナー作成
http://shivat.hatenablog.com/entry/2015/07/14/004423
・UE4:Random Point in Bounding Box メモ
http://unrealbussan.hatenablog.com/entry/2015/02/27/143723
指定した範囲内のランダム位置を取得するには
「Random Point in Bounding Box」ノードを使います。

「Origin」を中心とした位置に
「Box Extent」を±した位置をランダムで返します。
公式ドキュメントはこちら。
・Random Point in Bounding Box
https://docs.unrealengine.com/latest/INT/BlueprintAPI/Math/Random/RandomPointinBoundingBox/index.html
両方ともVector型なので、こんな感じで組み込みます。

サードパーソンのテンプレートにある「?」マークのついた得体のしれないものを
上記の処理で適当に配置してみました。

こんな感じでいい感じに配置できました。
この処理は別途でランダムノードを使って計算すれば同じようなことができたりするのですが
おそらく使い方の想定としては、他のアクターなどからパラメータをとってくるのだと思います。
というわけで「Box Trigger」を配置してやってみます。

上記の「Box Trigger」から範囲を受け取って
「Random Point in Bounding Box」ノードを実行します。

こんな感じですね。
そうすると、配置した「Box Trigger」のコリジョンの範囲に配置されます。

というわけで、直接数値を指定するより、
エディタ上で配置したものの範囲にこれで位置を取得できるので便利なのかなと思います。
ゲームを作るとこういった処理は、
敵のポップ位置だったりで結構使いそうな気がするのでよさそうですね。
| UE4 | 14:37 | comments:0 | trackbacks:0 | TOP↑