Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

[WIP] compute shader support #1200

Draft
wants to merge 43 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
b73242d
sokol_gfx.h: start with compute shader support
floooh Dec 1, 2024
da8cf24
sokol_gfx.h mtl: allow creating immutable buffers without data (will …
floooh Jan 25, 2025
0a594ba
sokol_gfx.h mtl: create compute shader
floooh Jan 26, 2025
6d221a9
sokol_gfx.h mtl: create compute pipelines
floooh Jan 26, 2025
5a9f768
sokol_gfx.h mtl: compute pass wip
floooh Jan 27, 2025
6894d2b
sokol_gfx.h mtl: dont call _sg_compute_on_endpass() in render pass
floooh Jan 27, 2025
353c384
sokol_gfx.h mtl: compute passes wip
floooh Jan 28, 2025
dd3c869
sokol_gfx.h mtl: sg_dispatch working :)
floooh Jan 29, 2025
f982d18
sokol_gfx.h mtl: fix unused parameter warning
floooh Jan 30, 2025
e3ca0f8
add compute flag to sg_query_pipeline_desc
floooh Feb 1, 2025
42efa13
sokol_gfx.h mtl: set MTLMutability in render- and compute-pipelines
floooh Feb 1, 2025
f853dc9
sokol_gfx.h mtl: synchronize gpu-written managed storage buffers at e…
floooh Feb 1, 2025
1088c41
sokol_gfx.h wgpu: allow immutable buffers without initial content (wi…
floooh Feb 1, 2025
8bcccfb
sokol_gfx.h wgpu: compute shaders
floooh Feb 2, 2025
d17d3a2
sokol_gfx.h wgpu: compute pipelines
floooh Feb 2, 2025
1f70528
sokol_gfx.h wgpu: compute done
floooh Feb 3, 2025
d679c0a
sokol_gfx.h metal: compute dispatch by thread groups, not threads
floooh Feb 3, 2025
097f013
sokol_gfx.h d3d11: zero-initialized immutable buffers, storage buffer…
floooh Feb 5, 2025
4878208
sokol_gfx.h d3d11: compute shader creation
floooh Feb 6, 2025
6a6ac1d
sokol_gfx.h d3d11: fix sg_make_pipeline for compute pipelines, some m…
floooh Feb 7, 2025
a1e9e3d
sokol_gfx.h d3d11: initial compute shader support
floooh Feb 8, 2025
25998d7
sokol_gfx.h d3d11: fix _sg_d3d11_apply_bindings
floooh Feb 8, 2025
7a11278
sokol_gfx.h gl: zero-initialize immutable buffers without initial con…
floooh Feb 12, 2025
001fe9b
sokol_gfx.h gl: create compute shader
floooh Feb 12, 2025
ea6e9a2
sokol_gfx.h gl: compute wip
floooh Feb 13, 2025
75f8a03
sokol_gfx.h gl win32: add glMemoryBarrier and GL_SHADER_STORAGE_BARRI…
floooh Feb 13, 2025
27615dd
sokol_gfx.h gl: issue glMemoryBarrier between ssbo writes and reads
floooh Feb 15, 2025
885efd2
sokol_gfx.h gl: fix conditional compilation for compute available
floooh Feb 15, 2025
7489437
sokol_gfx.h: cleanup storage buffer hazard tracking code
floooh Feb 15, 2025
c0217a6
sokol_gfx.h metal: set images and samplers on compute passes
floooh Feb 15, 2025
eb99914
sokol_gfx.h: add dispatch call to sg_trace_hooks
floooh Feb 16, 2025
a260dfa
sokol_gfx_imgui.h: fix typo
floooh Feb 16, 2025
db9f9a0
sokol_gfx_imgui.h: fixes for sokol_gfx.h compute shader update
floooh Feb 18, 2025
1414408
sokol_gfx.h: rename sg_shader_desc.compute_workgroup_size to mtl_thre…
floooh Feb 18, 2025
9e5c222
sokol_gfx.h: valiate compute/render pipeline vs compute/render pass
floooh Feb 19, 2025
25a09ed
sokol_gfx.h: add validation for sg_draw and sg_dispatch
floooh Feb 19, 2025
d67fb11
sokol_gfx.h: more validation checks
floooh Feb 19, 2025
9c0f9d2
sokol_gfx.h: tweak sg_dispatch validation
floooh Feb 19, 2025
786d1df
sokol_gfx.h: validation for sg_shader_desc.mtl_threads_per_threadgroup
floooh Feb 20, 2025
948bd6e
gen_zig.py: don't 'pub' extern C func declaration.
floooh Feb 1, 2025
ba58d54
merge from master
floooh Feb 22, 2025
798b54c
gen_rust.py: param type overrides for sg_dispatch
floooh Feb 25, 2025
f704ce9
update gen_d.py for sokol-gfx compute shader update
floooh Feb 25, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions bindgen/gen_d.py
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,9 @@
'sg_draw.base_element': 'uint32_t',
'sg_draw.num_elements': 'uint32_t',
'sg_draw.num_instances': 'uint32_t',
'sg_dispatch.num_groups_x': 'uint32_t',
'sg_dispatch.num_groups_y': 'uint32_t',
'sg_dispatch.num_groups_z': 'uint32_t',
'sshape_element_range_t.base_element': 'uint32_t',
'sshape_element_range_t.num_elements': 'uint32_t',
'sdtx_font.font_index': 'uint32_t',
Expand Down
3 changes: 3 additions & 0 deletions bindgen/gen_rust.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,9 @@
"sg_draw.base_element": "uintptr_t",
"sg_draw.num_elements": "uintptr_t",
"sg_draw.num_instances": "uintptr_t",
"sg_dispatch.num_groups_x": "uintptr_t",
"sg_dispatch.num_groups_y": "uintptr_t",
"sg_dispatch.num_groups_z": "uintptr_t",
"sshape_element_range_t.base_element": "uintptr_t",
"sshape_element_range_t.num_elements": "uintptr_t",
"sdtx_font.font_index": "uintptr_t",
Expand Down
Loading
Loading