Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to use OpenGL ES 3.2 on Android emulator?

Tags:

I want to try the multiview extension for OpenGL ES 3.2 (see https://www.khronos.org/registry/OpenGL/extensions/OVR/OVR_multiview.txt).

My Smartphone does only support OpenGL ES 3.0 and I am unable to set GLES 3.2 on the Android Emulator Device Settings. This should work according to https://android-developers.googleblog.com/2017/05/android-studio-3-0-canary1.html (search for OpenGL 3.2) and I have Android Studio 3.0.1 (which isn't preview version anymore...).

While the emulated device was running I was able to set unter Setting - Advanced a OpenGL ES API level to 'Renderer maximum (up to OpenGL ES 3.1) but I need 3.2 :/

Is that possible? I need OpenGL ES 3.2 with multiview extension to write a application for a possible employment at a VR/AR research laboratory.

Thanks!

like image 284
Hamburml Avatar asked Feb 10 '18 13:02

Hamburml


People also ask

Can I use OpenGL on Android?

The basics. Android supports OpenGL both through its framework API and the Native Development Kit (NDK).

Is OpenGL ES 3.2 good?

The introduction of OpenGL ES 3.2 builds on the previous release to open up new graphics functionality to make full use of future mobile and automotive hardware. OpenGL ES 3.2 boasts a small number of improvements over last year's OpenGL ES 3.1. Both make use of similar features from the AEP.

What is OpenGL ES emulator?

The OpenGL ES Emulator is a library that maps OpenGL ES API calls to the OpenGL API. Running on a standard PC, the emulator helps development and testing of next generation OpenGL ES applications without requiring a connection to an embedded target. Download for Free.


1 Answers

This is an old question, but if somebody reads this, there should be some answer.

I'm using Android Studio 3.1.3 and I have used OpenGL ES 3.2 inside a native code (C++). You need to use the header

#include < gles3/gl32.h >

which can be found from the path:

/sdk/ndk-bundle/sysroot/usr/include/GLES3/gl32.h

This works if you have written a native library in your project. However, if you don't want to write a native library and want to stick to the java code, then I don't know how to proceed.

like image 56
mamannon Avatar answered Sep 21 '22 12:09

mamannon