# feat: a Canvas 2D renderer where a browser has neither WebGPU nor WebGL 2, and Options' Renderer, which switches live · clo/snowbound

[View on GitCafe](https://git.cafe/clo/snowbound/commit/8587d48a5c4256dcc935abf9ad5a8a23329cea5e)

Repository: [clo/snowbound](https://git.cafe/clo/snowbound)

Visibility: public

Requested revision: 8587d48a5c4256dcc935abf9ad5a8a23329cea5e

Requested commit: 8587d48a5c4256dcc935abf9ad5a8a23329cea5e

Commit: 8587d48a5c4256dcc935abf9ad5a8a23329cea5e

Tree: f82c885adf9d772a7f01a05b6b9fc86a3755f472

Author: clover caruso

Committer: clover caruso

## Message

```
feat: a Canvas 2D renderer where a browser has neither WebGPU nor WebGL 2, and Options' Renderer, which switches live

The browser draws through WebGPU, else WebGL 2, else its 2D canvas, which each of draw's
quads becomes the canvas's own calls on. A popup leaning in draws into a canvas over the
page leaned by a CSS 3D transform of the same perspective. Every platform offers its
backends in Options (Direct3D 12, 11 or OpenGL; Metal or OpenGL; Vulkan or OpenGL;
WebGPU, WebGL 2 or Canvas 2D), the settings' "renderer", SNOWBOUND_RENDERER and
--renderer (or ?renderer= in a browser) each over the last; switching tears down the
renderer and surface and starts the chosen one with the window as it was, and one that
fails falls back to the default and says so.

Assisted-by: claude-opus-5.5

```

## Parents

- [0849ff574906dff021315179ffdd59294034001c](https://git.cafe/clo/snowbound/commit/0849ff574906dff021315179ffdd59294034001c?format=markdown)

[Source at this commit](https://git.cafe/clo/snowbound/tree/8587d48a5c4256dcc935abf9ad5a8a23329cea5e?format=markdown)
