Code Monkey home page Code Monkey logo

godot_oculus_mobile's Introduction

Oculus Mobile Godot plugin

Note:
This plugin is in alpha state.
Testing and resolution of remaining issues need to be complete before it's deemed stable and ready for use.
If you'd like to contribute to the testing process, follow the instructions below to setup and use the plugin, and report any issues you encounter. Thanks!

This repository contains the source code for the Oculus Mobile Godot plugin. See demo project as an example for how to use the plugin.

This is an Android only plugin that is only supported on the following Oculus Mobile devices:

  • Oculus Quest
  • Oculus Go
  • GearVR

The use of this plugin require Godot 3.2 or later.

License

  • This project is released under a MIT license.
  • Please check the Oculus Mobile SDK license for information about the Oculus Mobile SDK used in this project.

Setup

After cloning this repository make sure to initialise the submodules with git submodule init. When you've pulled a newer version make sure to run git submodule update.
The project uses cmake as its primary build system, which you can configure by following the setup instructions for the Android SDK & NDK.

Android SDK & NDK

  • Download and setup the Android SDK.
    • If using Android Studio, download version 3.4 or higher.
    • If using the command line tools, download revision 26.1.1 or higher.
    • To ensure you have the latest version, check SDK Manager for updates.
  • Add the Android SDK cmake binaries directory to the environment path. The directory can be found under <android_sdk_location>/cmake/<cmake_version>/bin.
    • Ensure that cmake_version is greater or equal to version 3.6.0.
  • Download and setup the latest version (version r20 or higher) of the Android NDK.
  • Set the environment variable ANDROID_NDK_HOME to the Android NDK location.

Godot headers

By default the project is configured to checkout the godot_headers repo as a submodule under the godot_headers directory when you run the git submodule init and git submodule update commands.
You can edit the GODOT_HEADERS_DIR cmake variable in the CMakeLists.txt build file if you'd like to provide a different source for the Godot headers.

Oculus Mobile SDK

  • Download the latest version (version 1.24.0 or higher) of the Oculus Mobile SDK into a sub-directory of the ovr_sdk_mobile directory. It's recommended to use the SDK version as the sub-directory name (e.g: ovr_sdk_mobile/1.24.0/ for version 1.24.0 of the Oculus Mobile SDK).
  • Update the OVR_ROOT_DIR cmake variable in the the CMakeLists.txt build file to point to the Oculus Mobile SDK root directory.

Build

Note: Ensure you're using the Android SDK's version of cmake.

In the project root directory:

  • Navigate to the build directory: cd build
  • Run:
cmake -GNinja ..
cmake --build .

Once the build successfully completes, the plugin and its dependencies shared libraries can be found in the default output location: demo/addons/godot_ovrmobile/libs/<arch>

Deployment

When exporting the project apk in Godot, make sure that Xr Mode under the Android export Graphics section is set to Oculus Mobile VR.

godot_oculus_mobile's People

Contributors

bastiaanolij avatar creikey avatar m4gr3d avatar neospark314 avatar paritosh97 avatar schroedi avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.