Summary
wgpu-native v27.0.4.0 uses outdated webgpu-headers (commit bac5208 from Nov 2024), which is 104 commits behind the current main branch.
This causes enum value mismatches between gputypes (follows current webgpu-headers) and wgpu-native.
Example: BGRA8Unorm is 27 in current headers but 23 in wgpu-native.
Current Workaround
We implemented a conversion layer in wgpu/convert.go to translate between gputypes and wgpu-native enum values.
Upstream Tracking
Blocker
PR #536 is blocked by CI issues on Android, iOS, and Windows i686 platforms.
Resolution
Once wgpu-native merges the header update:
- Update wgpu-native dependency
- Remove the conversion layer from
wgpu/convert.go
- Simplify FFI structs
Summary
wgpu-native v27.0.4.0 uses outdated webgpu-headers (commit
bac5208from Nov 2024), which is 104 commits behind the current main branch.This causes enum value mismatches between gputypes (follows current webgpu-headers) and wgpu-native.
Example:
BGRA8Unormis 27 in current headers but 23 in wgpu-native.Current Workaround
We implemented a conversion layer in
wgpu/convert.goto translate between gputypes and wgpu-native enum values.Upstream Tracking
wgpu.handwebgpu.hgfx-rs/wgpu-native#546wgpu.handwebgpu.hgfx-rs/wgpu-native#546 (comment)Blocker
PR #536 is blocked by CI issues on Android, iOS, and Windows i686 platforms.
Resolution
Once wgpu-native merges the header update:
wgpu/convert.go