Results 1 to 10 of 10

Thread: OpenGL ES hardware database and CapsViewer

  1. #1

    OpenGL ES hardware database and CapsViewer



    Some of you might know (and already use) my online OpenGL hardware database that I've set up sometime ago and which is approaching 500 different OpenGL implementations.

    And as my first ever mobile project (or "app" as they're called today) I released an OpenGL ES hardware database and caps viewer to the public. This is the mobile equivalent to the desktop OpenGL hardware database and is planned as a tool for the mobile OpenGL ES programmer that wants to check out the OpenGL ES hardware capabilities of different mobile Devices.

    The project itself was NOT made with Delphi (sorry guys, but I wouldn't touch FireMonkey from 500 feet afar with a stick ), but with google's excellent and free developement tools. Though the database may be of use for some Delphi (or at least Free Pascal) OpenGL ES developers out there, at least if there's some way of getting to the OpenGL ES context usually hidden by FireMonkey.

    The database is filled with the OpenGL ES CapsViewer (you can grab it on the playstore), and is currently available for android (dunno if iOS makes sense due to the limited variety in hardware configurations).

    The tool will work with Android 3.0 and up (though if there's demand I may add in older versions too) and supports all OpenGL ES versions available on Android (1.0~3.0)

    Features of the OpenGL ES Capsviewer :
    Information for the OpenGL ES implementation of the device :
    - Versions
    - Extensions
    - Compressed formats
    - Shader and program binary formats
    - OpenGL ES 2.0 and 3.0 caps
    - EGL implementation

    It also gathers device information (no personal data!) that may be of use for developers :
    - Operating system, screen size and CPU info
    - Hardware sensors (including range and resolution)
    - Android features

    Note that this is the very first public version, and also my very first mobile application, so I guess it won't work on all devices. If it crashes for you, i'd be kind if you could submit the crash report to google and tell me about it so I can fix it.

    The database itself is very similar to the OpenGL one, allowing you to check up on single devices, compare up to 8 devices, check out which device supports what extension, hardware feature or compressed texture format and so on.

    Please note that I'm still working on the hardware database, so new features will be added over the coming days and weeks.

    So if you've got an android device feel free to download the OpenGL ES capsviewer and submit your reports to the development community

  2. #2
    PGDCE Developer de_jean_7777's Avatar
    Join Date
    Nov 2006
    Location
    Bosnia and Herzegovina (Herzegovina)
    Posts
    287
    Awesome. Tried it on my Nexus S (crashes at start, made a report), and my Xperia S (works).
    Existence is pain

  3. #3
    Thanks a lot, especially for the crash report on the Nexus S. It looks like a problem with the config chooser for the render context :

    Code:
    java.lang.RuntimeException: createContext failed: EGL_SUCCESS
    at android.opengl.GLSurfaceView$EglHelper.throwEglException(GLSurfaceView.java:1195)
    at android.opengl.GLSurfaceView$EglHelper.throwEglException(GLSurfaceView.java:1186)
    at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:1036)
    at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1403)
    at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1242)
    Pretty funny first line. Returning success, but failing. I'll have a look into this and will release an update as soon as I found the cause for the crash.

  4. #4
    PGDCE Developer de_jean_7777's Avatar
    Join Date
    Nov 2006
    Location
    Bosnia and Herzegovina (Herzegovina)
    Posts
    287
    Your new version shows information properly on the Nexus S now. Meant to post about that, but seems you got it fixed without me needing to tell you One thing that is incorrect, is the CPU frequency, which is shown as 1400 MHz (maximum for the CPU that the kernel can allow, since it is cyanogenmod). The actual frequency is 1000 MHz. Not a big deal, but thought you should know.
    Existence is pain

  5. #5
    Quote Originally Posted by de_jean_7777 View Post
    Your new version shows information properly on the Nexus S now. Meant to post about that, but seems you got it fixed without me needing to tell you One thing that is incorrect, is the CPU frequency, which is shown as 1400 MHz (maximum for the CPU that the kernel can allow, since it is cyanogenmod). The actual frequency is 1000 MHz. Not a big deal, but thought you should know.
    It seemed that the code for selecting a context with the highest possible OpenGL ES version wasn't working on several devices, so I changed it and well, it seems to work

    And thanks for resubmitting the Nexus S with the correct OpenGL ES information version. As with the CPU Frequency, it's from the device information structure of android, so I don't know if I could easily detect wether the frequency is overclocked or not.

  6. #6
    Nice project! Works great on my Galaxy SIII mini. Didnt even know this device supported OGL ES2

  7. #7
    Realy nice project indeed!
    But I have a request. Could you make change to both glCapsViewer and OpenGL ES Caps viewer so that they alow comparison between different results.
    I would realy like to use such program as a troubleshooting tool to figure out why certain game runs on certain configurations and doesen't run or doesen't run properly on another configuration.
    It is not my game and I don't have information about the games Graphical Engine minimum requirements. Infact even game developers are not sure of minimum requirements as the game engine was not developed by them. I'm talking about Allegro here but since I'm tracking several other indie games I might be able to help the their developers also if/when similar problems occur.

  8. #8
    I have though about adding compare functions to both tools, but up until now I though it would be sufficent to have them in the online database. But it may really be a good idea to add them to the tools itself, making it easier to compare the current device with one from the online database. I'll see when I'll get around adding this feature.

  9. #9
    google play said : you're phone isn't compatible with this version!
    the phone is galaxy s advance.

  10. #10
    The app needs at least Android 3.0, the galaxy s advance only runs 2.3.6. And since I've set the sdk level for Anrdoid 3.0 as a requirement for my app, it won't install on devices that run lower Android versions. Though I may add support for lower android versions at some point in the future.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •