Update to wgpu-native v29.0.0.0 (includes updated headers!)#805
Update to wgpu-native v29.0.0.0 (includes updated headers!)#805Vipitis wants to merge 18 commits intopygfx:mainfrom
Conversation
| ) | ||
|
|
||
|
|
||
| # TODO: can we avoid doing this every single time the lib is loaded? I feel like we should provide a cleaned header file to ship instead? |
There was a problem hiding this comment.
this particular. It's probably a small amount, but if we cleanup the header file(like this function does, as part of codegen perhaps), combine both headers and save to to something like wgpu-native-min.h which can be read by cdef() directly?
I want to try give this a try, also makes the preprepreprocessing here more visible and easier to debug
There was a problem hiding this comment.
I like the idea to save work at runtime!
There was a problem hiding this comment.
I added a commit to give this a rough try. seems to still work - but didn't thoroughly test this. Without some kind of time to first frame benchmark (also for #789) hard to tell if it makes a meaningful difference. Either way it would avoid the prepreprocessor code duplication.
|
I get test failure locally in |
| `here <https://vkguide.dev/docs/chapter-3/push_constants/>`_. | ||
| Using push constants in WGPU closely follows the Vulkan model. | ||
| The wgpu_native backend provides support for immediates. | ||
| Immediates are not yet part of the WebGPU spec, but the headers for native webgpu have converged officially. |
There was a problem hiding this comment.
it looks like this is rather close to becoming official spec gpuweb/gpuweb#5423
| ) | ||
|
|
||
| # H: nextInChain: WGPUChainedStruct *, label: WGPUStringView, bindGroupLayoutCount: int, bindGroupLayouts: WGPUBindGroupLayout * | ||
| # TODO: there is an immediateSize field in this struct too. so do we even need the extras? |
There was a problem hiding this comment.
| } WGPUGLFenceBehaviour; | ||
|
|
||
| typedef enum WGPUDx12SwapchainKind { | ||
| typedef enum WGPUDx12SwapchainKind |
|
apart from a new instance extra The "combined" header is nice for avoiding code duplication and it should theoretically be faster and thinner. I haven't updated the packing or contributor instructions (you need to run codegen locally after downloading the via the script I believe). There could be other problems with people bringing in a custom lib dir etc |
as usual... still in progress but I am happy to get into this again and enjoy my free time.
There was a release for v27 with just the header updated, but there were quite a few missing symbols etc, so that release won't really work. So one PR to do both. The headers are also now considered stable. So this might be last major update for a long while.
I will put quite a few code comments in for things I feel like could be improved in the codegen, these are also meant for discussion.
more to come, I will try to keep the commits tidy and topic, since it's quite helpful to look at the individual diffs
TODOs: