Materials

Materials editor showing four named materials: Bronze (expanded), Joint, Head, and Mouth

In 3D robotics modeling, a Material dictates the precise visual appearance of an underlying physical link. Just as a physical robot might be constructed from brushed aluminum, glossy red plastic, or carbon fiber, URDF materials allow you to define exact RGBA color properties or wrap external image textures globally across your model surface.

Materials are defined at the very top level of a robot model and can be referenced by name from any link inside the hierarchy. The ARMOR Materials editor lets you cleanly add, rename, and update these surface properties using native color pickers and file wrappers—ensuring perfect serialization without editing the raw XML. For the official specification, see the ROS URDF material documentation.

Editor Interface

Open the Robot Editor from the toolbar and tap the Materials row. Each material appears as a disclosure group dynamically mapping to the URDF format:

URDF Material Structure

A URDF <material> tag specifies exactly how simulated light interacts with the geometry geometry. ARMOR’s editor exposes every valid property strictly matching the global specification:

Core Properties

Field Description
Name A required unique string identifier (e.g., 'Bronze' or 'Chassis_Red'). Any link mapping to this name will instantly inherit its appearance.
Type A categorized toggle switching the material strictly between an underlying color tuple or an external texture image.

Color Mapping

When the material type is set to color, ARMOR invokes an interactive visual picker that writes directly to the standard URDF color tags:

Field Description
RGBA A set of four floating-point numbers [r, g, b, a] ranging from 0.0 to 1.0 representing Red, Green, Blue, and the Alpha (opacity) channel.

Texture Mapping

When the material type is set to texture, ARMOR swaps the visual input vector to a file-referencing string targeting an external 2D image asset:

Field Description
Filename The relative path string tracking a 2D image asset (e.g., .png, .jpg) to be mapped sequentially over the referenced 3D geometry.

Once defined globally inside the editor, applying a material simply requires mapping its Name directly onto the link’s visual parameters.

<visual>
  <geometry>...</geometry>
  <material name="Bronze"/>
</visual>

When you update the core ‘Bronze’ material via the ARMOR system color picker, all links visually adopting that material instantly update across your entire 3D viewer!