Google расширил возможности WebGPU в Chrome 155 и 156

Google представил обновления WebGPU для Chrome 155 и 156. Изменения затрагивают работу с глубиной фрагментов, сжатыми текстурами, цветовыми пространствами, форматами вершинных данных и 16-битными вычислениями на видеокартах NVIDIA под Linux.

WebGPU — веб-API для использования графического процессора при рендеринге 3D-графики и выполнении вычислений непосредственно в браузере.

Основные изменения WebGPU

Расширение WGSL fragment_depth

Новое расширение языка шейдеров WGSL расширяет возможности работы с глубиной фрагментов и оптимизациями раннего тестирования глубины (early-Z). Это может помочь разработчикам эффективнее организовать рендеринг, однако реальный выигрыш в производительности зависит от графического конвейера и оборудования.

Сжатые текстуры нестандартных размеров

Функция texture-compression-unaligned позволяет использовать сжатые текстуры, размеры которых не кратны размерам блоков сжатия. Это упрощает работу с графическими ресурсами, не требуя искусственного увеличения их размеров до границ блоков.

Новые линейные цветовые пространства

Добавлены srgb-linear и display-p3-linear. Они позволяют использовать линейное представление цвета, в том числе для вывода графики с расширенным цветовым диапазоном.

Такие возможности востребованы при физически корректном освещении, обработке HDR-графики, интерполяции и сглаживании изображений.

Компактный формат вершинных данных

Формат snorm10-10-10-2 позволяет хранить четыре нормализованных компонента в 32 битах: три по 10 бит и один 2-битный компонент.

Это полезно для хранения нормалей 3D-моделей и дополнительных атрибутов при снижении объёма передаваемых данных.

Поддержка shader-f16 для NVIDIA под Linux

Для совместимых современных драйверов NVIDIA под Linux стала доступна опциональная возможность shader-f16, позволяющая использовать 16-битные числа с плавающей точкой в шейдерах WGSL.

Перед использованием разработчикам необходимо проверить поддержку этой функции на конкретном графическом адаптере.

Изменения в Dawn

В реализации WebGPU Dawn появилась возможность получать LUID графического адаптера DXGI через структуру WGPUAdapterPropertiesD3D. Это полезно для приложений, которым требуется сопоставление графических адаптеров в Windows.

Как проверить поддержку WebGPU

Разработчики могут использовать navigator.gpu для получения графического адаптера, а коллекцию adapter.features — для проверки доступности отдельных возможностей.

Наличие WebGPU само по себе не гарантирует поддержку всех новых расширений: она зависит от браузера, операционной системы, GPU и драйверов.

Что означают обновления

Изменения расширяют возможности браузерной 3D-графики, визуализации и вычислений на GPU. Особенно полезными они могут оказаться для разработчиков игр, графических редакторов, визуализаторов и других приложений с интенсивной обработкой графики.

Источник: Chrome for Developers — What’s New in WebGPU (Chrome 155–156).

Оставьте комментарий