UDroneをワールドに導入する
ワールドへのインポートと配置
- Unity2022で作成したワールドプロジェクトを作成します。
UDrone_v2.0.unitypackageをインポートしますAssets/UdonDrone/Prefabs以下のDroneManagerプレハブをワールドに設置します(シーンには一つだけ置いてください)。Assets/UdonDrone/Prefabs以下のDroneSetを欲しい台数分設置します。
観戦ディスプレイを配置する
観戦用ディスプレイは現在3種類存在します。
DroneCamFPVViewer
選択したドローンのFPV視点を表示するカメラです。ドローンの切り替えをローカルで行えるようになります。同期の関係でカメラが激しく回転する場合があります。
DroneCamTPVViewer
選択したドローンを三人称視点で表示するディスプレイです。カメラの切り替えはローカルで行えます。
SyncDroneCamFPVViewer
選択したドローンのFPV視点を表示するカメラで、DroneCamViewerと違い、ドローンの切り替えはグローバルになります。同期によりカメラが激しく動いてしまう問題を軽減します。
これらの観戦ディスプレイはシーンにいくつ置いてもOKです。
観戦カメラの映像を別のオブジェクトに映したいとき
ビューワー系のUdonにはRender Texture Assignersという項目があります。

ここに、MeshRendererが存在するオブジェクトにDroneCamRenderTextureAssignerというUdonをアタッチしたオブジェクトをセットすることでそのメッシュのマテリアルに映像のテクスチャを渡すことができます

タイムアタックトラックを設定する
TimeAttackManagerをシーンに追加します。このプレハブは1つだけ設置してください。このプレハブにはタイムアタックを管理する機能が入っています。
次に、TimeAttackTrackをシーンに追加します。CheckpointsにTime Attack Check PointのUdonがアタッチされたオブジェクトを指定し、コースを設定できます。

Time Attack Check PointではLimit Directionを有効にするとこのオブジェクトのZ軸方向に沿った向きでドローンが侵入しないと判定されないようにできます。
TimeAttackLogPanelはプレイヤーのベストラップタイムとベストレコードをログとして出力するパネルです。シーンに追加するだけで機能します。
周回数はTimeAttackTrackのMax Lapから設定できます。
その他ユーティリティ
ResetAllDroneButton
ワールドに設置されているすべてのドローンをリセットするボタンです。シーン上に配置するだけで使えます。
InputChacker
全てのコントローラー入力を可視化するデバッグ用オブジェクトです。 シーン上に配置するだけで使えます。
ドローンの色変更
ドローンの色変更はUdonDroneCoreのDroneColorで設定できます。カラーはエディタ再生時に設定されます。

独自に追加したメッシュのマテリアルに同じ色をつけたい場合は、UDrone/UDroneのDrone Color Applierに指定したいメッシュを追加します。
