We pull MTX files from Bing to display 3D maps. The MTX files contain crunched textures that have been compressed by Microsoft.
We can no longer load these crunched textures due to the updates in 2017.3. We get the following message: ‘The texture could not be loaded because it has been encoded with an older version of Crunch. This can happen when loading AssetBundles containing Crunch-compressed textures built with Unity version prior to 2017.3.’
I don’t believe Microsoft used Unity to crunch these textures (though I could be mistaken). In any case, we don’t have access to the original files to crunch them anew.
Any recommendations on how to continue using legacy textures?
Have you tried opening them with an older release of Unity? If they work with an older release you can export them as a normal image format and then import them into the newer release.
They work in order versions of Unity just fine. However, we don’t have permission or the resources to update every Bing3D map tile. Thanks for the suggestion though!
We are using an updated version of Crunch which is faster, has better compression ratios, and supports more platforms/formats. Unfortunately that meant dropping support for loading the older version.
Your best bet is probably to create a native plugin in C/C++, using the Crunch library directly yourself, to decompress the textures.
Hi, I have a similar problem too.
Thanks @superpig for the suggestion.
Is it possible to create crunched textures in the new format and load them in this way?
Texture2D texture = new Texture2D(width, height, textureFormat, false);
texture.LoadRawTextureData(www.bytes);
texture.Apply();