惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
博客园_首页
H
Help Net Security
T
Tailwind CSS Blog
S
SegmentFault 最新的问题
GbyAI
GbyAI
Scott Helme
Scott Helme
D
Docker
Hacker News: Ask HN
Hacker News: Ask HN
P
Privacy & Cybersecurity Law Blog
Jina AI
Jina AI
雷峰网
雷峰网
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Spread Privacy
Spread Privacy
G
GRAHAM CLULEY
C
Cisco Blogs
The Hacker News
The Hacker News
F
Full Disclosure
Y
Y Combinator Blog
Blog — PlanetScale
Blog — PlanetScale
Recent Announcements
Recent Announcements
G
Google Developers Blog
量子位
K
Kaspersky official blog
Cisco Talos Blog
Cisco Talos Blog
The Cloudflare Blog
A
About on SuperTechFans
C
Cybersecurity and Infrastructure Security Agency CISA
Last Week in AI
Last Week in AI
博客园 - 三生石上(FineUI控件)
Microsoft Security Blog
Microsoft Security Blog
Martin Fowler
Martin Fowler
T
Tenable Blog
P
Palo Alto Networks Blog
H
Heimdal Security Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
W
WeLiveSecurity
Schneier on Security
Schneier on Security
The Register - Security
The Register - Security
F
Fortinet All Blogs
Stack Overflow Blog
Stack Overflow Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
The Blog of Author Tim Ferriss
N
News and Events Feed by Topic
Hugging Face - Blog
Hugging Face - Blog
小众软件
小众软件
V
V2EX
爱范儿
爱范儿

developer.chrome.com: Blog

A developer toolkit to make your website agent-ready  |  Blog  |  Chrome for Developers Unlock runtime insights: Introducing third-party developer tools for Chrome DevTools for agents  |  Blog  |  Chrome for Developers Join the WebMCP origin trial  |  Blog  |  Chrome for Developers Seamless PWA origin migration: Change domains without losing users  |  Blog  |  Chrome for Developers Chrome 150 beta  |  Blog  |  Chrome for Developers New in Chrome 149  |  Blog  |  Chrome for Developers What's new in DevTools (Chrome 149)  |  Blog  |  Chrome for Developers Build new features using built-in AI in Chrome  |  Blog  |  Chrome for Developers What's new in web extensions: I/O 2026 recap  |  Blog  |  Chrome for Developers New in Chrome at Google I/O 2026  |  Blog  |  Chrome for Developers Modernize authentication with passkeys, digital credentials, and more  |  Blog  |  Chrome for Developers 15 updates from Google I/O 2026: Powering the agentic web with new capabilities, tools, and features in Chrome  |  Blog  |  Chrome for Developers Streamline your AI coding workflow with Chrome DevTools for agents 1.0  |  Blog  |  Chrome for Developers Declarative partial updates  |  Blog  |  Chrome for Developers Introducing the HTML-in-Canvas API origin trial  |  Blog  |  Chrome for Developers Gap decorations: Now available in Chromium  |  Blog  |  Chrome for Developers Streamlined sign-in: Immediate UI mode is now available  |  Blog  |  Chrome for Developers Install web apps with the new HTML install element | Blog | Chrome for Developers Chrome 149 beta | Blog | Chrome for Developers New in Chrome 148 | Blog | Chrome for Developers What's new in DevTools (Chrome 148) | Blog | Chrome for Developers Container Timing origin trial | Blog | Chrome for Developers Empower your team with expanded roles in the Developer Dashboard | Blog | Chrome for Developers Localization support for web app manifests | Blog | Chrome for Developers Unlock Structured Clone for Chrome Extension Messaging | Blog | Chrome for Developers What's New in WebGPU (Chrome 147-148) | Blog | Chrome for Developers Final Soft Navigations origin trial starting in Chrome 147 | Blog | Chrome for Developers Connection Allowlists origin trial: Secure your web application's network  |  Blog  |  Chrome for Developers Improved Japanese phonetic name support in Chrome autofill  |  Blog  |  Chrome for Developers Take our course about AI evaluations  |  Blog  |  Chrome for Developers Chrome 148 beta | Blog | Chrome for Developers Chrome Web Store: A smarter, faster appeals process | Blog | Chrome for Developers New in Chrome 147 | Blog | Chrome for Developers What's new in DevTools (Chrome 147) | Blog | Chrome for Developers Chrome 147 enables concurrent and nested view transitions with element-scoped view transitions | Blog | Chrome for Developers Enter video Picture-in-Picture automatically on more sites | Blog | Chrome for Developers When to use WebMCP and MCP | Blog | Chrome for Developers Chrome 147 beta | Blog | Chrome for Developers New in Chrome 146 | Blog | Chrome for Developers What's new in DevTools (Chrome 146) | Blog | Chrome for Developers
What's New in WebGPU (Chrome 149-150)  |  Blog  |  Chrome for Developers
GitHub · 2026-06-17 · via developer.chrome.com: Blog
Skip to main content

What's New in WebGPU (Chrome 149-150)

François Beaufort

Published: June 17, 2026

Immediates, also known as push constants or root constants, let you pass small amounts of frequently changing data directly to shaders. This process bypasses the overhead of creating GPU buffers and managing bind groups.

Updating uniform buffer bindings for data that changes every draw call—such as a unique object ID or a 3D transformation matrix for hundreds of objects—creates CPU overhead. Inject raw values directly into the pass encoder to avoid writing data to memory and managing GPU lookups.

Immediates provide a fast path for tiny, highly dynamic variables. Use uniform buffers or storage buffers for large arrays of data, complex lighting structures, or massive matrices.

In your WGSL shader, the <immediate> address space lets you define immediate data that can be passed directly to the pass encoder. Call setImmediates() in JavaScript before a draw call to provide this data without binding a group. To check for support, feature-detect the immediate_address_space WGSL language extension through navigator.gpu.wgslLanguageFeatures. See the following example and the intent to ship.

if (!navigator.gpu.wgslLanguageFeatures.has('immediate_address_space')) {
   throw new Error(`WGSL immediate address space is not available`);
}

const adapter = await navigator.gpu.requestAdapter();
const device = await adapter.requestDevice();

const module = device.createShaderModule({ code: `
  requires immediate_address_space;

  var<immediate> color: vec4f;

  @vertex fn vertexMain(@builtin(vertex_index) i : u32) -> @builtin(position) vec4f {
    const pos = array(vec2f(0, 1), vec2f(-1, -1), vec2f(1, -1));
    return vec4f(pos[i], 0, 1);
  }

  @fragment fn fragmentMain() -> @location(0) vec4f {
    return color;
  }`,
});

// Create render pass encoder (omitted)...

// By using layout: 'auto', WebGPU will automatically infer the `immediateSize`
// required by the pipeline layout from the WGSL module.
const pipeline = device.createRenderPipeline({
  layout: 'auto',
  vertex: { module },
  fragment: { module, targets: [{ format }] },
});
myRenderPassEncoder.setPipeline(pipeline);

// Send immediate data to the GPU, then issue a draw call
myRenderPassEncoder.setImmediates(/*rangeOffset=*/0, new Float32Array([255, 0, 0, 255]));
myRenderPassEncoder.draw(3);
myRenderPassEncoder.end();

For a deeper dive into this feature, take a look at WebGPUFundamentals Immediates.

Kudos to the team at Microsoft for their contributions!

Stricter validation for transient attachments

WebGPU recently introduced the TRANSIENT_ATTACHMENT GPUTextureUsage flag, which lets developers create temporary render attachments, such as depth-stencil buffers or multisampled targets. These attachments stay in fast, on-chip tile memory without allocating main VRAM.

Recent updates (#6248 and #6267) refine validation rules to prevent misuse of these memory-efficient texture attachments:

  • Due to platform limitations, viewFormats must be an empty array when creating transient textures. Alternative view formats are not needed because transient textures are only for rendering.
  • Creating a texture view does not narrow down usage flags. When calling createView() on a transient texture, the view cannot change its usage.
  • Transient attachments cannot be used as a resolveTarget inside a render pass.

Dawn updates

This covers only some of the key highlights. Check out the exhaustive list of commits.

A list of everything that has been covered in the What's New in WebGPU series.

Chrome 149-150

Chrome 147-148

Chrome 146

Chrome 145

Chrome 144

Chrome 143

Chrome 142

Chrome 141

Chrome 140

Chrome 139

Chrome 138

Chrome 137

Chrome 136

Chrome 135

Chrome 134

Chrome 133

Chrome 132

Chrome 131

Chrome 130

Chrome 129

Chrome 128

Chrome 127

Chrome 126

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

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2026-06-17 UTC.

[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2026-06-17 UTC."],[],[]]