I am looking for Android 3.0's CCD (compatibility definition document), mainly to confirm if OpenGL ES 2.0 support is a common spec across all Honeycomb devices.
Unfortunately the official download site for CCDs seems to omit Android 3.0:
http://source.android.com/compatibility/downloads.html
Can anyone point me to an official resource that states whether OpenGL ES 2.0 support is optional or mandatory on Android 3.0?
So Google has downplayed 3.0 and has stressed the fact that they didn't want people becoming too attached to Honeycomb because it was incomplete. My advise would be to skip 3.0 and go straight to Ice Cream Sandwich. I know this isn't the best answer, but from everything I've seen I feel this would be the approved solution.
OpenGL ES 2.0 is mandatory as of 3.0 (it's required for hardware acceleration of the UI and RenderScript.)
Related
What's the currently supported version of OpenGL ES in WearOS 2? Ist OpenGL ES 3.x supported, assuming the hardware can support it? I can't find any documentation for it.
According to the Play console, Wear OS devices do support GL ES 3.0. Here's a screen grab from the device page for the Huawei Watch 2 on my console:
Given that Wear OS is Android under the hood, you can usually assume that anything not obvious or documented to be different is the same. So yes, it probably is going to be whatever the hardware supports.
I have published an instant app, which can be downloaded from android marshmallow, nougat, etc. but openGL is only being rendered on android pie, the normal app works fine on all android versions, both APK's are the same actually it is an app bundle.
https://issuetracker.google.com/issues/132952558
Quoting the answer here so it helps others as well:
OpenGL ES 1.0 is only partially supported, we do not recommend you to
use this.
OpenGL ES 2.0 is fully supported for Instant Apps.
Additionally, OpenGL ES 3.0 is not supported on pre-O Instant Apps.
This was previously documented somewhere, but not anymore, so we’re
working on getting these details back in.
I am wondering whether if using Fixed Functions in OpenGL will work on newer Android devices. I couldnt find any solid information about this on Google.
Fixed Functions are supported for OpenGL <= 3.0 and OpenGL ES <= 1.x. They are not supported on later versions.
Check what is available on your newer Android device.
See official information for more details.
OpenGL ES.
OpenGL
I have spent a few dozen man hours searching Google and asking questions on forums trying to figure out whether or not my OpenGL ES 2.0 application on Android is lagging due to errors on my end, a virus on my device, OpenGL implementation on Android, or OpenGL implementation on the Samsung Galaxy Express.
I have found nothing, if anyone wants to try answer that root issue I would greatly appreciate it, but my question is if I should revert back to OpenGL ES 1.0 and if that is what everyone else uses.
The exact same application (single spinning triangle) using the exact same timestep with the only difference being a barebones OpenGL ES 1.0 vs OpenGL ES 2.0 change causes stuttering in the 2.0 app and smooth animation in the 1.0 app.
Do other games only use 1.0? If they use 2.0 can you point me to an example that is known to cause no noticeable stuttering, that I may download and test on my device? I have downloaded the OpenGL ES 2.0 sample from Google themselves, stutters the same.
Does Samsung Galaxy Express not handle OpenGL ES 2.0 gracefully? Is there any way to get another Android device without stealing or asking random strangers, I have no money.
Thank you.
Thing is that OpenGL ( not just ES ) is a specification, the other part the implementation is not governed by anyone, well by the specification to a certain extent meaning that the implementations can differ greatly altho they shouldn't.
This is due to the fact that OpenGL uses client drivers to handle the commands and those are written by the GPU creators ( usually ). For PCs you can easily name all the prominent GPU builders, nVidia and ATI so there you can at least know what to expect.
For phones there are lots of GPU/CPU combos so more errors to be discovered due to faulty or wrong form the start designs, not just the GPU's drivers, since the phone's creator may also make changes to the system or use low speed/grad parts which will result in poor performance.
OpenGL ES 1.0 I would say is more common since 2.0, mainly because it's backwards compatible so a device that supports 2.0 will most certainly support 1.0 as well. For development you can skip the whole "build on phone" thing by making a framework and using an emulator ( OpenGL ES ) on PC and when you are done just copy over your OpenGL code into your phone app.
Since manufactures try to keep their costs low, they tend to lie about what they actually do, or support so ES 1.0 being more simple and hard-wired than 2.0 it is possible that the lag may be due to the poorly supported OpenGL.
According to the latest Android Platform Dashboards, Open GL 2.0 makes up 98.3% of devices that visited the Play Store in the last 7 days, making it the standard for game development.
I have noticed a lot of people seem to have trouble with the OpenGL ES drivers for Samsung Android devices. You should try another device with a different graphics core.
Since Ice Cream Sandwich, the Android platform itself mostly uses OpenGL ES 2.0, including major components, such as the SurfaceFlinger. It's not optional anymore. Check out this article.
I see the versions of Android 2.0 and 2.01 are obsolete.
And when im looking at the android fragemtation cakes 2.0 is not even listed, does this mean there are no more android 2.0 devices out there?
http://developer.android.com/resources/dashboard/platform-versions.html
Because that would mean I could target 2.1 as minimum target instead of 2.0, and would reach the same number of devices.
Is it really possible that there are no more devices with 2.0 and 2.01?
I googled but didnt find any informations about it.
Vino
If you check out this page, you notice that 2.0 isn't mentioned, so you shouldn't be worried about devices with android 2.0. Basically afaik 2.0 has been replaced by 2.1.