80a74c15cd
Goodbye, WebGPU
...
The web backend however, is being kept - for the future in case WebGPU gets added back or WebGL support is added
2022-03-10 10:26:59 -05:00
239ecc8d56
Revert "Another big WebGPU compatibility patch"
...
This reverts commit 3229c4fa2c
.
2022-03-10 10:21:09 -05:00
71d0eff8dc
Revert "Next big changes to make WebGPU work"
...
This reverts commit 0a95ee2fa8
.
2022-03-10 10:20:50 -05:00
0a95ee2fa8
Next big changes to make WebGPU work
...
Dynamic buffers are removed, since that's now the renderer's job. Texture usage and buffer usage has changed too.
2022-03-07 11:11:17 -05:00
3229c4fa2c
Another big WebGPU compatibility patch
...
All specialization constants are removed (they cause trouble in
WebGPU, since they don't support array sizing, and it was a pain
in Metal anyway) - they are now macro defined. WebGPU now runs, although
push constant emulation is not implemented yet.
2022-03-07 00:33:44 -05:00
e1c688bea7
Completely overhaul shader generation, again
...
Now it's even simpler, and it now generates multiple
shader languages at once! The copying mechanism is now
much simpler on non-mac platforms as well. HLSL is also now a supported shader target language.
2022-02-21 18:07:22 -05:00
f932f83b89
Output GLSL from shader compiler
...
This should be optimized later :-)
2022-02-21 12:08:27 -05:00
f0a72530b7
Remove some unnecessary cruft from CMakeLists.txt
2022-02-21 10:13:47 -05:00
4d9a333781
Remove, cleanup some constructors
2022-02-21 00:14:12 -05:00
c557c51eb6
Stop dumping source glsl into the console
2022-02-20 22:49:26 -05:00
d6fb539583
Add a WebGPU compat option in the shader compiler
...
Come on...
2022-02-20 22:28:35 -05:00
50b6c33bbc
Generate SPIR-V debug information
...
This will be behind an option later
2022-02-18 14:38:08 -05:00
fcbf526615
Re-add support for MSL shaders
2022-02-15 12:32:42 -05:00
5d335b0ed3
Add placeholders for MSL, HLSL, and WGSL
2022-02-15 09:21:56 -05:00
4e0f92014a
Remove obsolete MSL ShaderLanguage option
...
This is no longer relevant now that Metal is a unsupported GFX backend, the MSL conversion is now handled by MoltenVK
2022-02-07 13:07:30 -05:00
redstrate
e79a98c7d2
Some minor code refactoring
2021-10-14 08:51:58 -04:00
redstrate
529bc27702
Replace old logging and format system with fmt
2021-09-13 23:41:54 -04:00
redstrate
fa65e99094
Rename Path -> path
2021-05-12 09:05:56 -04:00
redstrate
01966c1d81
Rename File -> file and move under the prism namespace
2021-05-12 08:50:02 -04:00
redstrate
87f15b2007
Completely redo the CMake shader compilation system
...
* Now shader recompilation happens only when it needs to. Hurray for faster compiles!
* Changes to constructors for ShaderSource to make it more explicit.
* The version of SPIRV-Cross is updated, and now the glslang version pulled correctly matches what SPIRV-Cross needs. This fixes the annoying "cannot parse built-ins" bug.
2021-05-09 19:10:23 -04:00
redstrate
bae6d05184
Move console and log namespaces to prism
2021-04-20 11:23:53 -04:00
redstrate
e8fc757d99
Add basic shader editing system
...
POC, only registered shader is the sky shader
2021-02-16 17:10:37 -05:00
redstrate
fcf6277032
Fix embarassing macOS/iOS switchup
2021-02-05 19:50:00 -05:00
redstrate
ae599ba744
Make fragment shader stage optional
...
Removes the fragment on (normal) shadow pass
2021-02-04 09:36:06 -05:00
redstrate
482c7ef748
Fix vulkan backend validation errors
2020-09-23 09:53:45 -04:00
redstrate
41ef1c33f5
Add framework for compute shaders
2020-09-22 15:39:20 -04:00
redstrate
dbe23f4aa4
Add better documentation for ShaderCompiler
2020-08-15 20:42:14 -04:00
redstrate
f50852abeb
Use the to_language parameter instead of choosing by platform
2020-08-15 20:35:46 -04:00
redstrate
6db47e272f
Add query for shader language accepted by the current GFX api
2020-08-15 20:32:02 -04:00
redstrate
80fd8a375b
Unify standalone and runtime shader compiler, rename old ShaderCompiler to MaterialCompiler
2020-08-15 20:09:16 -04:00