▲ | gmueckl 3 days ago | |||||||||||||||||||||||||||||||
This advice is only practical if you have proper import tooling that can transparently do this conversion for your engine and preserves import settings per asset. Otherwise, this just adds a ton of fragile manual steps to asset creation. | ||||||||||||||||||||||||||||||||
▲ | LexiMax 3 days ago | parent | next [-] | |||||||||||||||||||||||||||||||
This sort of batch asset conversion can be pretty easily automated with some combination of scripting and/or makefile. Taking the time to learn about these sorts of compression methods is well worth it, as once you start loading assets of any appreciable scale or number, the savings in asset loading times can add up to be significant, turning what might have been a noticable jarring pause or stutter into something much less noticable. Think about it, with hardware texture formats, not only are you not having to decode the PNG on the CPU, but you're also literally uploading less data to the GPU overall, since it can be transferred in a compressed form. | ||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||
▲ | flohofwoe 3 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||
This can be solved with a few lines of python and a naming convention for texture file names (or alternatively a small json file per texture with metadata). | ||||||||||||||||||||||||||||||||
▲ | reactordev 3 days ago | parent | prev [-] | |||||||||||||||||||||||||||||||
BS, Blender exports KTX2, your engine supports KTX2, Gimp exports DDS/KTX2, Substance Painter exports DDS/KTX2, three.js has a KTX2 converter. Using image formats for texture formats is amateur game development. PNG’s are fine for icons or UI or while you’re still trying to figure out what you’re doing. Once you know, you switch to a faster, no translation required, texture formats that load faster, support physical layers, compression, and are already in BGRA format. | ||||||||||||||||||||||||||||||||
|