pub struct WEBGL_compressed_texture_astc(_);
Expand description
Extension
This extension exposes the compressed texture format defined in the KHR_texture_compression_astc_hdr OpenGL ES extension to WebGL. Consult that extension specification for behavioral definitions, including error behaviors.
ASTC textures may be encoded using either high or low dynamic range, corresponding to an “HDR profile” and “LDR profile”. The compression format is designed to be extended, and for new profiles to be added in the future. For this reason, enabling the WebGL extension enables all of the profiles supported by the implementation. The supported profiles may be queried by calling getSupportedProfiles against the extension object. Compression format COMPRESSED_RGBA_ASTC_4x4_KHR, COMPRESSED_RGBA_ASTC_5x4_KHR, COMPRESSED_RGBA_ASTC_5x5_KHR, COMPRESSED_RGBA_ASTC_6x5_KHR, COMPRESSED_RGBA_ASTC_6x6_KHR, COMPRESSED_RGBA_ASTC_8x5_KHR, COMPRESSED_RGBA_ASTC_8x6_KHR, COMPRESSED_RGBA_ASTC_8x8_KHR, COMPRESSED_RGBA_ASTC_10x5_KHR, COMPRESSED_RGBA_ASTC_10x6_KHR, COMPRESSED_RGBA_ASTC_10x8_KHR, COMPRESSED_RGBA_ASTC_10x10_KHR, COMPRESSED_RGBA_ASTC_12x10_KHR, COMPRESSED_RGBA_ASTC_12x12_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR, COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR, and COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR may be passed to the compressedTexImage2D and compressedTexSubImage2D entry points. Calling getParameter with the argument COMPRESSED_TEXTURE_FORMATS will include the format from this specification.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_4x4_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 3) / 4) * floor((height + 3) / 4) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_5x4_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 4) / 5) * floor((height + 3) / 4) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_5x5_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 4) / 5) * floor((height + 4) / 5) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_6x5_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 5) / 6) * floor((height + 4) / 5) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_6x6_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 5) / 6) * floor((height + 5) / 6) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_8x5_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 7) / 8) * floor((height + 4) / 5) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_8x6_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 7) / 8) * floor((height + 5) / 6) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_8x8_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 7) / 8) * floor((height + 7) / 8) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_10x5_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 9) / 10) * floor((height + 4) / 5) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_10x6_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 9) / 10) * floor((height + 5) / 6) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_10x8_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 9) / 10) * floor((height + 7) / 8) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_10x10_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 9) / 10) * floor((height + 9) / 10) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_12x10_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 11) / 12) * floor((height + 9) / 10) * 16
If it is not, an INVALID_VALUE error is generated.
The following format-specific restrictions must be enforced: COMPRESSED_RGBA_ASTC_12x12_KHR COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR
The byteLength of the ArrayBufferView, pixels, passed to compressedTexImage2D or compressedTexSubImage2D must be equal to the following number of bytes:
floor((width + 11) / 12) * floor((height + 11) / 12) * 16
If it is not, an INVALID_VALUE error is generated.
Implementations
sourceimpl WEBGL_compressed_texture_astc
impl WEBGL_compressed_texture_astc
pub const COMPRESSED_RGBA_ASTC_10X10_KHR: GLenum = 37_819u32
pub const COMPRESSED_RGBA_ASTC_10X5_KHR: GLenum = 37_816u32
pub const COMPRESSED_RGBA_ASTC_10X6_KHR: GLenum = 37_817u32
pub const COMPRESSED_RGBA_ASTC_10X8_KHR: GLenum = 37_818u32
pub const COMPRESSED_RGBA_ASTC_12X10_KHR: GLenum = 37_820u32
pub const COMPRESSED_RGBA_ASTC_12X12_KHR: GLenum = 37_821u32
pub const COMPRESSED_RGBA_ASTC_4X4_KHR: GLenum = 37_808u32
pub const COMPRESSED_RGBA_ASTC_5X4_KHR: GLenum = 37_809u32
pub const COMPRESSED_RGBA_ASTC_5X5_KHR: GLenum = 37_810u32
pub const COMPRESSED_RGBA_ASTC_6X5_KHR: GLenum = 37_811u32
pub const COMPRESSED_RGBA_ASTC_6X6_KHR: GLenum = 37_812u32
pub const COMPRESSED_RGBA_ASTC_8X5_KHR: GLenum = 37_813u32
pub const COMPRESSED_RGBA_ASTC_8X6_KHR: GLenum = 37_814u32
pub const COMPRESSED_RGBA_ASTC_8X8_KHR: GLenum = 37_815u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR: GLenum = 37_851u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR: GLenum = 37_848u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR: GLenum = 37_849u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR: GLenum = 37_850u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR: GLenum = 37_852u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR: GLenum = 37_853u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR: GLenum = 37_840u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR: GLenum = 37_841u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR: GLenum = 37_842u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR: GLenum = 37_843u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR: GLenum = 37_844u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR: GLenum = 37_845u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR: GLenum = 37_846u32
pub const COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR: GLenum = 37_847u32
sourcepub fn get_supported_profiles(&self) -> Vec<String>
pub fn get_supported_profiles(&self) -> Vec<String>
Returns the names of the ASTC profiles supported by the implementation. As of this writing, valid return values will include “ldr”, corresponding to the GL_KHR_texture_compression_astc_ldr extension string; and “hdr”, corresponding to the GL_KHR_texture_compression_astc_hdr extension string. More profiles may be added in the future.
Trait Implementations
sourceimpl Clone for WEBGL_compressed_texture_astc
impl Clone for WEBGL_compressed_texture_astc
sourcefn clone(&self) -> WEBGL_compressed_texture_astc
fn clone(&self) -> WEBGL_compressed_texture_astc
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresourceimpl Debug for WEBGL_compressed_texture_astc
impl Debug for WEBGL_compressed_texture_astc
sourceimpl From<WEBGL_compressed_texture_astc> for Reference
impl From<WEBGL_compressed_texture_astc> for Reference
sourcefn from(value: WEBGL_compressed_texture_astc) -> Self
fn from(value: WEBGL_compressed_texture_astc) -> Self
sourceimpl InstanceOf for WEBGL_compressed_texture_astc
impl InstanceOf for WEBGL_compressed_texture_astc
sourcefn instance_of(_reference: &Reference) -> bool
fn instance_of(_reference: &Reference) -> bool
Self
.