Что нового в WebGPU (Chrome 138)

Франсуа Бофор
François Beaufort

Опубликовано: 17 июня 2025 г.

Сокращение для использования буфера в качестве связующего ресурса

Разработчики теперь могут использовать GPUBuffer напрямую как GPUBindingResource для предоставления шейдеру для привязки. Это делает его совместимым с другими типами привязки и даже проще в использовании, чем GPUBufferBinding , когда и размер, и смещение используют значения по умолчанию. См. issue 419223794 .

const bindGroup = myDevice.createBindGroup({
  layout: myPipeline.getBindGroupLayout(0),
  entries: [
    { binding: 0, resource: mySampler },
    { binding: 1, resource: myTextureView },
    { binding: 2, resource: myExternalTexture },
    { binding: 3, resource: myBuffer }, // Same as { buffer: myBuffer }
    { binding: 4, resource: { buffer: myOtherBuffer, offset: 42 },
  ],
});

Изменения требований к размеру буферов, отображаемых при создании

Создание буфера с mappedAtCreation , установленным в значение true, теперь приводит к возникновению ошибки RangeError , если size не кратен 4. Ранее это происходило только с помощью GPUValidationError . См. проблему 405883445 .

myDevice.createBuffer({
  mappedAtCreation: true,
  size: 42,
  usage: GPUBufferUsage.STORAGE,
});
// Throws RangeError

Отчет об архитектуре последних графических процессоров

Новейшие графические процессоры Nvidia и AMD теперь указывают свою архитектуру в GPUAdapterInfo как "blackwell" и "rdna4" соответственно, а также внесли несколько других незначительных дополнений в списки архитектур графических процессоров. См. issue 417202748 .

Отменить атрибут GPUAdapter isFallbackAdapter

Атрибут GPUAdapter isFallbackAdapter устарел. Он заменён атрибутом GPUAdapterInfo isFallbackAdapter , появившимся в Chrome 136. См. намерение прекратить поддержку .

Обновления Dawn

Emscripten поддерживается в сборках Dawn GLFW для CMake, что позволяет разработчикам ещё больше упростить код кроссплатформенных приложений WebGPU с помощью Emdawnwebgpu , который реализует новейший стандартизированный файл webgpu.h через API браузера. См. изменение dawn:242894 .

Полное руководство смотрите в обновленной документации по созданию приложения с помощью WebGPU .

«Удалённый» порт Emdawnwebgpu теперь включён в выпуски пакетов . Снимок этого порта включён в Emscripten 4.0.10+, который теперь поддерживает внешние порты. Переключение на Emdawnwebgpu теперь осуществляется одной заменой флага с emcc -sUSE_WEBGPU на emcc --use-port=emdawnwebgpu . См. Emscripten PR #24303 , #24220 и Dawn CL 243214 .

Здесь рассматриваются лишь некоторые из ключевых моментов. Ознакомьтесь с полным списком коммитов .

Что нового в WebGPU

Список всего, что было рассмотрено в серии « Что нового в WebGPU» .

Хром 140

Хром 139

Хром 138

Хром 137

Хром 136

Хром 135

Хром 134

Хром 133

Хром 132

Хром 131

Хром 130

Хром 129

Хром 128

Хром 127

Хром 126

Хром 125

Хром 124

Хром 123

Хром 122

Хром 121

Хром 120

Хром 119

Хром 118

Хром 117

Хром 116

Хром 115

Хром 114

Хром 113