OES_texture_half_float_linear 扩展

OES_texture_half_float_linear 扩展是 WebGL API 的一部分,它允许对纹理使用半浮点像素类型进行线性过滤。

WebGL 扩展可以使用 WebGLRenderingContext.getExtension() 方法获得。有关更多信息,请参见 使用扩展WebGL 教程 中。

注意:此扩展仅对 WebGL1 上下文可用。在 WebGL2 中,此扩展的功能在 WebGL2 上下文中默认可用,无需扩展。

线性过滤

OES_texture_half_float 扩展本身并不允许对半浮点纹理进行线性过滤。此扩展启用了此功能。

借助此扩展,您现在可以在 WebGLRenderingContext.texParameter() 方法中将放大或缩小过滤器设置为以下之一:gl.LINEARgl.LINEAR_MIPMAP_NEARESTgl.NEAREST_MIPMAP_LINEARgl.LINEAR_MIPMAP_LINEAR,并使用半浮点纹理。

示例

js
const halfFloat = gl.getExtension("OES_texture_half_float");
gl.getExtension("OES_texture_half_float_linear");

const texture = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, texture);

gl.texParameterf(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
gl.texImage2D(
  gl.TEXTURE_2D,
  0,
  gl.RGBA,
  gl.RGBA,
  halfFloat.HALF_FLOAT_OES,
  image,
);

规范

规范
WebGL OES_texture_half_float_linear Khronos 认证扩展规范

浏览器兼容性

BCD 表仅在启用 JavaScript 的浏览器中加载。

另请参阅