Skip to content

Target Indicator

The Target Indicator widget creates UI brackets, nameplates, labels, or icons that are attached to world-space targets when they are visible on screen.

Example Offscreen Indicator

Common uses include enemy brackets, NPC nameplates, loot markers, objective tags, and distance labels.

Target Indicator Component

Add Component -> PlayMaker -> Widgets -> Target Indicator

Setup the component in the scene and then use actions to add targets etc.

Target Indicator UI

Field Description
Camera Camera used to project target world positions into screen space.
If left empty, the widget uses Camera.main.
Indicator Panel The RectTransform that acts as the UI space for spawned indicators.
Targets are projected into this panel each frame.
Hide When Offscreen If enabled, indicators are hidden when the target is outside the camera view or behind the camera.
Clamp To Panel Keeps indicators inside the bounds of the Indicator Panel.
This is useful when you want labels or brackets to stay visible instead of spilling outside the panel.
Default Prefab Fallback UI prefab to spawn when adding a target without a prefab override.
See Prefab Requirements.
World Offset Optional world-space offset added before projecting the target position. This is commonly used to place the indicator above or below the target.
Sort By Distance If enabled, nearer targets are drawn on top of farther ones by updating sibling order before layout.

How It Works

When you add a target, the Target Indicator:

  1. Spawns a UI prefab (brackets, name label, health bar, etc.).
  2. Tracks the target’s screen position each frame.
  3. Keeps the indicator pinned to the target as the camera moves.

Prefab Requirements

Target Indicator Prefab

Indicator prefabs must:

  • Use a RectTransform as the root
  • Work under a screen-space Canvas managed by the widget
  • They can also include Images, TextMeshPro, and layout components

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 complex UI like:

  • Brackets that scale with distance
  • Nameplates that change color
  • Health bars that track target stats
  • Labels that hide when occluded

Actions

Target Indicator uses the shared Target Manager action set:

Tips

  • Target Indicators and Offscreen Indicators work well together:
    • OffscreenIndicator shows direction when target is out of view.
    • TargetIndicator shows brackets and labels when the target is visible.
  • You can nest meters, labels, or other UI Widgets inside the prefab.
  • A single manager can track many targets efficiently.