How to Modify a Drone’s Visual Appearance

A drone’s appearance can be easily changed by modifying the visual: geometry: name reference in the Frame link of its robot config to any mesh path that is included in the Unreal environment. This can be any custom mesh that has been imported into the environment, or a standard Unreal Engine primitive mesh such as a cone shown below:

"links": [
  {
    "name": "Frame",
    "inertial": {...},
    "collision": {...},
    "visual": {
      "geometry": {
        "type": "unreal_mesh",
        "name": "/Engine/BasicShapes/Cone"
      }
    }
  },
  ...
]

Drone as a cone

How to import a custom mesh

To use a custom mesh, it first needs to be imported into Unreal.

Once the asset is available in the environment’s Content Browser, its content path can be found by hovering over the asset and combining the asset’s listed Unreal Path with the mesh’s name. For example, the Quadrotor1 mesh in the Drone plugin has Unreal Path = /Drone so the full path is /Drone/Quadrotor1. This full path can then be used as a visual: geometry: name string to be loaded for the robot’s Frame link when the simulation starts.

If the mesh size needs to be visually adjusted, you can use the scale setting to modify the scale on its “X Y Z” axes.

Note: Any link’s scaling will be inherited by its child links in the tree, so the child links may need to also be adjusted to compensate.

Example of uniform 2x mesh scaling:

"geometry": {
  "type": "unreal_mesh",
  "name": "/Drone/Quadrotor1",
  "scale": "2.0 2.0 2.0"
}

Copyright (C) Microsoft Corporation. All rights reserved.