Spec-Zone.ru › Web APIs

Расширение OES_texture_float

Базовая линия Широко доступно

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Расширение OES_texture_float является частью WebGL API и предоставляет типы пикселей с плавающей запятой для текстур.

Расширения WebGL доступны с помощью метода WebGLRenderingContext.getExtension(). Дополнительную информацию см. также в разделе Использование расширений в учебнике по WebGL.

Примечание: Это расширение доступно только для контекстов WebGL1. В WebGL2 функциональность этого расширения доступна по умолчанию в контексте WebGL2.

Расширенные методы

Это расширение дополняет WebGLRenderingContext.texImage2D() и WebGLRenderingContext.texSubImage2D():

  • Параметр type теперь принимает значение gl.FLOAT.
  • Параметр pixels теперь принимает Float32Array.

Ограничение: Линейное сглаживание

Линейное сглаживание для текстур с плавающей запятой не разрешено с этим расширением. Если вы установите фильтр увеличения или уменьшения в методе WebGLRenderingContext.texParameter() на одно из значений gl.LINEAR, gl.LINEAR_MIPMAP_NEAREST, gl.NEAREST_MIPMAP_LINEAR, или gl.LINEAR_MIPMAP_LINEAR, и используете текстуры с плавающей запятой, текстура будет помечена как неполная.

Чтобы использовать линейное сглаживание для текстур с плавающей запятой, включите расширение OES_texture_float_linear дополнительно к этому расширению.

Буферы цвета с плавающей запятой

Это расширение неявно включает расширение WEBGL_color_buffer_float (если поддерживается), которое позволяет рендерить в буферы цвета с 32-битными значениями с плавающей запятой.

Примеры

const ext = gl.getExtension("OES_texture_float");

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

gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.FLOAT, image);

Спецификации

Спецификация
Спецификация расширения WebGL OES_texture_float Khronos

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
OES_texture_float 10 12 6 15 8 18 6 14 8 1.0 ≤37

См. также

  • WebGLRenderingContext.getExtension()
  • WebGLRenderingContext.texImage2D()
  • WebGLRenderingContext.texSubImage2D()
  • OES_texture_float_linear
  • OES_texture_half_float
  • OES_texture_half_float_linear

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/OES_texture_float

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API