Content deleted Content added
m v2.03b - Bot T20 CW#61 - WP:WCW project (Reference before punctuation) |
Opencooper (talk | contribs) formatting, including proper multiplication symbol |
||
Line 1:
'''Adaptive Scalable Texture Compression''' ('''ASTC''') is a [[lossy compression|lossy]] block-based [[texture compression]] [[algorithm]] developed by Jørn Nystad et al. of [[ARM Holdings|ARM Ltd.]] and [[Advanced Micro Devices|AMD]].<ref>{{cite web |url=https://www.arm.com/products/multimedia/mali-technologies/adaptive-scalable-texture-compression.php |title=Adaptive Scalable Texture Compression (ASTC) technology developed by ARM® and AMD}}</ref>
Full details of ASTC were first presented publicly at the High Performance Graphics 2012 conference, in a paper by Olson et al. entitled "Adaptive Scalable Texture Compression".<ref name=astc_paper>{{cite web|url=https://www.cs.cmu.edu/afs/cs/academic/class/15869-f11/www/readings/nystad12_astc.pdf|title=Adaptive Scalable Texture Compression |publisher=HPG 2012 |date= |accessdate=2012-06-27}}</ref>
ASTC was adopted as an official extension for both [[OpenGL]] and [[OpenGL ES]] by the [[Khronos Group]] on 6 August 2012.<ref>{{cite web|url=http://www.khronos.org/news/press/khronos-releases-atsc-next-generation-texture-compression-specification|title=Khronos Releases ATSC Next-Generation Texture Compression Specification|publisher=The Khronos Group Inc.|date=2012-08-06|accessdate=2012-08-06}}</ref>
== Hardware support ==
Both profiles (LDR and Full) are supported on the latest [[Mali (GPU)|Mali]] versions, including the
Nvidia's [[Kepler (microarchitecture)|Kepler]] and [[Maxwell (microarchitecture)|Maxwell]]-based [[Tegra]] SoCs.<ref>{{cite web |url=http://on-demand.gputechconf.com/siggraph/2015/presentation/SIG1501-Piers-Daniell.pdf |title=Vulkan API}}</ref>
[[Intel HD and Iris Graphics|Intel GPUs]] in [[Skylake (microarchitecture)|Skylake]] and later processors.
On Linux, all Gallium 3D drivers have a software fallback since 2018, so ASTC can be used on any AMD Radeon GPU.<ref>https://lists.freedesktop.org/archives/mesa-dev/2018-July/200867.html</ref>
Line 54:
== 2D block footprints and bit rates ==
ASTC textures are compressed using a fixed block size of 128 bits, but with a variable block footprint ranging from
{| class="wikitable"
Line 62:
! Increment
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|}
In the above table, the "Increment" column shows the additional storage required to store a texture using this bit rate, as compared to the next smallest. Block footprints are presented as width
== 3D block footprints and bit rates ==
ASTC 3D textures are compressed using a fixed block size of 128 bits, as for 2D but with a variable block footprint ranging from
{| class="wikitable"
Line 103:
! Increment
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|- style="text-align:center;"
|
|}
Block footprints are presented as width
== See also ==
* [[3Dc]]
== References ==
{{reflist
== External links ==
|