Commit Graph

28 Commits

Author SHA1 Message Date
SirLynix
f98cbcd00a Copyright year update 2023-01-22 17:41:18 +01:00
SirLynix
ab154819a7 Graphics: Make use of new auto_binding 2022-10-31 22:44:19 +01:00
SirLynix
813314b5d5 UberShader: Handle case where entry points come from imported modules 2022-06-17 19:07:40 +02:00
SirLynix
2cc4944f58 Fix compilation 2022-06-16 18:19:19 +02:00
SirLynix
8e8bee7037 Temp fix for NZSL update 2022-06-15 20:26:14 +02:00
SirLynix
c7b6d83bbc Last nzsl version update 2022-06-07 20:18:16 +02:00
Jérôme Leclercq
03e2801dbe Split engine to packages NazaraUtils and NZSL (#375)
* Move code to NazaraUtils and NZSL packages

* Reorder includes

* Tests: Remove glslang and spirv-tools deps

* Tests: Remove glslang init

* Remove NazaraUtils tests and fix Vector4Test

* Fix Linux compilation

* Update msys2-build.yml

* Fix assimp package

* Update xmake.lua

* Update xmake.lua

* Fix shader compilation on MinGW

* Final fixes

* The final fix 2: the fix strikes back!

* Disable cache on CI

* The return of the fix™️
2022-05-25 19:36:10 +02:00
SirLynix
8146ec251a Shader: Add support for partial sanitization 2022-03-25 12:54:51 +01:00
Jérôme Leclercq
615509d1ba Add support for shader hotreloading 2022-03-17 21:36:36 +01:00
Jérôme Leclercq
db0c1e6e8c Shader: Add module resolver + use modules for engine shaders 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
98bd04e35a Shader/SanitizeVisitor: Fix an issue when double-sanitizing
... with differents parameters (like reducing loops to while, which introduces new variables which would take over existing var indices)
2022-03-14 18:30:55 +01:00
Jérôme Leclercq
a7acf32886 Shader: Replace indices-based option keys by CRC32 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
99e07e6e1e Shader: Add module statement 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
402e16bd2b Shader: Handle type as expressions 2022-02-17 13:23:56 +01:00
SirLynix
89c7bbf197 Update copyright date 2022-01-01 15:30:09 +01:00
Jérôme Leclercq
83772ab035 Graphics/UberShader: Fix stage type check 2021-11-14 19:52:52 +01:00
Jérôme Leclercq
ed7ab31933 Apply copyright fix to all files 2021-10-26 14:31:35 +02:00
Jérôme Leclercq
02a12d9328 Handle shader options of any type 2021-09-03 19:33:41 +02:00
Jérôme Leclercq
7aafcfaae9 Minor stuff 2021-08-19 18:47:11 +02:00
Jérôme Leclercq
a895e553d4 Graphics: rework ubershaders to prevent duplicate shaders modules
Also rename all remaining conditions to options
2021-07-08 14:52:39 +02:00
Jérôme Leclercq
f9af35b489 Shader: Attribute can now have expressions as values and struct fields can be conditionally supported 2021-07-07 22:38:24 +02:00
Jérôme Leclercq
815a7b0c62 Replace const ShaderAst::StatementPtr& by ShaderAst::Statement& in input 2021-06-16 16:50:00 +02:00
Lynix
13feaf4aab Renderer: RenderWindow now requires a RenderDevice 2021-05-16 23:13:00 +02:00
Jérôme Leclercq
2238bbfa0c Shader: Add AstReflect 2021-04-20 18:18:27 +02:00
Jérôme Leclercq
8359d46711 Graphics fixes 2021-04-20 18:18:27 +02:00
Jérôme Leclercq
e4aabf309e Renderer: Replace ShaderStage by ShaderModule (a module can handle multiple stages) 2021-04-20 18:18:27 +02:00
Jérôme Leclercq
fed7370e77 Rework shader AST (WIP) 2021-04-20 18:18:27 +02:00
Jérôme Leclercq
f327932738 Commit current work
Reworked conditions, added uber-shaders, comparison nodes, fixed Discard
2021-01-02 21:15:59 +01:00