Skip to content

DronesManager

4rzael edited this page Sep 1, 2017 · 5 revisions

DronesManager

Role

This script's role is to manage the creation/initialization/destruction of the drones, and to serve as a "proxy" to broadcast functions to all of them.

Interface

  • Drone Prefab : The prefab of the drone to put in the scene.

  • Drone Osc Topic : The drone submodule topic in the drones OSC server

  • Drones Configs

    • Size : The number of drones you own
    • Drone X : A drone
      • Checkbox : Should the drone be used this time
      • text input : radio URI of the drone
      • color picker : the color of the drone GameObject to create
  • Recreate drones : Recreates the drones GameObjects in the scene

  • Remove drones : Removes the drones GameObjects from the scene

Broadcast functions

  • OSC - Connect - all : Asks to every drone to connect through OSC
  • OSC - Start Position Sync : Asks to every drone to start sending the position of the gameObject as a goal
  • OSC - Stop Position Sync : Asks to every drone to stop sending the position of the gameObject as a goal
  • OSC - Reset Kalman Filter - all : Asks to every drone to reset their kalman filters
  • OSC - EMERGENCY - all : Asks to every drone to make an emergency stop

Code

This scripts has some important methods to know about :

  • public IEnumerable<GameObject> GetDronesGameObjects() : returns an enumerable of all drones GameObjects.
  • public IEnumerable<Drone> GetDrones() : returns an enumerable of all Drone scripts.
  • public GameObject GetDroneGameObjectById(int id) : returns the GameObject of the drone with the given ID (or null)
  • public Drone GetDroneById(int id) : returns the `Drone script of the drone with the given ID (or null)
Clone this wiki locally