Gear VR ES3 and generall development questions

Discussion of issues specific to mobile platforms such as iOS, Android, Symbian and Meego.
ares_the_devil
Gnoblar
Posts: 2
Joined: Tue Feb 16, 2016 10:24 am

Gear VR ES3 and generall development questions

Post by ares_the_devil »

Hey everyone,

last week I started working on a Gear VR project. I started looking into the development possibilities and I would like to work as native as possible, which means using Android 5, the oculus mobile sdk and C++ using NDK. I haven't done any OGRE development before, but I would like to get started and I am not sure if I can use OGRE for my project.

The Gear VR forces me to use OpenGL ES3. According to the features posted on the main page, ES3 is supported. According to the wiki ChangeLog for the last official release (1.9) the support of ES3 is experimental. If I understood correctly there are not released yet but available versions 1.10, 2.0 and 2.1. On the most recent news report the statement is made that version 2.1 doesn’t run on Android yet. If I read post in the forum correct 1.10 can be used for Android, but I didn't manage to find any information in regards to version 2.0 and Android. I am also wondering about the current challenges in getting 2.1 working on Android? I did not manage to find any information in regards of ES3 on versions 1.10, 2.0 and 2.1 either.

I started trying to build the version 1.9 to my android phone following the guide here. But I am running into many problems, although I probably will make another post about this soon. If I generally get the way OGRE development for Android is done; a non Android project is created, this project is then build into an Android application, and that's it. But can I possibly create an Android project using NDK, in which the native code uses the OGRE libraries (-> includes and references within the C++ code), or wouldn't this work?

Tldr; So in general I have a couple of questions:
  • 1. Has anyone tried developing for the Gear VR, and if yes: any comments in regards to developing OGRE for Gear VR?
    2. Can anyone explain to me the current Open GL ES support?
    3. How exactly do the different current versions work in regards to Android and what are the reasons for the not yet supported 2.1 on Android (what are the current challenges)?
    4. In regards to the development for Android; can I successfully create an Android application which has a Native code (C++) part, in which this native code part uses the OGRE libraries?
Thanks a lot
User avatar
Wolfmanfx
OGRE Team Member
OGRE Team Member
Posts: 1525
Joined: Fri Feb 03, 2006 10:37 pm
Location: Austria - Leoben
x 99

Re: Gear VR ES3 and generall development questions

Post by Wolfmanfx »

Hi,

Yes we support GLES3 (you have to enable it via CMAKE). NDK is also supported.
I would say you should compile ogre for android using this guide http://www.ogre3d.org/tikiwiki/tiki-ind ... ht=android

1.10 is the current default branch on bitbucket.

best regards
ares_the_devil
Gnoblar
Posts: 2
Joined: Tue Feb 16, 2016 10:24 am

Re: Gear VR ES3 and generall development questions

Post by ares_the_devil »

Hey,

thx for the response.

Some more questions in regard to the enabling of GLES3. I did some looking around but I didn't find any information regarding activating it, the wiki seems to be outdated in that regard. Nevertheless I am looking at that wiki page and I am trying to enable it using the Cmake gui. The android guide explains building OGRE using console. Can I enable GLES3 using console and if yes how can I do that? How does it work with the OGRE dependencies, can/should I build them also enabling GLES3? Within the cmake gui there are multiple GLES3 related options. Which options should I set in what way? I noticed a couple of things which made me feel unsure about the process using the "automatic" configure which the android tool-chain file produced after I clicked configure in the gui.
  • 1. There is for instance within the Ungrouped Entries group the OPENGLES3_gl_LIBRARY entry which (trough the auto configure) points at libGLESv2.so instead of the libGLESv3.so (within my ndk platform folder), is this correct or should I change it?
    2. I found within the OGRE group the OGRE_BUILD_RENDERSYSTEM_GLES and OGRE_BUILD_RENDERSYSTEM_GLES2 options but no OGRE_BUILD_RENDERSYSTEM_GLES3 option, I found OGRE_CONFIG_ENABLE_GLES3_SUPPORT though; am I assuming correct that I just have to enable this entry?
Another thing I run into when I just tried it, is that I got a warning which stated that the Android executable is not found and that a result the APK(s) will not be build. I recall seeing something related to that posted in some other forum post but I am not sure; going to search for it now.