Code: Select all
3.826 Created atlas bitmap 4096x1896 [compressed, mask]
3.843 Created atlas bitmap 4096x4092 [no-crop, compressed, trilinear-filtering, mask, icon, light]
3.849 Created atlas bitmap 4096x1532 [compressed, mask, alpha-mask]
22.003 Sprites loaded
22.003 Convert atlas 4096x4096 to: compressed
[more of the same]
50.706 Convert atlas 4096x4092 to: trilinear-filtering compressed
51.175 Convert atlas 4096x1532 to: alpha-maskcompressed
51.317 Verbose AtlasSystem.cpp:739: Atlas memory size: 759.03MB
51.317 Verbose AtlasSystem.cpp:740: Size of sprites outside of atlas: 0.00MB
58.275 Custom inputs active: 3
58.309 Factorio initialised
I can see solutions here:
- drawing loaded sprites to a compressed S3TC texture as a rendertarget (?)
- translating the S3TC compression algorithm as a shader, then drawing to a generic buffer object (?)
- in case there's already an S3TC rendertarget present, maybe the pipeline's being stalled by reading from the BO too soon?
- caching each mod's sprites as a finished S3TC buffer
- compression takes place on only one CPU thread, make it take place on all cores as a quick fix