DDS not working in Firefox (on Firebase). Weird

Anyone run into this issue?
I’m setting environment texture to environment.dds (from the stock babylon js assets). And it’s throwing an error - but only in Firefox - and only when pushed up to Firebase (hosted Node server). I thought it might be related to SSL, but seems to work fine over SSL in playground.

The error is:
BJS - [11:24:45]: Invalid magic number in DDS header
Which seems weird, since the file is working on Chrome and on FF locally.

And my code is:
g.scene0.environmentTexture = BABYLON.CubeTexture.CreateFromPrefilteredData("/skyboxes/dds/environment.dds", g.scene0);

Localhost on the left - and Firebase on the right (see error in console):

could you try to access the .dds url manually or look in the network tabs if it is well served as a binary and the correct one ?

I am wondering if for some strange reason it would be served as text or something of the sort ?

1 Like

Oh forgot to post url. Here:
https://dfilm.com/

That’s an interesting theory @sebavan. And yea, looks like it’s being served as x-gzip on Firebase and as image/vnd.ms-dds locally. I would have thought that that would be okay though. In fact, it has the same content type on Chrome (gzip) and deflates correctly there. Hrm.

So it’s a problem with Firefox’s deflation of gzip to dds? Or maybe of Firebase’s CDN’s encoding of dds to gzip?

You got it @sebavan!
I moved the file to AWS … and it’s working fine.
So, has got to be some issue with the CDN combined with Firefox… messing up the file somewhere in the effort to compress/decompress it.

1 Like