π― Objective
Allow users to select furniture from a catalog and place it virtually in their real-world living room using their phone camera. They can move, rotate, and scale furniture to see how it fits before buying.
π§ Tech Stack & Tools

- Framework: Unity 3D (cross-platform)
- AR SDK:
- ARCore (Android)
- ARKit (iOS)
- Or use Vuforia (works for both iOS & Android)
- 3D Modeling: Blender, Sketchfab, TurboSquid (free/paid 3D assets)
- Languages: C# (Unity scripting)
- Optional Backend: Firebase (for saving user selections, catalogs)
ποΈ Step-by-Step Development
1. Setup Environment
- Install Unity Hub + Unity 2022+ (with AR modules).
- Install ARCore XR Plugin (for Android) or ARKit XR Plugin (for iOS).
2. Create AR Scene
- Open Unity β Create new 3D project.
- Import ARFoundation package (supports both ARCore + ARKit).
- Setup AR Session Origin and AR Camera in the scene.
- Add Plane Manager β Detects flat surfaces like floor or table.
3. Furniture 3D Models
- Get optimized low-poly furniture models (chairs, sofas, tables, beds).
- Export models in
.fbxor.glb. - Import into Unity β place in a βFurniture Catalogβ folder.
4. Place Furniture in AR
- When the user taps on the detected surface, instantiate a 3D model at that position.
- Add gestures for:
- Move (drag on screen)
- Rotate (two-finger rotate)
- Scale (pinch zoom)
5. UI Development
- Add catalog menu (grid view of furniture thumbnails).
- On selection, spawn the chosen model in AR space.
- Buttons: Rotate Left, Rotate Right, Scale Up, Scale Down, Delete.
6. Extra Features (Optional)
- Screenshot button β user can capture & share.
- Save favorite furniture items to wishlist.
- Link to eCommerce API (buy button).
π§© Sample Unity (C#) Script for Placing Furniture
using UnityEngine;
using UnityEngine.XR.ARFoundation;
using UnityEngine.XR.ARSubsystems;
using System.Collections.Generic;
public class FurniturePlacer : MonoBehaviour
{
public GameObject furniturePrefab;
private ARRaycastManager raycastManager;
private List<ARRaycastHit> hits = new List<ARRaycastHit>();
void Start()
{
raycastManager = GetComponent<ARRaycastManager>();
}
void Update()
{
if (Input.touchCount > 0)
{
Touch touch = Input.GetTouch(0);
if (raycastManager.Raycast(touch.position, hits, TrackableType.PlaneWithinPolygon))
{
Pose hitPose = hits[0].pose;
Instantiate(furniturePrefab, hitPose.position, hitPose.rotation);
}
}
}
}
π This script places the selected furniture model where the user taps on a detected surface.
π¦ Deployment
- Build settings β Android/iOS.
- Enable ARCore/ARKit support.
- Test on a real device (not emulator).
- Upload to Play Store / App Store.
β End Result: A mobile app where users can scan their room, tap the floor, and drop virtual furniture in real-time to preview how it looks.
Letβs design the UI/UX flow (wireframe) for your AR Furniture Placement App.
πΌοΈ Wireframe & UI Flow
1. Splash Screen
- App logo + tagline (e.g., βSee it before you buy itβ).
- Quick loading animation.
2. Home Screen
- Top Navigation Bar β App name/logo.
- Buttons / Tabs:
- ποΈ Catalog (browse furniture)
- β Wishlist (saved items)
- βοΈ Settings
3. Furniture Catalog Screen
- Grid/List view of furniture items (thumbnails + name + price).
- Filters: Category (Sofa, Bed, Table, Chair).
- Search bar π for quick item lookup.
- Tap item β Opens AR View.
4. AR View Screen (Main Feature)
This is where the magic happens β¨
Layout:
- Camera Feed β Live view of userβs room.
- AR Plane Detection Overlay β Slight grid to show detected surfaces (floor, table).
- Floating Action Controls (Bottom of Screen):
- π₯ Place Item (tap surface to drop selected furniture).
- π Rotate Left / Right.
- βοΈ Scale Up / Down.
- β Remove Object.
- Top-Right Corner:
- π· Screenshot button.
- π Buy Now (redirect to eCommerce site or checkout).
5. Wishlist / Saved Items
- List of userβs favorited furniture.
- Option to preview again in AR.
6. Settings
- Toggle for measurement units (cm/inch).
- Help & Tutorial (how to use AR).
- App version, contact support.
π¨ Visual Concept (Simple Wireframe Sketch)
-------------------------------------------------
| [App Logo] [βοΈ] |
-------------------------------------------------
| FURNITURE CATALOG |
| [ Sofa ] [ Chair ] [ Table ] [ Bed ] |
| [ img ] [ img ] [ img ] [ img ] |
| Price Price Price Price |
-------------------------------------------------
| [π Search...] |
-------------------------------------------------
AR VIEW SCREEN:
-------------------------------------------------
| [π·] [π Buy] |
-------------------------------------------------
| CAMERA FEED (Room) + AR plane grid |
| |
| [3D Furniture appears here] |
-------------------------------------------------
| [π₯ Place] [π Rotate] [βοΈ Scale] [β Delete] |
-------------------------------------------------
π― User Flow Summary
- Open App β See Catalog.
- Select Furniture β Camera opens with AR view.
- Scan room β Tap surface β Place furniture.
- Rotate, scale, and adjust position.
- Take screenshot OR Buy Now.
- Save item in wishlist for later.