SDL_shader_tools
SDL_shader_tools copied to clipboard
Shader compiler and tools for SDLSL (Simple Directmedia Layer Shader Language)
Right now it's just SDL Shading Language (SDLSL). Which is _fine_, whatever, but maybe something better would be nice, if anyone has a good idea.
# I NEED FEEDBACK. IF YOU LOVE OR HATE THIS, PLEASE SPEAK LOUDLY. ## IF THIS WILL ABSOLUTELY CAUSE PAIN AND MISERY, SPEAK TWICE AS LOUDLY. ### THANK YOU. Here's...
Work has started on defining the bytecode format, and is ongoing: https://github.com/icculus/SDL_shader_tools/blob/main/docs/README-bytecode-format.md You can see a lot of these things aren't filled in yet, but that's mostly laziness on my...
As someone who is very interested in SDL_gpu, both as a user and a contributor, I am concerned that writing an entirely custom shader language spec, compiler, bytecode format, and...
See [this example from the gnu cpp manual](https://gcc.gnu.org/onlinedocs/cpp/Tokenization.html): ``` #define foo() bar foo()baz ``` This should expand to `bar baz`. Current `sdl-shader-compiler -P` expands it to `barbaz`.
```c #define FOREACH_LIST(X) \ X(item1) \ X(item2) #define F(A) func(A); FOREACH_LIST(F) ``` should expand to: ```c func(item1); func(item2); ``` but `sdl-shader-compiler -P` expands it to: ```c func ( item1 )...
This is kind of an SDL_gpu thing but also relevant to the design of the shader compiler and infra. Right now in my game and libraries I have a bunch...
It might be nice to have `__COUNTER__`, etc: https://clang.llvm.org/docs/LanguageExtensions.html#builtin-macros
I'll preface this with I am not a compiler engineer, so I don't know if this is acheivable in a reasonable amount of time/is even possible. I have only seen...