Skip to content

WebGPURenderer: Fix transmission during WebXR rendering#34114

Open
cabanier wants to merge 1 commit into
mrdoob:devfrom
cabanier:xr_transmission
Open

WebGPURenderer: Fix transmission during WebXR rendering#34114
cabanier wants to merge 1 commit into
mrdoob:devfrom
cabanier:xr_transmission

Conversation

@cabanier

Copy link
Copy Markdown
Contributor

Preserve framebuffer-copy boundaries for layered array-camera rendering and replay each stage per eye so WebGPU XR samples the current view's opaque content.

Map eye-local transmission coordinates into shared camera viewports for the WebGL fallback. Add a WebGPU WebXR shadows example with transmission and its reference screenshot.

This contribution is funded by Meta

Preserve framebuffer-copy boundaries for layered array-camera rendering and replay each stage per eye so WebGPU XR samples the current view's opaque content.

Map eye-local transmission coordinates into shared camera viewports for the WebGL fallback. Add a WebGPU WebXR shadows example with transmission and its reference screenshot.
@github-actions

Copy link
Copy Markdown

📦 Bundle size

Full ESM build, minified and gzipped.

Before After Diff
WebGL 365.88
86.71
365.88
86.71
+0 B
+0 B
WebGPU 685.67
189.48
687.12
189.84
+1.45 kB
+357 B
WebGPU Nodes 683.65
189.16
685.1
189.52
+1.45 kB
+366 B

🌳 Bundle size after tree-shaking

Minimal build including a renderer, camera, empty scene, and dependencies.

Before After Diff
WebGL 510.55
124.02
510.55
124.02
+0 B
+0 B
WebGPU 764.04
205.54
765.81
205.95
+1.77 kB
+417 B
WebGPU Nodes 713.54
192.96
714.89
193.27
+1.35 kB
+313 B

@cabanier

Copy link
Copy Markdown
Contributor Author

The code:

  • Keeps existing bundleEncoders/bundleSets.
  • Renames only the stage list.
  • Preserves the single-camera shader path.

cc @Mugen87

@cabanier
cabanier marked this pull request as ready for review July 24, 2026 20:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant