WEBGL_compressed_texture_atc
扩展属于
WebGL API
and exposes 3 ATC compressed texture formats. ATC is a proprietary compression algorithm for compressing textures on handheld devices.
Compressed textures reduce the amount of memory needed to store a texture on the GPU, allowing for higher resolution textures or more of the same resolution textures.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more information, see also
使用扩展
在
WebGL 教程
.
可用性: ATC compression is typically available on mobile devices with Adreno GPUs , that are currently only built into Qualcomm Snapdragon 设备。
This extension is available to both, WebGL1 and WebGL2 上下文。
The compressed texture formats are exposed by 3 constants and can be used in two functions:
compressedTexImage2D()
and
compressedTexSubImage2D()
.
ext.COMPRESSED_RGB_ATC_WEBGL
Compresses RGB textures with no alpha channel.
ext.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL
Compresses RGBA textures using explicit alpha encoding (useful when alpha transitions are sharp).
ext.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL
Compresses RGBA textures using interpolated alpha encoding (useful when alpha transitions are gradient).
var ext = gl.getExtension('WEBGL_compressed_texture_atc');
var texture = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, texture);
gl.compressedTexImage2D(gl.TEXTURE_2D, 0, ext.COMPRESSED_RGB_ATC_WEBGL, 512, 512, 0, textureData);
| 规范 | 状态 | 注释 |
|---|---|---|
|
WEBGL_compressed_texture_atc
The definition of 'WEBGL_compressed_texture_atc' in that specification. |
草案 | 初始定义。 |
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
更新 GitHub 上的兼容性数据| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
WEBGL_compressed_texture_atc
|
Chrome ? — 68 | Edge No |
Firefox
18 — 64
|
IE ? | Opera ? — 55 | Safari ? | WebView Android ? — 68 | Chrome Android ? — 68 | Firefox Android ? | Opera Android ? — 48 | Safari iOS ? | Samsung Internet Android ? — 10.0 |
不支持
兼容性未知
要求使用供应商前缀或不同名称。
WebGLRenderingContext.getExtension()
WebGLRenderingContext.compressedTexImage2D()
WebGLRenderingContext.compressedTexSubImage2D()
WebGLRenderingContext.getParameter()
WEBGL_compressed_texture_atc
ANGLE_instanced_arrays
EXT_blend_minmax
EXT_color_buffer_half_float
EXT_disjoint_timer_query
EXT_frag_depth
EXT_sRGB
EXT_shader_texture_lod
EXT_texture_filter_anisotropic
OES_element_index_uint
OES_standard_derivatives
OES_texture_float
OES_texture_float_linear
OES_texture_half_float
OES_texture_half_float_linear
OES_vertex_array_object
WEBGL_color_buffer_float
WEBGL_compressed_texture_etc1
WEBGL_compressed_texture_pvrtc
WEBGL_compressed_texture_s3tc
WEBGL_compressed_texture_s3tc_srgb
WEBGL_debug_renderer_info
WEBGL_debug_shaders
WEBGL_depth_texture
WEBGL_draw_buffers
WEBGL_lose_context
WebGL2RenderingContext
WebGLActiveInfo
WebGLBuffer
WebGLContextEvent
WebGLFramebuffer
WebGLObject
WebGLProgram
WebGLQuery
WebGLRenderbuffer
WebGLRenderingContext
WebGLSampler
WebGLShader
WebGLShaderPrecisionFormat
WebGLSync
WebGLTexture
WebGLTransformFeedback
WebGLUniformLocation
WebGLVertexArrayObject