When reading the following slide from ARM Getting the most out of OpenGL ES 3.0, one of the first feature presented is Separate Shader Objects, which involve using the new Program Pipeline feature of OpenGL ES 3.1. However, when grep-ing the Mali's Android SDK code for pipeline, the only results I got was some references in HTML documentation files and comments.
pipeline
The question is :
The Apple documentation seems to encourage the use of pipelines in their Best Practices for Shaders documentation, however they target other GPU so I'm wondering if SSOs and pipelines play well compared to monolithic programs on Mali GPU specifically ?
Hi Myy,
The Offline Mali Shader compiler works only on single shader files. That means it can perform optimization on single shader level but not on the whole program since it can run only on a single shader.
Regards,
Daniele