Commit graph

1137 commits

Author SHA1 Message Date
Stephen Gutekanst
78675470ae {mach,gpu}: rename GPU_BACKEND -> MACH_GPU_BACKEND
Per https://github.com/hexops/mach/issues/376#issuecomment-1170374460

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 14:54:09 -07:00
Stephen Gutekanst
27df1e7ca8 gpu: workaround stage2 usingnamespace bug
See ziglang/zig#12429

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 10:48:18 -07:00
Stephen Gutekanst
58600faa0d gpu: make ctx parameters in callbacks always first
This matches the order of context parameters always being first in the Zig stdlib
with e.g. sorting and similar places where a context parameter exists.

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
4429be4f5f gpu: correct alignment casts of callback helpers
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
6357f3a767 gpu: update example shader @stage(vertex) -> @vertex
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
c5b565d0ce gpu: correct Buffer.mapped_at_creation default
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
70f9e9eae6 gpu: correct DepthStencilState defaults
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
e26ec2a685 gpu: correct RenderPassDescriptor.depth_stencil_attachment pointer type
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
e6c0256d4b gpu: add BindGroupLayout.Entry constructor helper APIs
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
1a7870d426 gpu: correct Buffer.getMappedRange helpers
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
5d88387dac gpu: make setBindGroup methods use slice helper API
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
b369635193 gpu: add Device.enumerateFeaturesOwned helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
94568052f5 gpu: make RenderPassEncoder.executeBundles API use a slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
c09b587db9 gpu: enable slice helpers to take arrays
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
3104083143 gpu: add BindGroup.Entry buffer/sampler/textureView constructor helpers
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
825a07ac2f gpu: make Buffer.get*MappedRange a friendlier slice API
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
1848ac8ac7 gpu: make CommandEncoder.writeBuffer use a slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
64b67f1b8a gpu: fix Queue.writeBuffer data pointer constness
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
9ed542bd7e gpu: make Queue.writeBuffer use a slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
77e96864ea gpu: make Queue.writeTexture use a slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
726bdf3fba gpu: adopt new dawn.json policy for optionality of slice fields, default zero values
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
8bce5bc0a8 gpu: correct Device.default_queue default value
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
d32c019b59 gpu: make Queue.submit API use a slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
7c09b27905 gpu: correct Queue.submit parameter constness
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
14b28600af gpu: correct RenderPassDescriptor.occlusion_query_set nullability
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
9f4a93cbef gpu: update to latest revision as of 2022-08-06
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
f856fccb76 gpu: examples: use latest friendlier APIs
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
ab71c7fd93 gpu: make ShaderModule.Descriptor.next_in_chain type-safe
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
ce8e062249 gpu: make Surface.Descriptor.next_in_chain type-safe
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
8a0d47b94b gpu: correct context pointer alignments
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
4ed932be0f gpu: simplify callback context types
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
48c8964679 gpu: README: begin tracking quality of life improvements
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
0228b50dba gpu: make Device.setDeviceLostCallback friendlier
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
dec1f08dd1 gpu: make Device.popErrorScope friendlier
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
2e611565b4 gpu: make Device.createRenderPipelineAsync friendlier
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
a452d03589 gpu: make Device.createComputePipelineAsync friendlier
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
29cd383f0e gpu: make Device.setLoggingCallback friendlier
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
6f2f7056b7 gpu: make Device.setUncapturedErrorCallback friendlier
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
be402d4b6d gpu: add TODOs about unsetting callbacks
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
45b5e4ce23 gpu: make Instance.requestAdapter friendlier
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
12e8bef9eb gpu: make Queue.onSubmittedWorkDone friendlier
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
03d6e003a4 gpu: make ShaderModule.getCompilationInfo friendlier
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
a1866d2f95 gpu: correct Buffer method prefixes
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
2b4ba59cc8 gpu: make Buffer.bufferMapAsync friendlier
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
13058274b0 gpu: make Adapter.requestDevice friendlier
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
185a4231e6 gpu: add adapter.enumerateFeaturesOwned helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
9568bff8ab gpu: update example to latest mach/gpu API
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
03c348d2bf gpu: correct Dawn pointer nullability
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
a008f96315 gpu: correct Adapter.Properties.backend_type field
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00
Stephen Gutekanst
3ff682956f gpu: correct ChainedStruct / ChainedStructOut next field nullability
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 00:43:43 -07:00