ZionGames Docs
```cshtml

Home / Zion Modules / Zion XRay

🧩 Zion XRay

Scanner mode, active-objective highlighting, world markers and NavMesh GPS trails for Unity projects.

Troubleshooting

Scanner input does not activate

  • Check that Xray Action is assigned on ZionXRayController.
  • Check that the Input Action has a valid binding.
  • Check that the Input System package and project input settings are configured correctly.
  • Check whether Hold To Activate matches the behaviour you expect.
  • Check that another script is not disabling the assigned Input Action.

GPS trail does not appear

  • Check that ZionXRayGpsTrail is assigned to the controller.
  • Check that scanner mode is active.
  • Check that an active objective has been assigned.
  • Check that your scene has a baked NavMesh.
  • Check that player and objective are both on reachable NavMesh areas.
  • Check that the active objective is not inside an unreachable or disconnected location.

XRay highlight does not appear

  • Check that the target has ZionXRayTarget.
  • Check that the target has ZionXRayTargetHighlighter.
  • Check that the object has a supported renderer.
  • Check that the target has been passed to SetGlobalActiveTarget(...).
  • Check that another target is not still set as the active highlight target.
  • Check that the XRay shader is present and compiles without errors.
  • Use Force Show For Testing briefly to confirm the renderer and shader are working.

One target remains permanently highlighted

  • Check that Force Show For Testing is disabled.
  • Check that the old objective is cleared when a new objective is set.
  • Check that only one transform is passed to SetGlobalActiveTarget(...).

Target switches but XRay does not follow

Make sure your objective-switch code updates both systems:

objectiveProvider.SetActiveObjective(target);
ZionXRayTargetHighlighter.SetGlobalActiveTarget(target);

World marker does not show

  • Check that the HUD and world marker system exist in the scene.
  • Check that the target is registered as an XRay target.
  • Check whether the marker is behind the camera or outside its visibility rules.
  • Check whether the marker is configured for active objective only.