Spec-Zone.ru › Web APIs

GPU

Ограниченная доступность

Эта функция не относится к Baseline, поскольку она не работает в некоторых из самых широко используемых браузеров.

  • Узнать больше
  • Показать полную совместимость
  • Отправить отзыв

Экспериментальная: Это экспериментальная технология
Перед использованием в производстве внимательно проверьте таблицу совместимости браузеров.

Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.

Примечание: Эта функция доступна в Web Workers.

Интерфейс GPU API WebGPU — это отправная точка для использования WebGPU. Он может быть использован для возвращения GPUAdapter, из которого можно запросить устройства, настроить функции и ограничения и многое другое.

Объект GPU для текущего контекста доступен через свойства Navigator.gpu или WorkerNavigator.gpu.

Свойства экземпляра

wgslLanguageFeatures Экспериментальная Только для чтения

Объект WGSLLanguageFeatures, который сообщает об расширениях языка WGSL, поддерживаемых реализацией WebGPU.

Методы экземпляра

requestAdapter() Экспериментальная

Возвращает Promise, который завершается объектом GPUAdapter. Из этого объекта можно запросить GPUDevice, который является основным интерфейсом для использования функциональности WebGPU.

getPreferredCanvasFormat() Экспериментальная

Возвращает оптимальный формат текстуры холста для отображения 8-битной глубины, контента с стандартным динамическим диапазоном на текущей системе.

Примеры

Запрос адаптера и устройства

async function init() {
  if (!navigator.gpu) {
    throw Error("WebGPU not supported.");
  }

  const adapter = await navigator.gpu.requestAdapter();
  if (!adapter) {
    throw Error("Couldn't request WebGPU adapter.");
  }

  const device = await adapter.requestDevice();

  //...
}

Настройка GPUCanvasContext с оптимальным форматом текстуры

const canvas = document.querySelector("#gpuCanvas");
const context = canvas.getContext("webgpu");

context.configure({
  device: device,
  format: navigator.gpu.getPreferredCanvasFormat(),
  alphaMode: "premultiplied",
});

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

Спецификация
WebGPU
# gpu-interface

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

Рабочий стол Мобильный
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
GPU
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
превьюВ настоящее время поддерживается только на Linux и Windows.
99В настоящее время поддерживается только на ChromeOS, macOS и Windows.
превью 121 Нет 81 Нет 25.0 121
getPreferredCanvasFormat
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
превьюВ настоящее время поддерживается только на Linux и Windows.
99В настоящее время поддерживается только на ChromeOS, macOS и Windows.
превью 121 Нет 81 Нет 25.0 121
requestAdapter
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
превьюВ настоящее время поддерживается только на Linux и Windows.
99В настоящее время поддерживается только на ChromeOS, macOS и Windows.
превью 121 Нет 81 Нет 25.0 121
wgslLanguageFeatures
115В настоящее время поддерживается только на ChromeOS, macOS и Windows.
115В настоящее время поддерживается только на ChromeOS, macOS и Windows.
Нет
101В настоящее время поддерживается только на ChromeOS, macOS и Windows.
превью 121 Нет 81 Нет 25.0 121

См. также

  • The API WebGPU

© 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/GPU

Spec-Zone.ru

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