WebGPU 新功能's (Chrome 114)

François Beaufort
François Beaufort

最佳化 JavaScript

Chromium 貢獻者降低了從 V8 JavaScript 引擎中產生的程式碼呼叫 Blink 轉譯引擎中的 C++ 處理常式的負擔,提高 GPUComputePassEncoderGPURenderPassEncoderGPUCommandEncoder 方法的 WebGPU 效能。請參閱問題 chromium:1417558

以下 Microbenchmark 顯示從 JavaScript 呼叫的 CPU 作業時間,從每 1 萬次繪圖減少約 0.5 毫秒,每 1 萬次繪圖作業減少約 0.3 毫秒,成長率為 40%。

顯示快速呼叫改善情形的 Chrome 瀏覽器基準圖表螢幕截圖。
顯示快速通話改善情形的 Chrome 基準圖表 (來源)。

在未設定的畫布上 getCurrentTexture() 擲回 InvalidStateError

在未設定的畫布上呼叫 GPUCanvasContext getCurrentTexture() 方法,現在會根據 WebGPU 規格擲回 InvalidStateError,而非 OperationError。請參閱 問題 chromium:1424461

const context = document.querySelector("canvas").getContext("webgpu");
context.getCurrentTexture(); // Throws InvalidStateError

WGSL 最新消息

AbstractInt 的零填入向量現在可以寫入 vec2()vec3()vec4()。請參閱問題色調:1892。例如:

  • vec2() 為「vec2(0,0)
  • vec3() 為「vec3(0,0,0)
  • vec4() 為「vec4(0,0,0,0)

黎明更新

改善錯誤訊息

系統不會再捨棄無效物件的描述元標籤,因此您可以在錯誤訊息中看到這些標籤。請參閱問題發生時間:1771

為 Node.js 新增缺少的 API

現已針對 Node.js 實作 GPUAdapter::requestAdapterInfo()GPUBuffer::getMapState() 方法。請參閱問題發生時間:1761

WebGPU 的新功能

WebGPU 新功能」系列中已說明的所有功能清單。

Chrome 125

Chrome 124

Chrome 123

Chrome 122

Chrome 121

Chrome 120

Chrome 119

Chrome 118

Chrome 117

Chrome 116

Chrome 115

Chrome 114

Chrome 113