4個目のTerrain系アセット TerrainDividerが審査を通ったので紹介します。

 

このアセットは、巨大Terrainを分割し負荷を分散するために作りました。
約4000 x 4000サイズほどのTerrainで、30fpsまで落ち込んでしまうところが60fpsに回復したので、用途次第では効果は大きいです。

使用する時は、元になる巨大Terrainのあるシーン上で、メニュー [ Tools => Terrain Divider ] を選びます。
出てくる拡張エディタウィンドウで設定をして、[ Run ] ボタンを押せば分割処理が始まります。
設定によっては凄く時間が掛かるので、32分割までで使用する事をお勧めします。

WS000511

分割後は自動的にコンポーネントなどが追加され、プレイヤーが近づくと読み込まれるように設定されます。
プレイヤーの接近は、BoxColliderによる物理判定とタグで検出しています。
プレイヤーにRigidBodyが付いていない場合、判定が取れません。
どうしてもプレイヤーにRigidBodyを付けれない理由がある場合は、分割後に生成されたTerrainLoaderにRigidBodyを付加することでも機能すると思います。

Terrainと同時に読み込まれるオブジェクト(家などの建造物)は、分割前にTerrainの子オブジェクトにしておくか、分割後に手動で追加する事が可能です。
追加読み込みオブジェクトは、Resourcesフォルダの下にあるプレハブのみ使用出来ます。

WS000488

マニュアル(英語)などもありますので、そちらのほうもチラっと見て頂ければ、さらによく分かるかと思います。