OES_texture_half_float

我们的志愿者还没有将这篇文章翻译为 中文 (简体)加入我们帮助完成翻译!
您也可以阅读此文章的English (US)版。

The OES_texture_half_float extension is part of the WebGL API and adds texture formats with 16- (aka half float) and 32-bit floating-point components.

WebGL extensions are available using the WebGLRenderingContext.getExtension() method. For more information, see also Using Extensions in the WebGL tutorial.

Availability: This extension is only available to WebGL1 contexts. In WebGL2, the functionality of this extension is available on the WebGL2 context by default. The constant in WebGL2 is gl.HALF_FLOAT.

Constants

ext.HALF_FLOAT_OES
Half floating-point type (16-bit).

Extended methods

This extension extends WebGLRenderingContext.texImage2D() and WebGLRenderingContext.texSubImage2D():

  • The type parameter now accepts ext.HALF_FLOAT_OES.

Limitation: Linear filtering

Linear filtering on half floating-point textures is not allowed with this extension. If you set the magnification or minification filter in the WebGLRenderingContext.texParameter() method to one of gl.LINEAR, gl.LINEAR_MIPMAP_NEAREST, gl.NEAREST_MIPMAP_LINEAR, or gl.LINEAR_MIPMAP_LINEAR, and use half floating-point textures, the texture will be marked as incomplete.

To use linear filtering on half floating-point textures, enable the OES_texture_half_float_linear extension in addition to this extension.

Half floating-point color buffers

This extension implicitly enables the EXT_color_buffer_half_float extension, which allows rendering to 16-bit floating point formats.

Examples

var ext = gl.getExtension('OES_texture_half_float');
var texture = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, texture);
gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, ext.HALF_FLOAT_OES, image);

Specifications

Specification Status Comment
OES_texture_half_float
The definition of 'OES_texture_half_float' in that specification.
Recommendation Initial definition.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic Support ? (Yes)29.0 ? ? ?
FeatureAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic Support ? ? (Yes) ? ? ? ?

See also

文档标签和贡献者