v0.7.4 - Texture Compression Variants


I was busy the last months with lots of other things, still I decided to take part in the Game Off Game Jam. Unfortunately, due to my time constraints, I was only able to release a very minimal prototype. If you are curious, have a look at LightOff

This also meant not having pretty much any time for M.U.D.-Match. Still, I tried to figure out how I could achieve my goal of supporting multiple texture compression formats. In one of my last posts, I mentioned how M.U.D.-Match is currently using the ASTC texture compression format and that I would rather like to be able to detect the compression capabilities to serve the optimal assets for a device.
And this is what the 0.7.4 release is about!

I took some inspirations from the Addressable Variants Example. In addition to my game specific asset bundles, I created one bundle for each texture compression format. Those bundles contain Sprite Atlases only. This allows me to only load the bundle needed for a certain device / texture compression format and 'lazy-load' the required Sprites via Late Binding. Since this does only work for Sprites, I had to make sure all graphical asstes reference Sprites from a Sprite Atlas instead of textures.

Changes

  • Introduction of 'TextureCompressionVariant'-Bundles (DXT, ASTC, ETC2)
  • Make use fo Sprites instead of Textures where possible. For example, Particles use [Texture Sheet Animation Module](https://docs.unity3d.com/Manual/PartSysTexSheetAnimModule.html) now. This means Textures can be loaded as Sprites from a SpriteAtlas instead of the Material-Texture.
  • Implemented Texture Capability Detection to load the correct build-data and bundle.

Leave a comment

Log in with itch.io to leave a comment.