Cellulo experiment with the LÖVR virtual reality framework
Recent Commits
Commit | Author | Details | Committed | ||||
---|---|---|---|---|---|---|---|
20a758325fba | ulydev | correct headers | Jun 19 2020 | ||||
cf923cba5d95 | ulydev | replace io with lovr.filesystem | Jun 19 2020 | ||||
57e6e4c7782d | ulydev | correct filename | Jun 19 2020 | ||||
9bb239d4afa1 | ulydev | set project identity | Jun 19 2020 | ||||
26a2b47b8437 | ulydev | draw grid | Jun 19 2020 | ||||
6adc14514250 | ulydev | add grid lib | Jun 19 2020 | ||||
c3407ef1d099 | ulydev | remove velocities for post-processing | Jun 19 2020 | ||||
a1e0370ab680 | ulydev | set initial log values | Jun 19 2020 | ||||
1fcf8c3a9a8f | ulydev | create class Logger | Jun 19 2020 | ||||
2bec3123255d | ulydev | create class Experiment | Jun 19 2020 | ||||
497f1a165b93 | ulydev | enable keyboard only on macos | Jun 17 2020 | ||||
a9eaa0ef1c0e | ulydev | Merge branch 'master' of https://c4science.ch/source/cellulo-lovr | Jun 15 2020 | ||||
b35c6c785050 | ulydev | add cellulo mock controls (ijkl, uo) | Jun 15 2020 | ||||
173576a93955 | ulydev | add camera mode "third person" | Jun 15 2020 | ||||
2a69ef75fdbf | khodr | Merge branch 'master' of https://c4science.ch/source/cellulo-lovr | Jun 4 2020 |
README.md
Cellulo-lua
Bachelor Project - see report.pdf
The purpose of this project is to develop a virtual reality experience to explore human behaviour within a swarm, using the Oculus Quest VR headset and Cellulo robots developed by the Computer-Human Interaction in Learning and Instruction (CHILI) lab at EPFL.
Installing LÖVR
This project uses the LÖVR framework, which needs to be installed on the desired platform to run.
*Note that if running on an Android platform such as the Oculus Quest, LÖVR only needs to be installed on the headset, not the computer where you are editing the project.*
Linux
git clone https://github.com/bjornbytes/lovr git submodule init git submodule update cd lovr mkdir build cd build cmake .. cmake --build .
Other platforms (Windows, macOS, Android)
See LÖVR downloads page for official builds of the framework.
Launching
Run with lovr . to run on the local development machine.
Android
To run on a remote Android platform (e.g. Oculus Quest), plug the device into the computer and install the LÖVR apk (adb install lovr.apk)
Once installed, you can push local files to the LÖVR game source folder on the Android device. This project uses the lodr library to automatically restart the app when a file is modified.
Navigate to the root of the project and run watch adb push --sync . /sdcard/Android/data/org.lovr.cellulo/files/.lodr. The watch command will automatically look for changes locally every few seconds. To push files only once, remove it.
Testing
*luaunit* is used for unit tests.
LÖVE needs to be installed.
Navigate to the root of the project and run with love test
Setting on the Quest:
- Enable developer mode on the app.
- sudo adb kill-server
- sudo adb start-server
- Adb devices (on the quest you should authorize)
- adb install lovr-cellulo.apk
(if error during installing-> change cable) [it didn't work with the cable of the quest]
- (you have to be in the folder celulo-lovr): watch adb push --sync . /sdcard/Android/data/org.lovr.cellulo/files/.lodr
- 3 apks should be installed to connect to cellulo (can be found in apk folder):
- QuestAppLauncher so that we can launch 2D apps
- Cellulo_robot_pool_service.apk : service to launch pool
- Cellulo_robot_pool_gui.apk: pool gui to connect to cellulo
- On the Quest the order the QuestAppLaunch is Library-> Unknown Sources -> QuestAppLauncher.
- Then go to tab 2D you will see both cellulo_pool apks.
- Launch cellulo_pool_service and click on start service
- Launch cellulo_pool_gui and scan and connect to the robot
- You can quit by going to the pressing menu on the joystick -> library-> cellulo.lovr.apk