If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

Khronos ASTC: Royalty-Free Next-Gen Texture Compression

08-06-2012, 09:50 AM

Phoronix: Khronos ATSC: Royalty-Free Next-Gen Texture Compression

SIGGRAPH LA 2012 is this week and expected this morning marked the release of OpenGL 4.3 and OpenGL ES 3.0, as talked about on Phoronix previously plus their details and new features will be mentioned in posts on Phoronix in the next few minutes. There's also one pleasant and very welcome surprise from the Khronos Group this morning: ATSC. ATSC is a royalty-free next-generation texture compression specification. With a bit of luck, hopefully ATSC will finally kick the patent-laden S3TC out the door...

Comment

Originally posted by Tony King-Smith, vice president marketing, Imagination

As a staunch supporter of open standards, in particular the Khronos family of APIs, we welcome ASTC as a true cross-platform state-of-the-art texture compression technology, whose creation is testimony to the collaborative abilities of Khronos

I think Imagination Technologies' attitude towards anything and everything even remotely related to software freedom shows exactly how much they love the ability to collaborate.
Does anybody else find the blantant hypocrisy of today's businesses so outrageously disgusting?

Comment

As we’ve noted in our rundowns of OpenGL and OpenGL ES, the inclusion of ETC texture compression support as part of the core OpenGL standards has finally given OpenGL a standard texture compression format after a number of years. At the same time however, the ETC format itself is approaching several years old, and not unlike S3TC it’s only designed for a limited number of cases. So while Khronos has ETC right now, in the future they want better texture compression and are now taking the first steps to make that happen.

The reward at the end of that quest is Adaptive Scalable Texture Compression (ASTC), a new texture compression format first introduced by ARM as a joint ARM/NVIDIA project late in 2011. If all goes according to plan ASTC will eventually become OpenGL and OpenGL ES’s next generation texture compression algorithm. But for the time being Khronos is introducing it as an optional feature of OpenGL ES 3.0 and OpenGL 4.3 in order to solicit feedback from hardware and software developers. Only once all parties are satisfied with ASTC to the point that it’s ready to be implemented into hardware can it meaningfully be moved into the core OpenGL specifications.

Oh, and before you get too excited about ETC:

Practically speaking, this won’t make a huge difference to desktop developers right now. Because S3TC is a required part of the Direct3D specification and all desktop GPUs support Direct3D, S3TC has been a de-facto OpenGL standard for nearly 10 years now. And because few developers will target OpenGL 4.3 right away, that won’t change. But this means that developers targeting 4.3 do finally have a choice in texture compression, and developers doing cross-platform development with OpenGL ES can use the same texture compression format in both cases.

It’s worth noting though that just because a GPU “supports” ETC doesn’t mean it has hardware support. NVIDIA has told us that they’ll be 4.3 compliant, but they’re handling ETC by decompressing the texture in their drivers before sending it over to the GPU in an uncompressed format, and while AMD wasn’t able to get back to us in time it’s almost certainly the same story over there. For ports of OpenGL ES games this isn’t going to be a problem (dGPUs have plenty of high-bandwidth memory), but it means S3TC will remain the de-facto standard desktop OpenGL texture compression format for now.

So that means ETC texture compression will use up more RAM and will be slower than uncompressed textures, until it gets implemented in desktop hardware, which may be never.