Automatic detection of a texture's Max Size

So I’m working on a project with a lot of externally baked maps, and they are with different resolutions, according to the size of the objects. By default Unity sets their max size to 2048. If I manually change this to all of the maps to 4096 for instance, they take up a lot of unnecessary RAM, because some of the textures are 1024 and some are 2048. I’ve already baked the textures in the external app in the resolution I want them to be, so can I make Unity just use the resolution from the file, instead of having to set the resolution for each texture once again?
!(http://


Thank you!)

The setting is for max size - it won’t make your textures bigger.

It doesn’t make the textures bigger, but it changes the amount of RAM that unity has to allocate when the application is run. This is important for WebGL, because the limit for most browsers is about 1024mb. So when the max size is bigger than the texture this allocated ram is actually wasted, cause the texture appears with the same quality but more ram is being taken.

Are you sure? If it doesn’t change the texture in any way then I don’t see how it would affect the memory at runtime.

The max resolution is just what the importer will use if you use a power of two texture.
By Default unity will snap the resolution of the texture to the nearest Power of two resolution. This may be bigger then the original texture.
You can set the texture type to advanced and set how unity should act (bigger / smaller / nearest).
That way you could force unity to select the smaller resolutions and save some Texture memory.

I actually may be wrong. I tested this earlier today and it seamed to have a huge impact on the memory consumption. But now as I did it again more carefully, I may have had some maps with bigger resolution than I thought and that was causing the increase in memory. Now it still had some impact but it’s insignificant