Quick Links: Download Gideros Studio | Gideros Documentation | Gideros Development Center | Gideros community chat
Switching to OpenGL ES 3.0 - Gideros Forum

Switching to OpenGL ES 3.0

hgy29hgy29 Maintainer
Hi all,

Gideros evolutions are more and more limited by what OpenGL ES 2.0 has to offer, therefore we are thinking seriously about switching to GL ES 3.0. This would make games made with newest Gideros unable to run on older devices (five years old). Those old devices represent around 3% of current market, so probably not a serious loss.

What do you think ?
+1 -1 (+3 / -0 ) Share on Facebook
«1

Comments

  • In my opinion it will be a good update and good decision. In anyway if someone want to target old devices always can use the old version of gideros.
    +1 -1 (+3 / -0 ) Share on Facebook
  • SinisterSoftSinisterSoft Maintainer
    edited November 2019
    +1

    It would mean gideros targetting Android 18, or Android 4.4 Kit Kat and up.
    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
  • would it also speed up gideros apps? what exactly do we gain?
    in any case probably there should be a last version that supports gl es 2.0 which has no bugs as much as possible, before moving forward.

    share of 2.0 seems to be ~20% here:
    https://developer.android.com/about/dashboards
    where do you find your stats?
  • hgy29hgy29 Maintainer
    The plan is to target ES 3.0 while being able to revert to ES 2.0, but 3.0 API is only available since API 18. The idea is that on ES 2.0 devices with API 18, we should be able to detect at runtime what is possible or not.

    Likes: SinisterSoft

    +1 -1 (+1 / -0 ) Share on Facebook
  • hgy29 said:

    Those old devices represent around 3% of current market, so probably not a serious loss.

    What do you think ?

    In my applications, these devices make up 90% of my market.
    So for me, the loss of this market is very negative

    my games:
    https://play.google.com/store/apps/developer?id=razorback456
    мій блог по гідерос https://simartinfo.blogspot.com
    Слава Україні!
  • SinisterSoftSinisterSoft Maintainer
    edited November 2019
    @oleg, there should be no impact for you if you don't use api commands that are not available the opengl es 3 enhancements. For a while now Gideros has picked opengl es 3 rather than open gl es 2 if possible on Android and there have been no compatibility issues.

    So if @hgy29 basically had fallback code so that if opengl es 3 wasn't available then the existing opengl es 2 functions would be called instead then all should be ok.

    Only if you used the new opengl es 3 enhanced api commands would there be a problem.
    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
  • This code will let you know if your Android device has picked opengl es 3 for gideros rather than open gl 2 (on the existing build):
    if lower(sub(Shader:getProperties().version,1,11))=="opengl es 3" then print("using opengl es 3 - <img class="emoji" src="/resources/emoji/smile.png" title=":)" alt=":)" height="20" />" else print("using opengl es 2 - <img class="emoji" src="/resources/emoji/frowning.png" title=":(" alt=":(" height="20" />" end
    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
  • @oleg, there should be no impact for you if you don't use api commands that are not available the opengl es 3 enhancements. For a while now Gideros has picked opengl es 3 rather than open gl es 2 if possible on Android and there have been no compatibility issues.

    If there are no compatibility issues then ok but @hgy just said maybe 90% of my market might not be supported ..
    my games:
    https://play.google.com/store/apps/developer?id=razorback456
    мій блог по гідерос https://simartinfo.blogspot.com
    Слава Україні!
  • SinisterSoftSinisterSoft Maintainer
    edited November 2019
    Oleg, if you have @hgy29 's firebase plugin, can you send a message to firebase so you can accurately know the amount of your users that are stuck on Android versions below 4.3 ? Or look at google play and see what they say?

    4.3 and above would be supported it looks like.
    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
  • I just went to the play store to look at active user stats, checked the Android versions of the apps - only my slots games had people using really old devices (gamblers with 2nd hand phones?) - and the oldest was a 4.4 device.
    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
  • hgy29hgy29 Maintainer
    to make it clear the idea is to link gideros with GLESv3 lib instead of GLESv2. That lib is available starting from API 18 (Android 4.3), but current minimum API for Gideros is 14. So yes if we do that, we won't support anymore pre 4.3 android. But we will still (hopefully) be able to restrict ourself to call GL ES 2.0 calls from 3.0 lib if the device isn't 3.0 compliant.

    Likes: SinisterSoft

    +1 -1 (+1 / -0 ) Share on Facebook
  • i see, so the phone does not need to support gles3, just to be on android 4.4 or higher. that seems to be safe enough.
  • hgy29hgy29 Maintainer
    keszegh said:

    would it also speed up gideros apps? what exactly do we gain?

    Currently I am interested in instanced drawing, which allows to submit a mesh for drawing to the GPU but ask it to render it multiple times, variying its location/scale. All in a single render call.
    For 3D, the benfit is obvious: you could render a forest in a single draw call, or voxels or even a full minecraft scene.
    For 2D, you could make shader-animated particle effects (you render several instances of a single particle, and let the shader compute the position of each particle).

  • Oleg, if you have @hgy29 's firebase plugin, can you send a message to firebase so you can accurately know the amount of your users that are stuck on Android versions below 4.3 ? Or look at google play and see what they say?

    4.3 and above would be supported it looks like.

    New users in the last month on my one of games

    image.png
    977 x 570 - 81K
    my games:
    https://play.google.com/store/apps/developer?id=razorback456
    мій блог по гідерос https://simartinfo.blogspot.com
    Слава Україні!
  • Apollo14Apollo14 Member
    edited November 2019
    F*ck old devices!
    (update: actually it's bad idea to f*ck old devices, cause they are 20% of the market, as of november 2019:
    http://forum.giderosmobile.com/discussion/comment/60969/#Comment_60969
    )
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • @oleg, the 4.3 and above would be safe. Just the red and purple lines - minimal.
    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
  • @oleg, if you hover over the purple/red lines in your graph - eg those below 4.3 but not including 4.3 then that will show you the physical number of users. That's how many you could be losing.

    Here is an example of what I mean to see the numbers:


    2019-11-19_17-26-46.png
    1028 x 524 - 70K
    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
  • oleg said:

    Oleg, if you have @hgy29 's firebase plugin, can you send a message to firebase so you can accurately know the amount of your users that are stuck on Android versions below 4.3 ? Or look at google play and see what they say?

    4.3 and above would be supported it looks like.

    New users in the last month on my one of games

    It seems that your apps get recommended by GooglePlay for android 4 users.
    What Android SDK versions do you set in Gideros project settings to target such audience?
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • Or click the '+ android version' button above to see the numbers, eg from this it looks like I'll lose 3 out of 405...


    2019-11-19_17-30-31.png
    904 x 529 - 54K
    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
  • @oleg, if you hover over the purple/red lines in your graph - eg those below 4.3 but not including 4.3 then that will show you the physical number of users. That's how many you could be losing.

    Here is an example of what I mean to see the numbers:


    The graph shows the green line 4.2, 180 devices daily
    image
    sadfsdf.PNG
    601 x 339 - 50K
    my games:
    https://play.google.com/store/apps/developer?id=razorback456
    мій блог по гідерос https://simartinfo.blogspot.com
    Слава Україні!
  • Apollo14 said:

    Fuck old devices!

    Older devices have little competition, this is a nice niche for small indie games.

    Likes: SinisterSoft

    my games:
    https://play.google.com/store/apps/developer?id=razorback456
    мій блог по гідерос https://simartinfo.blogspot.com
    Слава Україні!
    +1 -1 (+1 / -0 ) Share on Facebook
  • SinisterSoftSinisterSoft Maintainer
    edited November 2019
    Ahh, sorry I missed that. I don't understand why your games are so popular on the older devices and not on the newer devices - it's like they are not visible on the store in the West?

    I'm wondering if the gideros libs for below 4.3 are in a different template folder then you could still use the latest version of gideros but could opt to build using the libs that would be frozen in time.
    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
  • Ahh, sorry I missed that. I don't understand why your games are so popular on the older devices and not on the newer devices - it's like they are not visible on the store in the West?

    Google store on new devices my games will stand at 500+ place, and on old devices at 1-100 place
    my games:
    https://play.google.com/store/apps/developer?id=razorback456
    мій блог по гідерос https://simartinfo.blogspot.com
    Слава Україні!
  • Even though it would be a bit of a hassle, you could always have a Gideros installation for GLES2 as well as an installation for GLES3.

    Ininitally I thought "no.. stick with GLES2 because Gideros is a 2D engine" but then @hgy29 hined GLES3 will make shaders better and that interests me because shader experiments I have done were very bad performers :(
  • It's not just that 2D should also be faster and possible enhancements.

    Likes: antix

    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
    +1 -1 (+1 / -0 ) Share on Facebook
  • oleg said:

    Ahh, sorry I missed that. I don't understand why your games are so popular on the older devices and not on the newer devices - it's like they are not visible on the store in the West?

    Google store on new devices my games will stand at 500+ place, and on old devices at 1-100 place
    @oleg what SDK version do you set in Gideros project settings?
    How to make Google know that my app supports these old devices?
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • @Apollo They automatically know by looking at your aar or apk file.

    Likes: oleg

    Coder, video game industry veteran (since the '80s, ❤'s assembler), arrested - never convicted hacker (in the '90s), dad of five, he/him (if that even matters!).
    https://deluxepixel.com
    +1 -1 (+1 / -0 ) Share on Facebook
  • @SinisterSoft Well if Gideros can do faster 2D then that's got to be a good thing... especially since it seems to already be faster than any other Lua based 2D framework out there.
  • Apollo14 said:

    oleg said:

    Ahh, sorry I missed that. I don't understand why your games are so popular on the older devices and not on the newer devices - it's like they are not visible on the store in the West?

    Google store on new devices my games will stand at 500+ place, and on old devices at 1-100 place
    @oleg what SDK version do you set in Gideros project settings?
    How to make Google know that my app supports these old devices?
    When you download an update to a game file, google writes the number of devices your game supports and the number of devices that will not be supported after the update

    Likes: SinisterSoft

    my games:
    https://play.google.com/store/apps/developer?id=razorback456
    мій блог по гідерос https://simartinfo.blogspot.com
    Слава Україні!
    +1 -1 (+1 / -0 ) Share on Facebook
  • Apollo14Apollo14 Member
    edited November 2019

    @Apollo They automatically know by looking at your aar or apk file.

    Currently I set all my projects' resolution 720x1280 in Gideros (scaling: letterbox).
    Users with smaller screens will have no problem with that? (in desktop simulator I see that letterboxed 720p looks ok in smaller resolutions, but I don't know how it is in real life)

    Likes: antix

    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
    +1 -1 (+1 / -0 ) Share on Facebook
Sign In or Register to comment.