Расширение OES_texture_float
Базовая линия Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Расширение OES_texture_float является частью WebGL API и предоставляет типы пикселей с плавающей запятой для текстур.
Расширения WebGL доступны с помощью метода WebGLRenderingContext.getExtension(). Дополнительную информацию см. также в разделе Использование расширений в учебнике по WebGL.
Расширенные методы
Это расширение дополняет 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);
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 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 |
См. также
© 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