Upgrade to wgpu 26.#124
Conversation
| | naga::GatherMode::ShuffleXor(h_src) => { | ||
| self.add_expression(function, func_req, context, *h_src, &PartReq::All) | ||
| } | ||
| naga::GatherMode::QuadSwap(_) => (), |
There was a problem hiding this comment.
Wasn't totally sure about how to map this tbh
There was a problem hiding this comment.
I think that's right, but also this part of the pruner is wrong looking at it, and the pruner doesn't even compile currently (it's been broken ever version since 0.15. It's a non-default feature that isn't tested in CI that we don't use in bevy so it's easy to overlook). I have no idea why I wrote them returning RayQuery but that's very definitely wrong (pretty sure I just copied WorkGroupUniformLoad, which is also wrong lol).
Elabajaba
left a comment
There was a problem hiding this comment.
Pruner is broken but it's been that way for a long time. Maybe we should consider just dropping it completely.
|
|
||
| [dependencies] | ||
| naga = { version = "25", features = ["wgsl-in", "wgsl-out"] } | ||
| naga = { version = "26", features = ["wgsl-in", "wgsl-out", "termcolor"] } |
There was a problem hiding this comment.
WGPU seems to blanket enable this so I don't think it matters whether or not we include this feature here? (at least for bevy)
There was a problem hiding this comment.
Hmm, I was getting a compilation failure without it, let me double check again.
There was a problem hiding this comment.
you may have been hitting brendanzab/codespan#389
| │ ╰──────────────^ naga::ir::Function [0] | ||
| │ | ||
| = The `return` value Some([0]) does not match the function return value | ||
| = The `return` expression Some([0]) does not match the declared return type Some([0]) |
There was a problem hiding this comment.
What a wonderful error message lol.
| | naga::GatherMode::ShuffleXor(h_src) => { | ||
| self.add_expression(function, func_req, context, *h_src, &PartReq::All) | ||
| } | ||
| naga::GatherMode::QuadSwap(_) => (), |
There was a problem hiding this comment.
I think that's right, but also this part of the pruner is wrong looking at it, and the pruner doesn't even compile currently (it's been broken ever version since 0.15. It's a non-default feature that isn't tested in CI that we don't use in bevy so it's easy to overlook). I have no idea why I wrote them returning RayQuery but that's very definitely wrong (pretty sure I just copied WorkGroupUniformLoad, which is also wrong lol).
| | GatherMode::ShuffleDown(ref mut h_src) | ||
| | GatherMode::ShuffleUp(ref mut h_src) | ||
| | GatherMode::ShuffleXor(ref mut h_src) => *h_src = map_expr!(h_src), | ||
| GatherMode::QuadSwap(_) => (), |
There was a problem hiding this comment.
Why's this one not have ref mut h_src?
There was a problem hiding this comment.
The other ones are making sure their Handle<Expression> get remapped correctly (afaik), while QuadSwap just has a Direction enum.
No description provided.