Panfrost Open-Source Arm Mali GPU Driver Gets Experimental OpenGL ES 3.0 Support

Panfrost is the open-source driver being developed for Arm Midgard and Bitfrost GPUs. The first versions focused on support for OpenGL ES 2.0, but the more recent OpenGL ES 3.0 enables faster and more realistic rendering.

The goods news is that Panfrost support for experimental OpenGL ES 3.0 has landed in Mesa according to a recent post on Collabora blog.

SuperTuxKart with Open GL ES 3.0 on Panfrost

Specifically, Panfrost now supports instanced rendering, primitive restart, uniform buffer objects, 3D textures, and multiple render targets (on Mali T760 and up) all of which are OpenGL ES 3.0 features.

People who are not into graphics development may not know about the purpose of those features, but Alyssa Rosenzweig, a free software graphics hacker leading Panfrost, explains:

… instanced rendering and primitive restart allow developers to write faster graphics applications, to render efficiently scenes more complex than possible in ES 2.0.

… uniform buffer objects and 3D texture give developers a more natural environment to write efficient graphics shaders, again allowing for more complex fast applications.

… multiple render target enable a range of modern rendering techniques like deferred shading.

One consequence of the changes is that SuperTuxKart racing game now works with OpenGL ES 3.0 rendering using an open-source Arm GPU driver in Linux.

While support is said to be preliminary, Panfrost already passes 95% of OpenGL ES 3.0 tests in drawElements Quality Program (dEQP) test suite while running on Arm Mali-T860 GPU.

Panfrost’s OpenGL ES 3.0 support can be found in upstream Mesa and works with a mainline Linux kernel. Make sure to set PAN_MESA_DEBUG=gles3 in your environment before trying it with OpenGL ES 3.0 applications and games.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

9 Replies to “Panfrost Open-Source Arm Mali GPU Driver Gets Experimental OpenGL ES 3.0 Support”

    1. Better Linux graphics support for eg. LibreELEC and Armbian for S922x devices that run mainline Linux kernels like AM6. For other devices with no Linux support from the manufacturers or independent developers, no difference.
      For Android, no difference.

      1. Don’t be silly. Everyone knows the first RPi ended child poverty, broke the barriers of entry into STEM for girls etc in the UK. Totally didn’t turn into people selling SD cards of ROMs on ebay and a forum full of washed up .net developers and printer maintenance guys.

      2. My company run a 24/7 DVB-T channel with a first gen RPi. The overlay graphics is fully rendered in realtime by the RPi while the VPU decodes one or two 720p videos.

    1. VC IV is GLES 2.0 hw (and for a vert long time it could do only the most basic of sheders due to inadequate compiler support).

  1. It would be better if they completed Bitfrost support.
    There are still not many even proprietary Bitfrost driver for Linux available.

Leave a Reply

Your email address will not be published. Required fields are marked *