[gpu] Middle-click to reset view
fd46579
[gpu] Add Metal demo support to CMake build
47f8f56
[gpu] Add demo-renderer-gl.cc to CMake build
194baad
[gpu] Simplify meson shader generation into one loop
7990799
[gpu] Add HLSL shader sources for Direct3D
9ad26d9
[gpu] Fix WebGPU scroll zoom sensitivity
b68fc1d
[gpu] Use raw string literal for WGSL demo shader
5a08291
[gpu] Inline demo shaders as raw string literals
f3be5f3
[gpu] Fix Metal build; silence float-to-double warning
09e8562
[gpu] Add WGSL shader generation to meson
709b1d8
[gpu] Fix WGSL naming: avoid reserved underscore prefix
f35ff87
[gpu] Fix WGSL shader: rename underscore-prefixed identifiers
b884ee1
[gpu] Remove debug heatmap from WebGPU demo
b42cd76
[gpu] Use alpha blending for debug heatmap
c2618a0
[gpu] Add debug heatmap mode (d key)
ddd6a86
[gpu] Add Backspace as alternative reset key
47512dd
[gpu] Add 3-finger touch gesture for 3D rotation
98f7d74
[gpu] Fix NaN in trackball rotation speed
33de483
[gpu] Fix drag-release animation in WebGPU demo
30ff2b7
[gpu] Share demo_view between WebGL and WebGPU web demos
ca2fb1e
[gpu] Polish WebGPU error message layout
41973ac
[gpu] Sync C++ WebGPU error message with JS one
c43e4cc
[gpu] Clean up web demo error message and titles
3a7d9d8
[gpu] Fix line break in WebGPU error message
d35076b
[gpu] WebGPU error handling and UI polish
10f18a6
[gpu] Show helpful error when WebGPU is not available
9507f51
[gpu] Fix WebGPU demo gamma, colors, and UI
a3dedf5
[gpu] WebGPU web demo working
dbbcca4
[gpu] Add WebGPU web demo
e51d769
[gpu] Add WGSL shader sources for WebGPU
09f6ef6