Spec-Zone.ru › Web APIs

GPUDevice: свойство limits

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

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

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

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

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

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

Чтение только свойство limits интерфейса GPUDevice возвращает объект GPUSupportedLimits, который описывает поддерживаемые пределы устройства. Все значения пределов будут включены, и запрошенные пределы при создании устройства (т. е. при вызове GPUAdapter.requestDevice()) будут отражены в этих значениях.

Примечание: Не все пределы будут отображаться как ожидается, даже если они поддерживаются базовым оборудованием. Для получения более подробной информации см. GPUAdapter.limits.

Значение

Экземпляр объекта GPUSupportedLimits.

Примеры

В следующем коде мы запрашиваем значение GPUAdapter.limits для maxBindGroups, чтобы проверить, равно ли оно или больше 6. Нашему теоретическому приложению идеально подходят 6 групп связывания, поэтому, если возвращаемое значение больше или равно 6, мы добавляем максимальный предел 6 к объекту requiredLimits.

Затем мы проверяем, что ожидаемый предел был установлен на полученном устройстве, выведя его значение в консоль.

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 requiredLimits = {};

  // App ideally needs 6 bind groups, so we'll try to request what the app needs
  if (adapter.limits.maxBindGroups >= 6) {
    requiredLimits.maxBindGroups = 6;
  }

  const device = await adapter.requestDevice({
    requiredLimits,
  });

  console.log(device.limits.maxBindGroups);

  // ...
}

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

Спецификация
WebGPU
# dom-gpudevice-limits

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

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
limits
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
113В настоящее время поддерживается только на ChromeOS, macOS и Windows.
предварительная версияВ настоящее время поддерживается только на Linux и Windows.
99В настоящее время поддерживается только на 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/GPUDevice/limits

Spec-Zone.ru

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