Skip to main content

ARIOT — Augmented Reality for Building Information Modeling

A full-stack, cross-platform system for visualizing architectural Building Information Models (BIM) in Augmented Reality, on the web, and through a Microsoft HoloLens spatial computing interface.

More screenshots

Progress80%

Overview

ARIOT bridges the gap between architectural design and on-site construction by letting stakeholders walk through a building that doesn't yet exist. Using a smartphone or a HoloLens headset, users can place a full 3D building model into real-world space, inspect individual structural elements, review metadata, and collaborate — all from a live IFC file uploaded to the cloud.

The system spans four interconnected layers: native AR apps for Android and iOS, a browser-based 3D viewer, and an ASP.NET backend that handles model ingestion, processing, cloud storage, and real-time progress streaming.


What It Does

  • AR on Android (ARCore): Detects horizontal surfaces and places scaled building models anchored to the real world. Users can walk around the model, tap elements to inspect BIM metadata, and interact with the spatial layout in context.
  • AR on iOS (ARKit): Feature-equivalent iOS experience with ARKit integration, including face tracking support for novel visualization modes.
  • WebGL Viewer: A Unity-compiled browser application for stakeholders who don't have a mobile device on-site. Supports OBJ model import, orbit/pan/zoom camera controls, and a transformation gizmo for precise inspection.
  • Backend API: A RESTful .NET service that ingests raw IFC files, converts them to Unity-compatible geometry and asset bundles, stores output on AWS S3, and streams progress back to clients in real time via SignalR.

Technical Highlights

BIM Processing Pipeline

IFC is the open standard for architectural data — it encodes not just geometry but semantics: this mesh is a wall, that volume is a space, these edges define a door. ARIOT parses IFC files using the Xbim library, extracts tessellated geometry per element, and packages it into Unity asset bundles for mobile delivery. The pipeline handles the full IFC entity graph including IfcSpace, IfcWall, IfcDoor, and composite elements.

Cross-Platform AR

Both mobile apps are built on AR Foundation, Unity's cross-platform XR abstraction layer, with platform-specific plugins (ARCore for Android, ARKit for iOS) handling sensor fusion, plane detection, and world tracking. A single shared codebase drives both platforms with thin per-platform adapters.

Real-Time Feedback

Long-running server-side operations (IFC conversion, asset bundle creation) stream progress back to connected clients over SignalR WebSockets, giving users live feedback instead of polling.

Cloud Storage

Processed models and asset bundles are stored on AWS S3, decoupling storage from compute and enabling fast delivery to mobile clients regardless of device platform.


Stack

LayerTechnology
Mobile ARUnity 2019.1, AR Foundation, ARCore, ARKit
Web ViewerUnity WebGL, OBJ Loader, Three.js-compatible pipeline
BackendASP.NET MVC 5 / Web API 5, .NET 4.5.2
BIM ProcessingXbim.Essentials 4.0 (IFC parser + tessellator)
Real-TimeSignalR 2.2
DatabaseSQL Server on AWS RDS, Entity Framework 6
Cloud StorageAWS S3 (AWSSDK 3.3)
AuthASP.NET Identity, OAuth, OWIN
ReportingNPOI (Excel generation)

Architecture

Mobile Apps (Android / iOS)         Web Browser
       │                                 │
       └──────────┬──────────────────────┘
                  │  REST + SignalR
          ┌───────▼────────┐
          │  ASP.NET API   │
          │                │
          │  IFC Converter │──────▶ AWS S3 (models, bundles)
          │  Asset Bundler │
          │  Progress Hub  │──────▶ SQL Server RDS (metadata)
          └────────────────┘

Full-stack development across all four layers — Unity AR client code, backend API design and implementation, BIM processing pipeline, and cloud infrastructure integration.