Spec-Zone.ru › Web APIs

Расширение OES_texture_half_float

Базовая поддержка Широко распространено

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

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

Расширение OES_texture_half_float является частью WebGL API и добавляет форматы текстур с 16-битными (также известными как полуточные) и 32-битными плавающими компонентами.

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

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

Константы

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 бит.

Примеры

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

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

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
OES_texture_half_float 27 14 29 15 8 27 29 15 8 1.5 4.4

См. также

  • WebGLRenderingContext.getExtension()
  • WebGLRenderingContext.texImage2D()
  • WebGLRenderingContext.texSubImage2D()
  • OES_texture_float
  • OES_texture_float_linear
  • 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_half_float

Spec-Zone.ru

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