Wat is er nieuw in WebGPU (Chrome 138)

François Beaufort
François Beaufort

Gepubliceerd: 17 juni 2025

Afkorting voor het gebruik van buffer als bindingsbron

Ontwikkelaars kunnen nu een GPUBuffer rechtstreeks als GPUBindingResource gebruiken om de shader bloot te stellen voor binding. Dit maakt het consistent met andere bindingstypen en zelfs eenvoudiger te gebruiken dan een GPUBufferBinding wanneer zowel de grootte als de offset standaardwaarden gebruiken. Zie probleem 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 },
  ],
});

Wijzigingen in de groottevereisten voor buffers die bij het aanmaken in kaart zijn gebracht

Het aanmaken van een buffer met mappedAtCreation ingesteld op true genereert nu een RangeError als size geen veelvoud van 4 is. Dit werd voorheen alleen afgedwongen met een GPUValidationError . Zie probleem 405883445 .

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

Architectuurrapport voor recente GPU's

De nieuwste GPU's van Nvidia en AMD rapporteren hun architectuur nu in GPUAdapterInfo als respectievelijk "blackwell" en "rdna4" , evenals een paar andere kleine toevoegingen aan de GPU-architectuur. Zie probleem 417202748 .

Verouder GPUAdapter isFallbackAdapter-kenmerk

Het kenmerk GPUAdapter isFallbackAdapter is verouderd. Het is vervangen door het kenmerk GPUAdapterInfo isFallbackAdapter , dat werd geïntroduceerd in Chrome 136. Zie de intentie om te worden verouderd .

Dawn-updates

Emscripten wordt ondersteund in Dawn GLFW voor CMake-builds, waardoor ontwikkelaars hun WebGPU-appcode voor meerdere platforms nog verder kunnen vereenvoudigen met Emdawnwebgpu , dat de nieuwste gestandaardiseerde webgpu.h via de browser-API implementeert. Zie wijziging dawn:242894 .

Voor een complete handleiding kunt u de bijgewerkte documentatie 'Een app bouwen met WebGPU' raadplegen.

Een "remote" Emdawnwebgpu-port is nu opgenomen in pakketreleases . Een snapshot van deze port is opgenomen in Emscripten 4.0.10+, dat nu extern gehoste ports ondersteunt. Overschakelen naar Emdawnwebgpu is nu een eenvoudige wijziging van emcc -sUSE_WEBGPU naar emcc --use-port=emdawnwebgpu . Zie Emscripten PR #24303 , #24220 en Dawn CL 243214 .

Dit behandelt slechts enkele van de belangrijkste hoogtepunten. Bekijk de volledige lijst met commits .

Wat is er nieuw in WebGPU

Een lijst met alles wat in de serie Wat is er nieuw in WebGPU is behandeld.

Chroom 140

Chroom 139

Chroom 138

Chroom 137

Chroom 136

Chroom 135

Chroom 134

Chroom 133

Chroom 132

Chroom 131

Chroom 130

Chroom 129

Chroom 128

Chroom 127

Chroom 126

Chroom 125

Chroom 124

Chroom 123

Chroom 122

Chroom 121

Chroom 120

Chroom 119

Chroom 118

Chroom 117

Chroom 116

Chroom 115

Chroom 114

Chroom 113