Plane Tracking Project Overview 🧭 Type of Plane Tracked
This project detects horizontal planes using Unity’s AR Foundation and AR Plane Manager components. Horizontal planes are ideal for surface-based object placement such as tables, floors, or other flat surfaces.
⚙️ Implementation Overview
- Welcome UI
A simple two-page Welcome Screen is displayed when the app starts:
Page 1: App title, brief instructions, and a Start button.
Page 2: Contains two toggles — “Enable Haptics” and “Show Planes” — and an interactive Object Size Slider to adjust the preview scale. Pages are switched using GameObject enable/disable logic, managed by the WelcomeUIManager script.
- Plane Detection
Plane detection is handled by AR Plane Manager, configured to detect horizontal surfaces. A plane detection hint text (“Searching for surfaces...”) appears until a plane is found or an object is placed.
- Custom Plane Tracker
The default Unity plane visualization was replaced with a custom textured mesh that displays my full name on it. This mesh appears only when a plane is detected, giving the app a more personalized and professional look.
- Tap-to-Place Functionality
The user can tap once on a detected plane to place a 3D object. Only one object can be spawned — additional taps do not create new instances. After placement, plane detection stops to save performance and focus user interaction.
- Color Selector UI
A simple horizontal color panel is displayed at the bottom of the screen. Clicking a color button instantly changes the spawned object’s material color via the ColorSelector script. A small Alpha Slider allows real-time adjustment of the object’s transparency.
- Object Manipulation
Using the Lean Touch asset, users can:
Pinch to Scale the object
Twist with two fingers to Rotate the object
This gives a natural, interactive AR experience without cluttering the UI.
💡 Summary
This implementation focuses on clarity, interactivity, and simplicity — balancing all required features (UI, custom plane visualization, tap-to-place, color change, and touch gestures) in a clean, easy-to-navigate Unity AR experience.