gl4es icon indicating copy to clipboard operation
gl4es copied to clipboard

Add support for external shader translator

Open GuillermoAmbar opened this issue 10 months ago • 0 comments

An example is to use glslang program to translate a OpenGL or OpenGL ES shader to spir-v, then generate a OpenGL ES shader source from spir-v shader by using spirv-cross program.

I have tested to convert OpenGL 3.3 shaders to OpenGL ES 3.1 and 3.2 by adding an optional plugin loader on shader source loader function.

It is not ready for use because on my test plugin I call glslang program to generate a spir-v file, and then call spirv-cross to generate opengl es shader code from spir-v source, it uses an intermediate cached file on disk, I speed up things by creating a little 16 MB ramdisk for temporary store spirv generated files.

I will try to use glslang and spir-v libraries for create a functional plugin, however time for that is undeterminated.

GuillermoAmbar avatar Feb 10 '25 13:02 GuillermoAmbar