Conversation
e1686d9 to
f00b30c
Compare
e889cf5 to
86896a1
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 29 out of 31 changed files in this pull request and generated 6 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -0,0 +1,9 @@ | |||
| `fidget-wgpu` implements 3D rendering of Fidget tapes using WebGPU | |||
|
|
|||
| It is typically used through the [`fidget`](https://crates.io/crate/fidget) | |||
There was a problem hiding this comment.
The crates.io link for the fidget crate uses /crate/ instead of /crates/, which results in a broken URL. Update it to https://crates.io/crates/fidget.
| It is typically used through the [`fidget`](https://crates.io/crate/fidget) | |
| It is typically used through the [`fidget`](https://crates.io/crates/fidget) |
| # 0.4.4 (unpublished) | ||
| - Add `fidget-wgpu` crate, which does 3D rasterization with a `wgpu` backend | ||
| - This is even more experimental than the rest of Fidget! | ||
|
|
||
| # 0.4.3 |
There was a problem hiding this comment.
The changelog header was bumped to 0.4.4 (unpublished), but the crate versions in this PR (including the new fidget-wgpu crate and the workspace-pinned =0.4.3 local crates) are still 0.4.3. This makes it unclear what version the changes will ship under; consider bumping crate versions consistently to 0.4.4 in the same PR, or keeping the changelog header at 0.4.3 (unpublished) until the version bump lands.
| case OP_MEM: { | ||
| // Not implemented! | ||
| return out; | ||
| } |
There was a problem hiding this comment.
OP_MEM is currently treated as "Not implemented" and returns out without setting out.pos / out.count (they stay at 0). That can break interval/voxel rendering for any bytecode that contains Load/Store (e.g., register spills) and can also lead to invalid inputs to simplify_tape(out.pos, out.count, ...) (underflow / out-of-bounds when end == 0). Implement OP_MEM semantics in the interpreter, or at minimum set out.pos/out.count before returning and ensure callers skip simplification when memory ops are encountered.
2f1100a to
40b35a9
Compare
This is an even-more-experimental WGPU rasterization backend. Basically the same as MPR (2020), but adapted for modern GPU APIs (e.g. indirect dispatch means we don't have to round-trip through the CPU). More to come...