Skip to content

Slang Shading Language support - #1068

Draft
H7perus wants to merge 27 commits into
masterfrom
shader-slang
Draft

Slang Shading Language support#1068
H7perus wants to merge 27 commits into
masterfrom
shader-slang

Conversation

@H7perus

@H7perus H7perus commented Jan 24, 2026

Copy link
Copy Markdown
Collaborator

Preliminary PR
To-Do:

  • The C-API needs to support our reflection needs. Currently, it is possible to easily create bindings to load shader code from storage, select an entry point and get out GLSL code. The C-API for reflection still has to be created
  • Clean bindings to said API
  • Since we are not going to port every file to native Slang at once (if ever), we must detect whether a file is GLSL or Slang.
    Note: This is not necessary so we can skip the Slang compiler (as we can use minorly modified GLSL shaders with it), but because for some reason, the compilation session setting around row vs column matrices is reversed for said shaders.
  • With all of that together, it needs to integrate with the existing pipeline.

-Various changes and fixes to bindings
-Made Renderer reference SlangApi.dll
- Made Slang sessions public as a hack (change later, make session reload a method of the loader
- Added release() for the slang session
- Minor C Api changes
…lang compiler API. Crashes near water for some reason
…reload and normal shader loading.

- Made water_csgo an overly simple version for testing.
Crashes when water is involved due to buffer struct mismatch (at least on Nvidia)
- Trying SPIR-V instead of GLSL
… modules (not feature complete, targeted at water)

- Lots of CPU code changes to make water work (at the cost of temporary:tm: tech debt)
H7perus and others added 7 commits February 6, 2026 22:00
- Updated a part of lighting.slang
- Fixed the shader naming and includes of newer shaders
- Config modules now named by the hash->GUID of their contents
- Fixed histogram compute shader to work in slang
@kristiker
kristiker marked this pull request as draft July 7, 2026 12:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants