ETC2 textures are supported on desktop GL throught the GL_ARB_ES3_compatibility. However it looks like most implementations emulate the support for this format by decoding in software and representing the texture as uncompressed format internally.
When uploading on a separate thread (with its own OpenGL context), the decompression seem to trigger a stall that I can’t seem to be able to work around (I tried using a fence object to wait until the texture is uploaded before using it).
Is there a way to load (stream) ETC2 textures on desktop GL without CPU/GPU stalls?
ps: this is a situation where using DXT on desktop is not an option.