OES_texture_half_float 扩展
OES_texture_half_float
扩展是 WebGL API 的一部分,它添加了具有 16 位(又称半精度浮点)和 32 位浮点组件的纹理格式。
WebGL 扩展可以使用 WebGLRenderingContext.getExtension()
方法访问。有关更多信息,请参阅 使用扩展(在 WebGL 教程 中)。
常量
ext.HALF_FLOAT_OES
-
半精度浮点类型(16 位)。
扩展方法
此扩展扩展了 WebGLRenderingContext.texImage2D()
和 WebGLRenderingContext.texSubImage2D()
type
参数现在接受ext.HALF_FLOAT_OES
。
限制:线性滤波
此扩展不允许对半精度浮点纹理进行线性滤波。如果在 WebGLRenderingContext.texParameter()
方法中将放大或缩小滤波器设置为 gl.LINEAR
、gl.LINEAR_MIPMAP_NEAREST
、gl.NEAREST_MIPMAP_LINEAR
或 gl.LINEAR_MIPMAP_LINEAR
之一,并且使用半精度浮点纹理,则纹理将被标记为不完整。
要在半精度浮点纹理上使用线性滤波,请除了此扩展之外,还启用 OES_texture_half_float_linear
扩展。
半精度浮点颜色缓冲区
此扩展隐式启用 EXT_color_buffer_half_float
扩展(如果支持),它允许渲染到 16 位浮点格式。
示例
js
const ext = gl.getExtension("OES_texture_half_float");
const texture = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, texture);
gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, ext.HALF_FLOAT_OES, image);
规范
规范 |
---|
WebGL OES_texture_half_float Khronos 批准扩展规范 |
浏览器兼容性
BCD 表仅在浏览器中加载