AR+
A Web-Based Augmente Reality
Overview
This project explores enhancing user interactions within web-based augmented reality (AR) environments, focusing on the integration of physical IoT devices for a dynamic, real-time AR experience. The aim is to allow users to manipulate 3D objects using tangible inputs like an Arduino Uno board connected to a potentiometer and touch sensor. These tools enable actions such as scaling, positioning, and toggling visibility of virtual objects and data, bridging the physical and digital worlds.
Technical Description
This project leverages AR.js, THREE.js, and A-Frame.js to create an augmented reality environment where virtual objects interact dynamically with physical device inputs. A local server built with Node.js and Socket.IO bridges the communication between the hardware and AR environment, enabling real-time, responsive interactions.
- Scaling and Positioning: A potentiometer lets users adjust object scale and position interactively.
- Visibility Toggle: A touch sensor allows for hiding or displaying 3D elements, giving users control over the AR scene layout.
Tools and Libraries
- Arduino Uno: An open-source microcontroller platform to link physical inputs with digital outputs.
- AR.js: Lightweight AR library for web experiences.
- THREE.js: JavaScript library for 3D rendering.
- A-Frame.js: Framework based on HTML, providing accessible 3D scene creation on top of THREE.js.
- Node.js & Socket.IO: Power real-time, bidirectional communication for seamless hardware-to-web AR interaction.