orca-app / orca

A Wasm environment for cross-platform, sandboxed graphical applications.
https://orca-app.dev
Other
330 stars 15 forks source link

Port vector graphics renderer to D3D #6

Closed martinfouilleul closed 5 months ago

martinfouilleul commented 11 months ago

Imported from gitea. See https://git.handmade.network/hmn/orca/issues/23 for previous conversation

Opening this for after the Jam MVP. The GL implementation of the canvas surface on windows is highly dependent on GL driver-specific quirks, which make it tedious to test/maintain/optimize.

Besides, it's probably best to have everything target the platform's native API under the hood, ie having both the canvas and the GLES/WebGPU surfaces exposed to the app be implemented by D3D backends.

This could also simplify interop between different surfaces, which could simplify some hacks we have to do to get overlayed transparent surfaces on windows (see #21 (comment))

It would be nice to pair with someone who's knowledgable with D3D on this, as I only have experience with Metal and OpenGL.

martinfouilleul commented 5 months ago

We finally opted for a WebGPU backend for the vector graphics renderer on both platforms, see #61.