Commit graph

1097 commits

Author SHA1 Message Date
Stephen Gutekanst
05cb8b90c9 gpu: add RenderBundleEncoder.Descriptor.init slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 18:44:50 -07:00
Stephen Gutekanst
c82f640296 gpu: add QuerySet.Descriptor.init slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 17:56:47 -07:00
Stephen Gutekanst
aaa194c5eb gpu: add PipelineLayout.Descriptor.init slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 17:37:49 -07:00
Stephen Gutekanst
03a9cbab9a gpu: add Device.Descriptor.init slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 17:35:18 -07:00
Stephen Gutekanst
5e4aa7e6df gpu: add TogglesDeviceDescriptor.init slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 17:32:03 -07:00
Stephen Gutekanst
cb80cfc3c2 gpu: add InstanceDescriptor slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 17:21:19 -07:00
Stephen Gutekanst
c3bb1683a6 gpu: add BindGroup.Descriptor slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 17:16:52 -07:00
Stephen Gutekanst
67d07b0c55 gpu: add BindGroupLayout.Descriptor slice helper
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 17:12:19 -07:00
Stephen Gutekanst
68d5f6fcb1 {mach,gpu}: add autorelease pool
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 17:05:15 -07:00
Stephen Gutekanst
f366244a9a gpu: add TODOs for slice helper candidates
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-16 10:46:49 -07:00
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