Friend Опубликовано Среда в 15:50 Поделиться Опубликовано Среда в 15:50 В Firefox и Safari будет включена поддержка WebGPU Цитата Компания Mozilla приняла решение активировать в Firefox поддержку API WebGPU и языка шейдеров WGSL (WebGPU Shading Language). Для платформы Windows поддержка WebGPU будет включена по умолчанию в выпуске Firefox 141, намеченном на 22 июля. Затем в течение нескольких месяцев поддержку WebGPU планируют активировать в сборках для Linux и macOS, а через некоторое время и в версии для платформы Android. Для ручного включения WebGPU можно использовать параметры "dom.webgpu.enabled" и "gfx.webrender.all" на странице about:config. В Chrome поддержка WebGPU была предложена по умолчанию в версии 113, сформированной в мае 2023 года. В Safari поддержку WebGPU планируют включить по умолчанию этой осенью (экспериментальная поддержка доступна с ноября 2021 года). В Firefox экспериментальная поддержка WebGPU присутствовала с 2020 года, но была включена по умолчанию только в ночных сборках Firefox. Реализация WebGPU в Firefox основана на коде проекта WGPU, написанного на языке Rust и способного работать поверх графических API Direct3D 12, Vulkan, OpenGL и Metal. WebGPU предоставляет схожий с Vulkan, Metal и Direct3D 12 программный интерфейс для выполнения операций на стороне GPU. Кроме 3D-графики WebGPU охватывает и возможности, связанные с выносом вычислений на сторону GPU и выполнением шейдеров. Концептуально WebGPU отличается от старой спецификации WebGL примерно так же, как графический API Vulkan отличается от OpenGL. При этом WebGPU не основывается на конкретном графическом API, а представляет собой универсальную прослойку, использующую те же низкоуровневые примитивы, что имеются в Vulkan, Metal и Direct3D. WebGPU даёт возможность приложениям на языке JavaScript контролировать организацию, обработку и передачу команд к GPU, управлять связанными ресурсами, памятью, буферами, объектами текстур и скомпилированными графическими шейдерами. Подобный подход позволяет добиться более высокой производительности графических приложений за счёт снижения накладных расходов и повышения эффективности работы с GPU. При помощи WebGPU можно создавать не привязанные к конкретным платформам сложные 3D-проекты, работающие не хуже, чем обособленные программы, напрямую использующие Vulkan, Metal или Direct3D. WebGPU также предоставляет дополнительные возможности для портирования нативных графических программ в форму, способную работать в браузерах, благодаря компиляции в WebAssembly. Ключевые особенности WebGPU и отличия от WebGL: Раздельное управление ресурсами, подготовительными работами и передачей команд в GPU (в WebGL один объект отвечал за всё разом). Предоставляется три отдельных контекста: GPUDevice для создания ресурсов, таких как текстуры и буферы; GPUCommandEncoder для кодирования отдельных команд, включая стадии рендеринга и вычисления; GPUCommandBuffer для передачи в очередь на выполнение в GPU. Результат может быть отрисован в области, связанной с одним или несколькими элементами canvas, или обработан без вывода (например, при запуске вычислительных задач). Разделение стадий упрощает разнесение создания ресурсов и подготовительные операции в разные обработчики, которые могут выполняться в разных потоках. Иной подход при обработке состояний. В WebGPU предлагается два объекта - GPURenderPipeline и GPUComputePipeline, позволяющих комбинировать различные состояния, заранее определённые разработчиком, что даёт возможность браузеру не тратить ресурсы на проведение дополнительной работы, такой как перекомпиляция шейдеров. Среди поддерживаемых состояний: шейдеры, раскладки вершинных буферов и атрибутов, раскладки прикреплённых групп, смешивание, глубина и шаблоны, форматы вывода после рендеринга. Модель связывания, во многом напоминающая присутствующие в Vulkan средства группировки ресурсов. Для объединения ресурсов в группы в WebGPU предоставляется объект GPUBindGroup, который во время записи команд можно связать с другими такими же объектами для использования в шейдерах. Создание подобных групп даёт возможность драйверу заранее выполнить необходимые подготовительные действия, а браузеру позволяет значительно быстрее менять привязки ресурсов между вызовами отрисовки. Раскладка привязок ресурсов может быть определена заранее при помощи объекта GPUBindGroupLayout. Ссылка на комментарий Поделиться на другие сайты Поделиться
clenup Опубликовано 4 часа назад Поделиться Опубликовано 4 часа назад (изменено) Релиз Firefox 141: Что нового Цитата Firefox 141 доступен для загрузки: поддержка WebGPU на Windows для графики и вычислений, снижение потребления памяти на Linux, обновления Popover API, атрибут closedby для диалогов, возврат CHIPS для cookies. Автоматическое обновление для Windows и macOS, словарь для валенсийского языка Поддержка WebGPU на Windows В Firefox 141 на Windows по умолчанию включен API WebGPU. Эта технология обеспечивает высокую производительность графики и вычислений, что особенно актуально для веб-игр, креативных приложений и других задач, требующих интенсивной работы с GPU. Первые тесты показывают улучшение времени кадра по сравнению с WebGL и ускорение вычислительных процессов. Поддержка WebGPU для Linux и macOS находится в разработке и будет добавлена после достижения полной совместимости. Оптимизация памяти для Linux Пользователи Linux заметят снижение потребления оперативной памяти. Это улучшение особенно важно для систем с ограниченными ресурсами. Кроме того, при обновлении через менеджер пакетов браузер больше не требует принудительной перезагрузки — обновления применяются в фоновом режиме. Улучшения для пользователей Windows 11 В Firefox 141 для Windows 11 элементы управления окном — кнопки минимизации, максимизации и закрытия — теперь используют системные шрифтовые иконки вместо кастомных, что обеспечивает более естественный вид интерфейса. Поддержка валенсийского языка Для пользователей, использующих валенсийский язык, добавлен встроенный словарь для проверки орфографии. Теперь нет необходимости устанавливать дополнительное расширение. Обновления для веб-разработчиков Firefox 141 предлагает несколько улучшений, которые упрощают работу веб-разработчиков: Улучшенное управление кэшем Браузер теперь очищает кэш навигации (back/forward cache) при получении заголовка Clear-Site-Data: "cache". Это дает разработчикам более точный контроль над кэшированным содержимым. Улучшения Popover API Методы showPopover() и togglePopover() теперь поддерживают аргумент options.source для указания источника вызова. Кроме того, togglePopover() получил опцию force, которая позволяет явно задавать состояние всплывающего окна. Возвращение CHIPS Технология Cookies Having Independent Partitioned State (CHIPS) вновь включена. Она обеспечивает изолированное хранение cookies для каждого сайта верхнего уровня, что повышает конфиденциальность. Изменено 4 часа назад пользователем clenup Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Пожалуйста, войдите, чтобы комментировать
Вы сможете оставить комментарий после входа в
Войти