[Feature] RGBM BC6 | DXT5 Compression

Working with offline baked lightmap for GI, going on web, we encountered the main issue: Data downloading.

We know that compression “destroy” the “gradient” inside a lightmap but there are some situation where compression could be a good friend.

We know for sure that BC6 could compress RGB Floating-Point (HDR and RGBM)
In addition, I find also this paper about RGBM-DXT5 compression

http://www.ludicon.com/castano/blog/2016/09/lightmap-compression-in-the-witness/

Do you think that could be put your roadmap?
BC6 could be a good first step :slight_smile:

Reduce data downloading is one of the most important milestone I suppose.
Quality is amazing at current state of playcanvas :slight_smile:

Now we need for more accessibility :stuck_out_tongue:

We have experimented briefly with compression of RGBM data, and naive approach didn’t work. So this should be readdressed.

WebGL only has supports DXT1, DXT3, DXT5 which are BC1, BC2, BC3. https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_s3tc/
And has no support for BC6 unfortunately.

We do recognize that in many cases HDR lightmaps data might be fairly large chunk of download size and would get way smaller being compressed.