Heads up: we’ve been spending some time on optimizing texture import times. Textures typically take up majority of game assets, and usually people spend a lot of time staring at progress bars, waiting for them to import or compress. While there are things like Accelerator (née Cache Server) that can alleviate that pain, it still sounded like a good idea to invest some time in.
So! Here’s what we see in our tests, in 2021.1a7, compared to 2020.2a21. The timings below are on my PC (1st gen ThreadRipper CPU with 16 threads, SSD), importing or switching platforms on a test project with 2GB worth of various textures (400 textures from actual projects; a mix of regular textures, normal maps, lightmaps, sprites, skyboxes, mask maps etc.):
- Importing for PC platform: 141sec → 111sec (1.3x speedup, or “30 seconds saved”),
- Importing for Android platform (ETC compression mode): 720sec → 266sec (2.7x speedup, or “7 minutes saved”),
- Importing for Android platform (ASTC compression mode): 1568sec → 602sec (2.6x speedup, or “16 minutes saved”).
Some texture types get larger speedups in the non-compression part, e.g. lat-tong panoramic layout cubemaps are much faster to import than before, because we’ve optimized some heavy parts there.
Low-risk parts of the ETC optimizations (1.4x speedup) are being backported to 2020.2b13, 2020.1.15 and 2019.4.16) as we speak.
ASTC optimizations are somewhat more involved; we haven’t decided yet whether to backport them.
We have some more plans in how to improve texture import times further, but these are likely to be after 2021.1 version (2021.1 is in “code freeze, only stability fixes” stage already).
Hope that helps, and you all can spend less time waiting for progress bars to finish!