I just uploaded a new article describing how a modern video game texture is stored in graphics memory, why it's done this way, and how it may differ between platforms.
It is called Anatomy of a Texture.
Really nice article, thanks for writing it! I recently dabbled in some of this in connection with modding a game and there encountered the hierarchy you describe of mips, tiles, blocks and texels, so very relatable. Great write-up!
Really enjoyed this, refreshing to read something passionate and hand written. I had no idea how much complexity existed in something as innocuous as handling textures between platforms.
Also pretty cool getting a glimpse into the work 505 does helping developers get their games in front of more people. I had no idea 505 was the publisher[0] for so many recognizable titles.
Suggestion: Adding dates to your blog posts would be helpful. The first sentence mentioned "last year" and I was confused what that meant since the post was undated.
Why not compress the texture using NTC, VAE-VQ or some neural codec into a general embedding space of uint8 and then just expand and create mipmaps and similar using the target hardware standard?
enjoyed this
[dead]
Spent way too long trying to get a rusty metal texture just right in Unity once. The PBR pipeline is no joke.