Skip to content

Radar

The Radar widget creates a 2D radar display that shows world-space targets as UI blips on a panel.

It works well for cockpit HUDs, minimap-style scanners, top-down tracking displays, and side-view sensors.

TODO: Screenshot

Unlike a Target Indicator, Radar does not place UI over the target's screen position.
Instead, it measures each target relative to an origin and maps that offset into a radar panel.

Radar Component

Add Component -> PlayMaker -> Widgets -> Radar

Field Description
Indicator Panel The RectTransform used as the radar surface. Spawned blips are positioned inside this panel.
Origin Transform used as the radar center, usually the player, ship, or camera rig. If left empty, Radar falls back to the manager camera transform.
Plane Which world-space plane is projected onto the radar: XZ for most 3D games, or XY for 2D and custom setups.
Mapping How the radar fills the panel: Circular for round radars, or Rectangular for box-shaped scanners.
Max Range World-space radius used to normalize target positions into radar space.
Hide Beyond Range If enabled, targets outside Max Range are hidden instead of clamped to the edge.
Rotate With Origin If enabled, the radar rotates with the origin so forward stays up on the display.
Default Prefab Fallback UI prefab used for blips when a target is added without a prefab override.

How It Works

When you add a target, the Radar:

  1. Spawns a UI prefab for the target.
  2. Measures the target's position relative to the radar origin.
  3. Projects that offset onto either the XZ plane or the XY plane.
  4. Maps the result into the radar panel as either a circular or rectangular display.
  5. Optionally clamps targets to the edge or hides them when they go beyond range.

This makes Radar useful when you want an abstract positional display rather than a screen-space marker.

Prefab Requirements

Radar indicator prefabs must:

  • Use a RectTransform as the root
  • Work under the assigned Indicator Panel
  • They can also include Images, TextMeshPro, layout components, and simple animations or effects

Tip

The easiest way to make the prefab is under the canvas in the scene, so you can see it in context, then turn it into a prefab.

Use FSMs to customize the UI based on the target:

Add a Target Object component to the prefab root to store information about the target.

Use Target Widget Get Target to get information from the Target Object component.

Using this data, you can create UI like:

  • Different blip styles for enemies, allies, or objectives
  • Animated pulse effects
  • Distance-based visuals
  • Labels or stat readouts attached to the blip

Actions

Radar uses the shared Target Manager action set:

Setup Steps

  1. Create a UI panel for the radar display.
  2. Add the Radar component to a GameObject.
  3. Assign the radar panel to Indicator Panel.
  4. Assign an Origin transform, usually the player or ship.
  5. Assign a default blip prefab with a RectTransform root.
  6. Choose the correct Plane and Mapping for your game.
  7. Set Max Range to match the area you want the radar to represent.
  8. Use TargetManager Add Target to add targets at runtime.

Example Uses

3D ship radar

  • Plane: XZ
  • Mapping: Circular
  • Rotate With Origin: On
  • Origin: player ship

This gives you a classic forward-facing radar where nearby ships rotate around the player.

2D tactical scanner

  • Plane: XY
  • Mapping: Rectangular
  • Rotate With Origin: Off
  • Origin: player or map center

This creates a flat tracking display for top-down or side-view games.

Tips

  • Use a square Indicator Panel for circular radar displays so the shape stays balanced.
  • If targets disappear unexpectedly, check Max Range and Hide Beyond Range first.
  • Use prefab variants or FSM logic to swap blip colors or icons for different target types.
  • Radar can use either screen-space UI or world-space UI, which makes it useful for HUDs and in-world monitors.

TODO: Screenshot (example radar panel with blips)