Welcome to Portal-ble! This system allows you to directly manipulate virtual objects in a smartphone augmented reality (AR) environment with your bare hands. Current master branch is for Android only. Please see iOS branch for updates and schedules.
**Important: your android version should be at least >= Ver.7.0 (Nougat) with latest ARCore installed. iOS version >= Ver.13
Website: https://portalble.cs.brown.edu
-
Leap Motion Orion 4.0 (note, Leap Moion Orion 3.2, Orion Beta, or other ealier Leap Motion drivers WILL NOT WORK with our system. Please upgrade to Leap Motion Orion 4.0)
-
Unity Hub + Unity 2019.1.14f1 or Later
-
If somehow the Unity XR / AR dependancies are missing, download the following using Unity Package Manager
Unity ARFoundation 2.1.1
ARCore XR Plugin 2.1.1
ARKit XR Plugin 2.1.1
You do not need the comptue stick if you only want to test the hand tracking in stationary manner. Any 64-bit windows computer can be used as a server.
20 W battery power bank (5V, 4Ah) or equivalent
[Pre-flight] - Check you have installed the Android Studio with Android SDK > 7.0; Leap Motion Orion 4.0 and Using a 64-bit windows computer
[Step 1] - Make sure your smartphone and windows pc are in the same network
[Step 3- plugin Leap Motion device to a Windows 64-bit PC (or Intel computer stick below)] Run this file: .../Portalble/PortalbleServer/x64/Rlease/PortalbleService.exe** You should see message "HMD is all set" at the end of the log.
[Step 4]- Run the android instance on your phone, if it succeeds, you will see a message logs on the PortalbleService.exe window indicating a connection is open. If not check for 1) the ip in Unity scene is the ip of the computer (or compute Unit) with Leap Motion; 2) if PortalbleService is refreshing, if not, click on that window to set focus and press anykey to refresh. You should see your keystroke appears which indicates the window is still alive.
1.1 Copy PortalbleServer to a windows machine / computation unit that has Leap Motion connected.
1.2 Install Leap Motion Orion 4.0 on that windows machine.
2.1 Change the ip address on WebsocketManager (change it to the ip of the windows machine that connects to Leap Motion
2.2 Switch build mode to iOS, click player settings button to change your package name and bundleid.
2.2 Run PortalbleServer/x64/Release/PortalbleService.exe
2.3 You should see headset found or new device ready. If you see error message, check:
- you have the right orion version installed, must be >4.0
- your PortalbleServer is on a 64-bit computer not 32-bit
- you have installed the Leap Motion Driver and can turn on Leap Motion Visualizer to confirm.
3.1 if you have not installed Pod, do sudo gem install cocoapods
- On newer versions of MacOS, you might experience issues with setting
$PATH
. If so, usesudo gem install -n /usr/local/bin cocoapods
3.2 Go to the build folder, and run: pod init
3.3 Open Podfile (using any text editor)
3.4 Find the line "# Pods for Unity-iPhone", below it insert a new line pod 'jetfire', '~> 0.1.5'
- For more information about using Cocoapods, check out this tutorial.
3.5 Save and close the file, and in that directory, run pod install
to install the depencies and create a .xcworksapce
file
3.6 Open Unity-iPhone.xcworkspace
3.7 Select the Unity-iPhone project, link your provisions, and build!
use unity command + b to automatically update the XCode files, no need to do step 4 again if you use command + b
Examples/Grab/BasicGrab.unity
Add Calibration Unity Scene to your project
**Lasercut case and 3D print files are in the folder "3D print and lasercut file". Please also purchase thses suction caps for mounting the leapmotion to your smartphone
How do i edit the Portalble-Unity window menu? change the file in Portalble/Editor/PortalbleWindowManager.cs