(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

(:3[kanのメモ帳]


本ブログの運営者kan.kikuchiが個人で開発したゲームです!


指定したルートに沿ってオブジェクト(Prefab)をランダムに配置する方法 【Unity】【Splines】


このエントリーをはてなブックマークに追加


この記事でのバージョン
Unity 2022.3.32f1
Splines 2.5.2


はじめに

以前、Unityのシーン上で簡単になめらかな曲線を作れるSplines(スプライン)の紹介をしました。


今回はそのSplinesを使って、

指定したルートに沿ってオブジェクト(Prefab)をランダムに配置する方法の紹介です!

(導入や使い方は上記の記事を参照の事)


なお、記事中では以下のアセットを使っています。

Low Poly Ultimate Pack | 3D Props | Unity Asset Store



指定したルートに沿ってオブジェクトをランダムに配置

まず、Splinesで以下のような曲線を作ります。


次にSplines InstantiateというコンポーネントをAddし、そのContainerに先程のSplinesを設定します。


あとはItems to Instantiateに並べたいPrefabを設定し、

Spacingで間隔を設定すれば、等間隔でオブジェクトを並べる事が出来ます。


また、位置や角度、スケールをランダムにしたい場合はOffsetをRandomにすればOKですし、


複数種類のPrefabを設定し、%を設定すれば、自動的にその割合で設置されます。


乱数のシードも表示されているので、


ここを変えれば、ランダムにしている所も変わります。


さらにBake Instanceを押せば、


現在表示されている状態でオブジェクトのインスタンスが配置されます。

(同時にコンポーネントも消される)



参考