An open API service indexing awesome lists of open source software.

https://github.com/mohamedasad10/smartcity-ar

HONOURS PROJECT. An AR-based educational tool ๐Ÿ‘“ using Unity to visualize and explore urban planning enhancements for Cape Town's Foreshore Freeway Precinct, focusing on pedestrian access, public transport integration, mixed-use developments, and sustainable urban growth.
https://github.com/mohamedasad10/smartcity-ar

augmented-reality research-project theses

Last synced: 6 months ago
JSON representation

HONOURS PROJECT. An AR-based educational tool ๐Ÿ‘“ using Unity to visualize and explore urban planning enhancements for Cape Town's Foreshore Freeway Precinct, focusing on pedestrian access, public transport integration, mixed-use developments, and sustainable urban growth.

Awesome Lists containing this project

README

          

# ๐ŸŒ† SmartCity AR
**An Augmented Reality viewer for sustainable urban planning in Cape Townโ€™s Foreshore Freeway Precinct**

SmartCity AR

Google Sites Link: https://sites.google.com/myuwc.ac.za/smartcityar-masad-bandarkar/home
---

## ๐Ÿ™๏ธ Overview
SmartCity AR is an **Augmented Reality (AR)** application designed to help visualize urban planning proposals for **Cape Townโ€™s Foreshore Freeway Precinct** โ€” an area affected by traffic congestion, poor pedestrian access, and underutilized spaces.

Traditional 2D maps and static diagrams fail to capture how different infrastructure systems interact in three dimensions. SmartCity AR bridges this gap by allowing **planners, architects, students, and the public** to explore 3D planning scenarios **interactively in real-world context**.

---

## ๐ŸŽฏ Project Goal
To develop an AR-based visualization tool that allows users to:

* **Compare** Sustainable vs Unsustainable planning scenarios.
* **Toggle** individual infrastructure layers such as roads, electricity, and water.
* **Simulate** traffic flow across major routes.
* **View** contextual information about city structures and proposed improvements.

---

## ๐Ÿง  Problem Statement
Cape Townโ€™s Foreshore Freeway Precinct suffers from:

* **Chronic traffic congestion**,
* **Underutilized highway structures**, and
* **Limited pedestrian accessibility**.

Urban planning proposals are difficult to interpret because static tools canโ€™t show 3D spatial relationships or mobility interactions. SmartCity AR provides an **interactive, immersive solution** to visualize and evaluate different urban design strategies.

---

## ๐Ÿงฉ Features
### ๐Ÿ”น Functional Features
| Feature | Description |
| :--- | :--- |
| **Toggle Scenarios** | โœ… Toggle between Sustainable and Unsustainable scenarios. |
| **Layer Control** | โœ… Enable/disable infrastructure layers โ€” Roads, Electricity, Water. |
| **Traffic Simulation** | โœ… View realistic traffic flow simulation using object pooling. |
| **Model Navigation** | โœ… Navigate the model using camera focus buttons. |
| **Contextual Info** | โœ… Interactive info buttons for contextual pop-ups. |
| **Reset** | โœ… Reset functionality to return to the main menu. |

### ๐Ÿ”น Non-Functional Features
* **Performance:** โšก Fast scene load time (average: 4.8 seconds).
* **Frame Rate:** ๐ŸŽฎ Smooth performance at 30โ€“46 FPS on mid-range Android devices.
* **Usability:** ๐Ÿ“ฑ Mobile-friendly UI with large, accessible touch buttons.
* **Architecture:** ๐Ÿ—๏ธ Modular architecture for scalability and easy feature additions.

---

## ๐Ÿ—๏ธ System Architecture
The architecture follows a modular, layered design to separate UI, AR logic, and simulation systems for scalability and maintainability.

### Core Components
| Component | Description |
| :--- | :--- |
| `ARAppController.cs` | Controls AR initialization and scene management. |
| `UIController.cs` | Handles user input (toggles, buttons, navigation). |
| `SceneManager.cs` | Manages loading and visibility of infrastructure layers. |
| `RoadPath.cs` | Defines waypoints for vehicle movement. |
| `TrafficSpawner.cs` | Uses object pooling for efficient traffic simulation. |
| `CameraMoveTrigger.cs` | Handles camera transitions to key points of interest. |

---

## ๐Ÿ› ๏ธ Tech Stack
| Layer | Technology |
| :--- | :--- |
| **Engine** | Unity 2022 |
| **Language** | C# |
| **AR Framework** | AR Foundation (ARCore compatible) |
| **3D Modeling** | Blender + Blender GIS (OpenStreetMap integration) |
| **Version Control** | Git + GitHub |
| **Target Platform** | Android (ARCore-supported devices) |

---

## ๐Ÿงช Testing
| Test Type | Focus | Outcome | Future Optimization |
| :--- | :--- | :--- | :--- |
| **Functional Testing** | Infrastructure toggles, camera navigation, scenario switching | โœ… Passed | N/A |
| **Performance Testing** | Scene load time, FPS consistency | โœ… Passed | N/A |
| **Edge Cases** | All layers + full traffic on entry-level device | โš ๏ธ Slight FPS drop below 30 | Implement Level-of-Detail (LOD) for traffic vehicles ๐Ÿš€ Planned |

---

## ๐Ÿ“ฑ How to Run
### ๐Ÿ”ง Requirements
* Unity 2022 or later
* Android device with ARCore support
* USB cable for device deployment

### โš™๏ธ Setup Steps
1. **Clone the repository**
```bash
git clone [https://github.com/](https://github.com/)/SmartCity-AR.git
cd SmartCity-AR
```
2. Open the project in **Unity 2022**.
3. Ensure **AR Foundation** and **ARCore XR Plugin** are installed via the Package Manager.
4. Go to **Build Settings** โ†’ **Android** โ†’ **Build & Run**.
5. Launch the app on your AR-supported device.

---

## ๐Ÿ“ธ Screenshots / Demo
| Sustainable View | Unsustainable View | Traffic Simulation |
| :---: | :---: | :---: |
| SmartCity AR | SmartCity AR | SmartCity AR|

## ๐Ÿ“š References
* OpenStreetMap Data via Blender GIS
* Unity AR Foundation Documentation
* City of Cape Town โ€“ Foreshore Freeway Precinct Redevelopment Reports

---

## ๐Ÿ’ก Future Work
* Add **real-time traffic data integration**.
* Implement **LOD (Level of Detail) optimization** for better performance.
* Develop a **web-based AR viewer** for accessibility without an app.
* Integrate **multi-user collaboration** using cloud anchors.

---

## ๐Ÿง‘โ€๐Ÿ’ป Author
**Mohamed Asad Bandarkar**

* ๐Ÿ“ University of the Western Cape โ€“ BSc Honours Computer Science
* ๐Ÿ“ง [mohamedasad11914@gmail.com]
* ๐Ÿ”— [LinkedIn Profile](https://www.linkedin.com/in/mabandarkar/) |

---