Quick answer: Unity AR Foundation image-tracked anchor losing its position when switching to world tracking? Image tracking subsystem owns the anchor; mode swap destroys it - re-anchor on subsystem change.

AR app shows a model anchored to a printed marker. Disable image tracking to expand to world tracking; model jumps.

Re-anchor on subsystem swap

ARSession.stateChanged += (s) => {
  if (s.state == ARSessionState.SessionTracking)
    Reanchor();
};

Listen for state changes; re-anchor model to world space on swap.

Or use ARAnchorManager

Create a persistent world anchor from the image tracking's pose. Survives subsystem changes.

Avoid subsystem swaps mid-session

If you can, design the UX so the user doesn't swap modes. The swap is the trigger for most AR bugs.

“AR subsystems are independent. Cross-subsystem state requires explicit bridging.”

Test the mode-swap path explicitly. Each subsystem combination is its own test case; the matrix grows quickly.

Related reading