Skip to content

CylonSpace/janus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

janus-vr

Janus VR source code is released with a GPLv3 license:

https://www.gnu.org/licenses/gpl.html

Additional deployment notes:

Before building, copy and rename the following: riftid.txt.sample to riftid.txt, gearid.txt.sample to gearid.txt, and googleanalyticsid.txt.sample to googleanalytics.txt. Update these files with specific app IDs where necessary (for publishing to platforms like Oculus Home or Android/Google Play storefronts). Generate a key store file to build a signed version for Android.

Building on windows

  1. Download and install MSVC 2017 community version (64-bit).
    Do not forget to check the "C++ development box".

  2. Download and install Qt 5.9.4 https://download.qt.io/official_releases/qt/5.9/5.9.4/

    Make sure to select the release compatible with 64-bit MSVC 2017, and check QtScript.

    During the installation, make sure msvc2017-64bit is selected in the "Select Components" screen.

  3. Clone the janus-vr repo

  4. Open the project in Qt Creator by pointing it towards $CONTAINING_DIR\janus-vr\Firebox.pro

    (At this point, the project should build successfully.)

  5. Download and install the latest Janus release from janusvr.com. Go to the install location (e.g. C:\Program Files\Janus VR) and copy the assets and other plugin folders. Copy the .dll files in the janus-vr repo in dependencies\windows. Also copy janusvr_websurface.exe. Paste the things you copied in your build folder (where the janusvr.exe that you built is located).

    • If your build is a release build, you should now be able to run your executable.
    • If your build is a debug build, copy and paste the Qt debug dlls to the same location. Those can be found where you installed Qt (e.g. C:\Qt\5.9.4\msvc2017\bin)

    Qt Creator will look for those files in a different location, so in order to run from inside Qt Creator, you will also need to paste those things in the folder containing janusvr.exe (one level up from where you just pasted).

  1. For debugging on Windows when compiling with MSVC 2017, you will need to install additional Debugging Tools for Windows, which are packaged with the Windows Driver Kit:

https://developer.microsoft.com/en-us/windows/hardware/windows-driver-kit

Building on linux (Ubuntu 16.04 LTS; Debian 8.5)

  1. Install Qt 5 and Qt Creator, g++, OpenGL libraries:

    • sudo apt-get install qtcreator qt5-default build-essential mesa-common-dev git git-lfs
  2. Clone the janusvr repository and enable git-lfs:

  3. Install remaining library dependencies:

    • sudo apt-get install libbullet-dev libopenal-dev libopus-dev libvorbis-dev libudev-dev libvlc-dev libopenexr-dev libudev-dev vlc zlib1g-dev qt5-default g++ mesa-common-dev libilmbase-dev
  4. (Optional, for reference) Build and install OpenEXR:

    • cd ./resources/openexr-2.2.0
    • ./configure
    • make
    • sudo make install

Note: if updating cmft, edit main.lua and comment out strip(), otherwise the generated libcmftRelease.a will not work

Building on OS X

  1. Install Qt 5.5 and Qt Creator (http://download.qt.io/archive/qt/5.5); during installation make sure clang 64-bit is selected in the "Select Components" screen

  2. Clone the janus-vr repo

  3. Install remaining library dependencies:

    • brew install opus
    • brew install bullet
    • brew install libvorbis
    • brew install mpg123
    • brew install assimp

    If brew is not installed, copy and paste the following into the terminal:

  4. Build Janus from inside QtCreator. Download and install the latest Janus release from janusvr.com. Go to the install location and view the Contents of the app. Copy the assets folder and .dylib (e.g. libLeap and libopenvr_api) files (in Applications/janusvr.app/Contents/MacOS/) and paste them to the built .app (e.g. in $BUILD_DIR/janusvr.app/Contents/MacOS/)

  5. Sign the app with the following (if you have the correct certificate):

    • codesign --deep janusvr.app -s "Janus VR Inc."
  6. Use macdeployqt to deploy Janus as a .dmg file. From the terminal, go to the build directory and enter the following comamand (replacing the user name):

    • /Users/user/Qt/5.5/clang_64/bin/macdeployqt ./janusvr.app -always-overwrite -dmg janusvr.dmg

    The .app should now be executable.

    Note: If the macdeployqt does not work, you may need to install mysql55 and libpq (and correctly link the files) as described here:

Building for Android (on Mac/Windows)

  1. Download and install the stuff mentioned here: http://doc.qt.io/qt-5/androidgs.html

  2. Make sure JDK/bin is higher in the PATH environment variable; Make sure stuff in the PATH environment variable does not contain sh.exe (e.g. Git; if so remove it from the PATH)

  3. Install system images of desired OS that are needed through $SDK_DIR/tools/android.bat

  4. Create AVDs through $SDK_DIR/tools/android.bat with the argument "avd"

  5. In QtCreator, go to Tools>Options>Android; set the JDK location, Android SDK location, Android NDK location, Ant executable (location of ant.bat)

  6. For Windows, make sure emulator is on while building/installing/running an application. Apps need to be built from command line or the build steps in QtCreator must be changed:

    • After running QMake either from the command line or QtCreator, run the following in the directory with the makefile:

      • C:\Qt\Tools\mingw492_32\bin\mingw32-make install INSTALL_ROOT=.\Deploy
      • androiddeployqt --output .\Deploy --install --input android-lib2dpainting.so-deployment-settings.json

Note: For the Android build, libxul is not in the repo (due to file size limits). You will need to have a local copy of it in the dependencies folder in order to build the app.

ADB Tool Tips

ADB is a tool used for communicating with Android devices. Some useful commands:

- For obtaining debug logs:
            - adb logcat
- Clearing debug log
            - adb logcat -c
- For perf info for the Go:
            - adb logcat | grep -e UtilPoller -e VrApi
- For installing/uninstalling Janus APKs:
            - adb install <APKNAME>
            - adb uninstall org.janusvr
- For starting and stopping the Janus app
            - adb shell am start org.janusvr/org.janus.JanusActivity
            - adb shell am force-stop org.janusvr
- For setting properties used by the Go:
            - adb shell setprop debug.oculus.foveation.level 3
            - adb shell setprop debug.oculus.adaclocks.force 0

Common issues and fixes

  • If you encounter mysterious linking errors after having just added a class, try cleaning the project, running qmake, and rebuilding.

About

JanusVR client for desktop and mobile

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published