The renderer is Vulkan-only today; D3D12 (Windows) and Metal (macOS/iOS) land in M3 behind a backend-tagged C ABI. The M3.0 spike (the D3D12 feasibility spike (summarized in ROADMAP.md)) confirmed the Vulkan zero-copy design ports cleanly to rive's D3D12 backend, with the one open adaptation being wgpu-hal dx12's missing open-command-list accessor.
Goal (deferred until the backends exist):
- Windows-D3D12: build + render-validate on a Windows self-hosted GPU box (hosted windows runners lack a usable GPU; the CPU-copy floor already runs on wgpu's D3D12 but still needs a Vulkan ICD for rive's offscreen device).
- macOS/iOS-Metal: build on hosted
macos-14; NOTE macos-14 runners DO expose a real Metal GPU, so Metal RENDER tests may be feasible on hosted runners without self-hosted infra — evaluate when the Metal backend lands.
Track per-backend; each is blocked on the backend implementation, not on CI infra.
The renderer is Vulkan-only today; D3D12 (Windows) and Metal (macOS/iOS) land in M3 behind a backend-tagged C ABI. The M3.0 spike (the D3D12 feasibility spike (summarized in ROADMAP.md)) confirmed the Vulkan zero-copy design ports cleanly to rive's D3D12 backend, with the one open adaptation being wgpu-hal dx12's missing open-command-list accessor.
Goal (deferred until the backends exist):
macos-14; NOTE macos-14 runners DO expose a real Metal GPU, so Metal RENDER tests may be feasible on hosted runners without self-hosted infra — evaluate when the Metal backend lands.Track per-backend; each is blocked on the backend implementation, not on CI infra.