An immersive Augmented Reality stack builder game developed for Android using Google's ARCore SDK and Unity Engine.
Authors · Overview · Features · Structure · Quick Start · Usage Guidelines · License · About · Acknowledgments
Terna Engineering College | Computer Engineering | Batch of 2022
![]() Amey Thakur |
![]() Hasan Rizvi |
Special thanks to Hasan Rizvi for his meaningful contributions, guidance, and support that helped shape this work.
The AR Stack Builder Game is a Computer Graphics Mini-Project designed to explore the capabilities of Augmented Reality (AR) in mobile gaming. By leveraging Google's ARCore for plane detection and tracking, and Unity for 3D rendering and physics, this game allows players to stack 3D blocks in their real-world environment.
The objective is simple yet challenging: build the highest stack possible without letting it topple over, testing both the player's precision and the stability of the virtual structure in the physical world.
Tip
Technical Customization
To analyze game difficulty or physics behavior, the moveSpeed variable in MovingCube.cs (Line 28) can be modified. Incremental adjustments to this parameter allow for the evaluation of user reaction times and precision in augmented environments.
| Feature | Description |
|---|---|
| Immersive AR | Places game elements in the real world using plane detection |
| Physics Engine | Realistic gravity and collision simulation for stacking blocks |
| 3D Rendering | High-quality 3D assets rendered using Unity Engine |
| Touch Controls | Intuitive touch interface for positioning and dropping blocks |
- Engine: Unity 3D
- AR SDK: Google ARCore
- Language: C#
- Platform: Android
AR-STACK-GAME/
│
├── docs/ # Formal Documentation
│ └── SPECIFICATION.md # Technical Architecture & Spec
│
├── Source Code/ # C# Source Files
│ ├── ARPlacementManager.cs # ARCore Plane Detection & Placement
│ ├── CubeSpawner.cs # Block Instantiation & Spawning
│ ├── MovingCube.cs # Physics, Movement & Slicing Logic
│ └── StackManager.cs # Game State Controller & Scoring
│
├── .gitattributes # Git Line Ending Configuration
├── .gitignore # Git Ignore Rules
├── AR-Stack-Game.apk # Production Android Build (22.8 MB)
├── ARStackGame.unitypackage # Unity Asset Exchange Package (3.6 MB)
├── CITATION.cff # Citation Metadata
├── codemeta.json # Project Metadata (JSON-LD)
├── LICENSE # MIT License
├── README.md # Project Documentation
└── SECURITY.md # Security Policy & Posture
- Android Device: Optimized for devices supporting Google Play Services for AR (ARCore).
- Camera Access: Explicit camera permissions are required for real-time environment mapping and plane detection.
- Environment: Operates best in well-lit areas with textured surfaces (e.g., patterned floors or rugs) to assist AR tracking stability.
Warning
Hardware & Environmental Requirements
This application requires an ARCore-compatible Android device. Successful environmental mapping is highly dependent on ambient lighting and surface texture; low-light conditions or reflective/featureless surfaces (like plain white tables) will result in tracking failure or virtual drift.
-
Download the Artifact Download the production-ready build directly from the repository:
AR-Stack-Game.apk -
System Configuration
- Locate the
.apkfile in your device's file manager. - Enable "Install from unknown sources" in System Settings if prompted.
- Proceed with the installation.
- Locate the
-
Environment Initialization
- Launch the application and grant Camera Permission.
- Surface Mapping: Move the device in a slow, circular motion while pointing at a flat surface. Visual indicators will appear once the ARCore engine successfully identifies a valid horizontal plane.
-
Gameplay Execution
- Place Foundation: Tap the detected plane to instantiate the game's base.
- Stack Blocks: Tap the screen to drop oscillating blocks. Precision is critical; portions of the block extending beyond the previous layer will be sliced, reducing the surface area for subsequent stacks.
This repository is openly shared to support learning and knowledge exchange across the academic community.
For Students
Use this mini-project as a reference for understanding Augmented Reality (AR) implementation, Unity physics, and mobile game development. The source code is documented to support self-paced learning and exploration of real-time environmental mapping.
For Educators
This project may serve as a practical example or supplementary teaching resource for Computer Graphics courses (CSC404 / CSL402). Attribution is appreciated when utilizing content.
For Researchers
The documentation and organization provide insights into academic project curation and educational software structuring.
This repository and all linked academic content are made available under the MIT License. See the LICENSE file for complete terms.
Note
Summary: You are free to share and adapt this content for any purpose, even commercially, as long as you provide appropriate attribution to the original author.
Copyright © 2020 Amey Thakur, Hasan Rizvi
Created & Maintained by: Amey Thakur & Hasan Rizvi
Academic Journey: Bachelor of Engineering in Computer Engineering (2018-2022)
Institution: Terna Engineering College, Navi Mumbai
University: University of Mumbai
This project features the AR Stack Builder Game, an immersive augmented reality application developed as a 4th-semester mini-project for the Computer Graphics course. It showcases the practical integration of Unity's 3D rendering capabilities with Google's ARCore SDK for real-world plane detection and physics-based interactions.
Connect: GitHub · LinkedIn · ORCID
Grateful acknowledgment to Hasan Rizvi for his pivotal role and collaborative excellence during the development of this project. His technical expertise, innovative contributions to AR integration, and dedicated commitment to software quality were fundamental in achieving the project's immersive and functional objectives. This technical record serves as a testament to his scholarly partnership and significant impact on the final implementation.
Special thanks to the faculty members of the Department of Computer Engineering at Terna Engineering College for their guidance during the course of this project. Gratitude is also extended to the mentors and peers who supported this learning endeavor.
Authors · Overview · Features · Structure · Quick Start · Usage Guidelines · License · About · Acknowledgments
Computer Engineering (B.E.) - University of Mumbai
Semester-wise curriculum, laboratories, projects, and academic notes.

