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

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

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

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

Теперь разработчики могут использовать GPUBuffer напрямую в качестве GPUBindingResource для предоставления шейдеру возможности привязки. Это обеспечивает согласованность с другими типами привязки и делает его даже проще в использовании, чем GPUBufferBinding, когда размер и смещение используют значения по умолчанию. См. проблему 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" соответственно, а также внесены некоторые другие незначительные изменения в списки архитектур графических процессоров. См. проблему 417202748 .

Устаревший атрибут isFallbackAdapter для GPUAdapter

Атрибут `GPUAdapter isFallbackAdapter устарел. Он заменен атрибутом `GPUAdapterInfo isFallbackAdapter , который был введен в Chrome версии 136. См. намерение устареть .

Утренние обновления

В Dawn GLFW для сборок CMake поддерживается Emscripten, что позволяет разработчикам еще больше упростить код своих кроссплатформенных приложений 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» .

Хром 144

Хром 143

Хром 142

Хром 141

Хром 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