Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

sokol_gfx.h: introduce separate sampler objects #842

Merged
merged 92 commits into from
Jul 17, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
6255c04
sokol_gfx.h: image/sampler split wip
floooh May 29, 2023
2ab7f7d
sokol_gfx.h: sampler bindings wip
floooh May 29, 2023
5a468bb
sokol_gfx.h: sg_sampler_binding_type => sg_sampler_type
floooh May 29, 2023
1a4d764
sokol_gfx.h: add bind-mapping info to shader desc
floooh May 29, 2023
667f838
sokol_gfx.h: remove wgpu_bindgroup from sg_shader_desc, this will be …
floooh May 29, 2023
1a72904
sokol_gfx.h: start implementing separate sampler objects
floooh May 30, 2023
e1c4c51
sokol_gfx.h metal: sampler objects wip
floooh May 31, 2023
45990a0
sokol_gfx.h metal: bind sampler objects wip
floooh Jun 1, 2023
1d9209c
sokol_gfx.h: code formatting, fix sampler common attributes init
floooh Jun 2, 2023
ff90b5f
sokol_gfx.h: code formatting
floooh Jun 2, 2023
3190950
sokol_gfx.h metal: use StorageModeShared if MTLDevice.hasUnifiedMemory
floooh Jun 3, 2023
e1f008e
sokol_gfx.h metal: set buffer mutability flag in pso
floooh Jun 3, 2023
8e481d9
sokol_gfx.h: better sampler binding validation checks
floooh Jun 4, 2023
054e771
sokol_gfx.h: better image binding validation checks
floooh Jun 4, 2023
5117c4e
sokol_gfx.h metal: only call didModifyRange for MTLStorageModeManaged
floooh Jun 4, 2023
973b4e0
sokol_gfx.h d3d11: separate sampler objects wip
floooh Jun 6, 2023
1c2a10a
sokol_gfx.h d3d11: fix sampler binding
floooh Jun 6, 2023
be77b86
sokol_gfx.h rename sampler type to SAMPLE and COMPARE
floooh Jun 7, 2023
711da77
sokol_gfx.h gl: separate sampler objects wip
floooh Jun 9, 2023
f3951b0
sokol_gfx.h gl: separate sampler objects, more wip
floooh Jun 10, 2023
15ae9b6
sokol_gfx.h gl: shader-desc combined image sampler validation
floooh Jun 10, 2023
cfd8e7a
sokol_gfx.h gl: sampler objects wip
floooh Jun 11, 2023
88c143a
sokol_gfx.h: rename image_sampler to image_sampler_pair and make them…
floooh Jun 11, 2023
7577dfa
sokol_gfx.h: image-sampler-pair fix
floooh Jun 11, 2023
5aef05d
sokol_gfx.h: fix validation message typo
floooh Jun 12, 2023
facd53f
sokol_gfx.h: image vs sampler vs image-sampler-pairs code cleanup
floooh Jun 13, 2023
532ef73
sokol_shape.h: fixes for sokol_gfx.h struct name changes
floooh Jun 17, 2023
8098f45
sokol_gl.h: fixes for separate images and samplers (fixme: HLSL and W…
floooh Jun 17, 2023
f399fc9
sokol_debugtext.h: fixes for separate images and samplers (fixme: HLS…
floooh Jun 18, 2023
5ef5eca
sokol_imgui.h: fix for separate images/samplers, new helper function …
floooh Jun 19, 2023
54b0ed7
sokol_nuklear.h: fixes for separate image/sampler, new helper functio…
floooh Jun 19, 2023
7989758
sokol_fontstash.h: fix for separate image/sampler (todo: hlsl/wgsl sh…
floooh Jun 19, 2023
4768bcb
sokol_gfx.h: add missing sg_init_sampler function
floooh Jun 20, 2023
5c8c8e7
sokol_spine.h: fixes for separate images/samplers (fixme: hlsl4 shaders)
floooh Jun 20, 2023
7273069
sokol_gfx.h: remove err_ trace hooks (redundant with new error logging)
floooh Jun 21, 2023
6ad7fc3
sokol_gfx_imgui.h: fix for separate images/samplers
floooh Jun 21, 2023
2b25284
sokol_gfx.h fix a couple of places which used the old combined-image-…
floooh Jun 22, 2023
9762a5c
sokol_debugtext.h: update embedded hlsl4 shaders
floooh Jun 23, 2023
fb2e944
sokol_gl.h: update embedded hlsl4 shaders
floooh Jun 23, 2023
14a6f7d
sokol_fontstash.h: update embedded hlsl4 shaders
floooh Jun 23, 2023
6df3bb1
sokol_imgui.h: update embedded hlsl4 shaders
floooh Jun 23, 2023
9505d66
sokol_nuklear.h: update embedded hlsl4 shaders
floooh Jun 23, 2023
b8c66bf
sokol_spine.h: update embedded hlsl4 shaders
floooh Jun 23, 2023
fead8da
sokol_gfx.h: clean up comment style, remove obsolete UWP leftovers
floooh Jun 24, 2023
527f9ea
sokol_gfx.h: fix dummy backend, fix sg_query_shader_desc
floooh Jun 24, 2023
e6f5691
fix sokol_gfx_test.c
floooh Jun 24, 2023
c24e8a4
add sampler tests to sokol_gfx_test.c
floooh Jun 24, 2023
bdbe99e
sokol_gfx.h: fix unused warning in release mode
floooh Jun 24, 2023
5239268
sokol_nuklear.h: fix embedded glsl shader name
floooh Jun 24, 2023
f919f5c
fix tests
floooh Jun 24, 2023
2f9a2dc
sokol_gfx.h: fix sign conversion warning
floooh Jun 24, 2023
99157e2
sokol_gfx_imgui.h: fix switch-case fallthrough bug (thanks gcc for th…
floooh Jun 24, 2023
3b69571
sokol_gfx.h: fix sign conversion warning (this time for realz)
floooh Jun 24, 2023
159bb44
sokol_imgui.h, sokol_nuklear.h: remove sampler state from texture
floooh Jun 24, 2023
7ec61b1
sokol_spine.h: fix image-sampler handling to work with 32-bit pointers
floooh Jun 25, 2023
8993150
sokol_spine.h: fix c++ build
floooh Jun 25, 2023
4effe89
sokol_gfx gl: add missing win gl loader decls, fix glSamplerParameter…
floooh Jun 25, 2023
ada81f0
sokol_gfx.h iOS/macOS: fix feature availability code (mainly clamp-to…
floooh Jun 25, 2023
dcbafab
sokol_gfx.h: fix pass-desc validation to allow no color attachments
floooh Jun 26, 2023
a9a0041
sokol_gfx.h: handle depth-only special case when patching pipeline de…
floooh Jun 26, 2023
aaee172
sokol_gfx.h: move common-init funcs out of backends
floooh Jun 27, 2023
9b55b0a
sokol_gfx.h: miplevel and pass fixes
floooh Jun 27, 2023
2a3bf60
Update zig bindgen produce source that matches "zig fmt" style
nurpax Jun 30, 2023
bc634a0
Merge pull request #849 from nurpax/zig-fmt
floooh Jul 1, 2023
ceac091
sokol_gfx.h gl: depth-only rendering fixes
floooh Jul 2, 2023
0ca581b
sokol_gfx_imgui.h: render depth textures in image panel
floooh Jul 2, 2023
66434b0
sokol_imgui.h: add label to sampler
floooh Jul 2, 2023
8b806f8
sokol_gfx.h: fix uninitialized variable warning
floooh Jul 2, 2023
449f553
sokol_gfx.h d3d11: fix texture vs srv vs rtv vs dsv pixel formats (al…
floooh Jul 2, 2023
126322f
sokol_gfx.h: fix unused parameter warnings
floooh Jul 2, 2023
e92b005
fix sokol_gfx_test.c (create pass without color attachments is now al…
floooh Jul 2, 2023
d477ad6
sokol_gfx.h: fix comments in _sg_gl_create_pass()
floooh Jul 3, 2023
b105648
gen_zig.py: map sg_pixelformat_info to sg_pixel_format_info
floooh Jul 5, 2023
295a3bf
gen_zig.py: revert sg_pixelformat_info remapping
floooh Jul 7, 2023
089f2a9
use addr instead
Angluca Jun 23, 2023
136f01b
gen_bindings.yml: update odin to dev-2023-07
floooh Jul 10, 2023
5b282c3
gh actions: clean up test-odin job
floooh Jul 10, 2023
b1c29d5
sokol_gl.h: update documentation
floooh Jul 10, 2023
685584e
sokol_gfx.h documentation update (wip)
floooh Jul 10, 2023
1261f3f
sokol_gfx.h: finish documentation block on shader creation
floooh Jul 12, 2023
99986cc
sokol_gfx.h: remove obsolete docs and code
floooh Jul 16, 2023
b96f491
sokol_nuklear.h: fix example code in docs
floooh Jul 16, 2023
17d7991
update changelog and readme
floooh Jul 16, 2023
2aada5c
update changelog
floooh Jul 16, 2023
7b6d1aa
Merge branch 'master' into sgfx-samplers-bindings
floooh Jul 16, 2023
f793299
changelog: mention 'pre-separate-samplers' tag
floooh Jul 17, 2023
e475aa4
changelog: mention use of if(@available(...)) in sokol headers
floooh Jul 17, 2023
defd943
Merge pull request #850 from floooh/bindgen-sokol-zig-0.11.0
floooh Jul 17, 2023
feb51cd
gh actions: temporarily remove macos from sokol-rust build matrix
floooh Jul 17, 2023
4f0eb1b
gh actions: set zig version to 0.11.0-dev.4004+a57608217
floooh Jul 17, 2023
41c725e
changelog: mention linker problems in the sokol-zig and sokol-rust bi…
floooh Jul 17, 2023
a619523
changelog: mention that a sokol-shdc binary update is also needed
floooh Jul 17, 2023
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
99 changes: 32 additions & 67 deletions .github/workflows/gen_bindings.yml
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ jobs:
repository: floooh/sokol-zig
- uses: goto-bus-stop/setup-zig@v1
with:
version: 0.10.0
version: 0.11.0-dev.4004+a57608217
- uses: actions/download-artifact@v3
with:
name: ignore-me-zig
Expand Down Expand Up @@ -162,86 +162,50 @@ jobs:
# NOTE: see https://github.com/floooh/sokol-odin/blob/main/.github/workflows/main.yml
- uses: ilammy/msvc-dev-cmd@v1
- if: runner.os == 'Linux'
name: build-linux
name: prepare-linux
run: |
sudo apt-get update
sudo apt-get install libglu1-mesa-dev mesa-common-dev xorg-dev libasound-dev llvm-11
curl -L https://github.com/odin-lang/Odin/releases/download/dev-2023-03/odin-ubuntu-amd64-dev-2023-03.zip --output odin.zip
curl -L https://github.com/odin-lang/Odin/releases/download/dev-2023-07/odin-ubuntu-amd64-dev-2023-07.zip --output odin.zip
unzip odin.zip
chmod a+x ubuntu_artifacts/odin
chmod a+x ./odin
./build_clibs_linux.sh
ubuntu_artifacts/odin build examples/clear -debug
ubuntu_artifacts/odin build examples/triangle -debug
ubuntu_artifacts/odin build examples/quad -debug
ubuntu_artifacts/odin build examples/bufferoffsets -debug
ubuntu_artifacts/odin build examples/cube -debug
ubuntu_artifacts/odin build examples/noninterleaved -debug
ubuntu_artifacts/odin build examples/texcube -debug
ubuntu_artifacts/odin build examples/shapes -debug
ubuntu_artifacts/odin build examples/offscreen -debug
ubuntu_artifacts/odin build examples/instancing -debug
ubuntu_artifacts/odin build examples/mrt -debug
ubuntu_artifacts/odin build examples/blend -debug
ubuntu_artifacts/odin build examples/debugtext -debug
ubuntu_artifacts/odin build examples/debugtext-print -debug
ubuntu_artifacts/odin build examples/debugtext-userfont -debug
ubuntu_artifacts/odin build examples/saudio -debug
ubuntu_artifacts/odin build examples/sgl -debug
ubuntu_artifacts/odin build examples/sgl-points -debug
ubuntu_artifacts/odin build examples/sgl-context -debug
- if: runner.os == 'macOS'
name: build-macos
name: prepare-macos
run: |
brew install llvm@11
curl -L https://github.com/odin-lang/Odin/releases/download/dev-2023-03/odin-macos-amd64-dev-2023-03.zip --output odin.zip
curl -L https://github.com/odin-lang/Odin/releases/download/dev-2023-07/odin-macos-amd64-dev-2023-07.zip --output odin.zip
unzip odin.zip
chmod a+x macos_artifacts/odin
chmod a+x ./odin
./build_clibs_macos.sh
macos_artifacts/odin build examples/clear -debug
macos_artifacts/odin build examples/triangle -debug
macos_artifacts/odin build examples/quad -debug
macos_artifacts/odin build examples/bufferoffsets -debug
macos_artifacts/odin build examples/cube -debug
macos_artifacts/odin build examples/noninterleaved -debug
macos_artifacts/odin build examples/texcube -debug
macos_artifacts/odin build examples/shapes -debug
macos_artifacts/odin build examples/offscreen -debug
macos_artifacts/odin build examples/instancing -debug
macos_artifacts/odin build examples/mrt -debug
macos_artifacts/odin build examples/blend -debug
macos_artifacts/odin build examples/debugtext -debug
macos_artifacts/odin build examples/debugtext-print -debug
macos_artifacts/odin build examples/debugtext-userfont -debug
macos_artifacts/odin build examples/saudio -debug
macos_artifacts/odin build examples/sgl -debug
macos_artifacts/odin build examples/sgl-points -debug
macos_artifacts/odin build examples/sgl-context -debug
- if: runner.os == 'Windows'
name: build-windows
name: prepare-windows
shell: cmd
run: |
curl -L https://github.com/odin-lang/Odin/releases/download/dev-2023-03/odin-windows-amd64-dev-2023-03.zip --output odin.zip
curl -L https://github.com/odin-lang/Odin/releases/download/dev-2023-07/odin-windows-amd64-dev-2023-07.zip --output odin.zip
unzip odin.zip
build_clibs_windows.cmd
windows_artifacts/odin build examples/clear -debug
windows_artifacts/odin build examples/triangle -debug
windows_artifacts/odin build examples/quad -debug
windows_artifacts/odin build examples/bufferoffsets -debug
windows_artifacts/odin build examples/cube -debug
windows_artifacts/odin build examples/noninterleaved -debug
windows_artifacts/odin build examples/texcube -debug
windows_artifacts/odin build examples/shapes -debug
windows_artifacts/odin build examples/offscreen -debug
windows_artifacts/odin build examples/instancing -debug
windows_artifacts/odin build examples/mrt -debug
windows_artifacts/odin build examples/blend -debug
windows_artifacts/odin build examples/debugtext -debug
windows_artifacts/odin build examples/debugtext-print -debug
windows_artifacts/odin build examples/debugtext-userfont -debug
windows_artifacts/odin build examples/saudio -debug
windows_artifacts/odin build examples/sgl -debug
windows_artifacts/odin build examples/sgl-points -debug
windows_artifacts/odin build examples/sgl-context -debug
- name: build
run: |
./odin build examples/clear -debug
./odin build examples/triangle -debug
./odin build examples/quad -debug
./odin build examples/bufferoffsets -debug
./odin build examples/cube -debug
./odin build examples/noninterleaved -debug
./odin build examples/texcube -debug
./odin build examples/shapes -debug
./odin build examples/offscreen -debug
./odin build examples/instancing -debug
./odin build examples/mrt -debug
./odin build examples/blend -debug
./odin build examples/debugtext -debug
./odin build examples/debugtext-print -debug
./odin build examples/debugtext-userfont -debug
./odin build examples/saudio -debug
./odin build examples/sgl -debug
./odin build examples/sgl-points -debug
./odin build examples/sgl-context -debug

test-rust:
needs: gen-bindings
Expand All @@ -250,7 +214,8 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
# os: [ubuntu-latest, macos-latest, windows-latest]
os: [ubuntu-latest, windows-latest]
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v3
Expand Down
Loading
Loading