51 lines
2.7 KiB
Markdown
51 lines
2.7 KiB
Markdown
# AR Mobile Project
|
|
|
|
This project is a mobile augmented reality (AR) demo developed in Unity. It includes components for space measurement, object placement, object detection, and optimized rendering for mobile devices.
|
|
|
|
## Project Structure
|
|
|
|
- **Assets/**
|
|
- **Measurements/**: Scripts and resources for the space measurement component.
|
|
- **ObjectPlacement/**: Scripts and logic for placing objects within the AR environment.
|
|
- **Rendering/**: Scripts for rendering optimization to improve mobile performance by loading only visible objects.
|
|
- **ObjectDetection/**: Scripts and models for object detection using various algorithms (e.g., YOLO, R-CNN).
|
|
- **Models/**: 3D models used in the demo.
|
|
- **Textures/**: Textures associated with the 3D models.
|
|
- **Prefabs/**: Prefabs for objects used in the scene, configured with specific layers and tags.
|
|
- **Scenes/**: Project scenes, including the main scene.
|
|
|
|
## Setup and Requirements
|
|
|
|
- **Unity Version**: This project requires Unity 6 or higher.
|
|
- **AR Foundation**: The project uses AR Foundation and ARCore for augmented reality functionality.
|
|
- **Target Platforms**: Android and iOS.
|
|
|
|
## Components
|
|
|
|
### 1. Space Measurement (Measurements)
|
|
This component enables spatial scanning and generates polygons defining an area where objects can be placed. Measurement data is shared in a specific format for seamless integration with the placement component.
|
|
|
|
### 2. Object Placement (ObjectPlacement)
|
|
This component allows object placement within the area defined by the measurement component. It ensures objects remain within the area and prevents collisions when placing multiple objects.
|
|
|
|
### 3. Rendering Optimization (Rendering)
|
|
Rendering optimization loads only visible objects, which helps reduce memory usage on mobile devices. Selective rendering is based on viewing angles and distance.
|
|
|
|
### 4. Object Detection (ObjectDetection)
|
|
This component uses object detection models to identify pre-existing elements in the environment, such as doors and windows. Testing includes models such as YOLO and R-CNN.
|
|
|
|
## Integration
|
|
|
|
A central GitHub repository has been set up for integration. Each component should be added to its specific folder within `Assets/`. Final integration is handled within the main project scene.
|
|
|
|
## Contributor Instructions
|
|
|
|
1. **Clone the Repository**: `git clone <repository-url>`
|
|
2. **Assets Folder**: Ensure your files are placed in the appropriate folder within `Assets/`.
|
|
3. **Git Workflow**: Commit frequently and update from the main branch before merging.
|
|
|
|
## Credits
|
|
|
|
This project was developed with contributions across measurement, object placement, rendering, object detection, and 3D models, with final integration handled within Unity.
|
|
|