Unity native plugin(https://bitbucket.org/Unity-Technologies/graphicsdemos) was not updating any content in android platform. This can be solved with adding an DrawTexture() call in OnGUI(). But, GUI display is not working when native VR is supported.
So, How to bring up native rendering example when native VR support is enabled?(Example: Daydream with unity v5.6beta).
Native VR integration uses a completely different GL view instance that is entirely owned by the VR system. I doubt very seriously that the native renderer would render into the VR display in any way.
If you want to render to a 2D display as part of a non-VR portion of your application you can always disable VR. That should switch you back to the normal Unity view and the normal GL view that should render with this. There are 2 ways to do this depending on how you want to start the application.
If you want to start the application in 2D mode then go to VR, then make sure that you add the None VR device to your device list and set it as the first device. This will allow you to start in 2D mode with VR disabled.
To switch between VR and non-VR you need to use VRSettings.loadDeviceByName. If you pass in String.Empty then VR will shutdown and you will be back in normal 2D mode. If you pass in the string name of the device you want (like “daydream”) then VR will be setup and you can then set VRSettings.enabled to true on the next frame to get VR running on the display.
Yes. I can try switching b/w VR & non-VR mode as per your suggestion. But, we will loose advantage of features like time-warping in VR SDK for better user experience.
Is it possible to get the access to framebuffer which VR system uses either using openGL calls or using gvrContextPtr from VRDevice native pointer & update my content in that system framebuffer?