Commit Graph

6158 Commits

Author SHA1 Message Date
Jérôme Leclercq
6bd9f1a9e4 Add unity build support 2022-03-15 12:44:21 +01:00
Jérôme Leclercq
0a4fd8f56d Enable unity build on modules that support it 2022-03-15 12:44:21 +01:00
Jérôme Leclercq
bf44672354 Shader: Add support for exported functions 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
1c4ce75aa0 Fix compilation 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
e9543b20a2 Shader: Fix function calls with OpenGL 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
e40e8eb204 Shader: Change module system (no longer based on path) 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
80f9556f8c Shader/LangWriter: Make LangWriter able to output AST before sanitization as well 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
2f26a1d9c7 Graphics: Move LightData to a shader module and add hotreload in debug 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
b92a9f8a1c Core/VirtualDirectory: Fix physical path traversal 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
5a9a55ee7e Shader/MultiStatement: Remove sectionName 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
b595a5d4ec Examples/DeferredShading: Use modules 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
33554cf5a0 Shader: Remove struct and functions that aren't required 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
d29876f448 Shader/SanitizeVisitor: Minor cleanup 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
3d4271706a Core/VirtualDirectory: Fix some bugs and add more tests 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
bfaa428b39 Fix compilation 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
db98b86eaf Core: Rewrite VirtualDirectory class and add more tests 2022-03-14 18:30:55 +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
bf7f06ac4c Shader: Fix shader serialization 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
39a2992791 Shader: Minor module fixes 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
da40a2db28 UnitTests: Add shader module tests 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
e8fceeb2f5 UnitTests: Rename shader tests files 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
05cf98477e Shader: Add proper support for alias 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
ce93b61c91 Shader: Serialize cached expression type 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
d45ba6696f Shader: Rename VariableExpression to VariableValueExpression 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
1401c46d44 Shader: Better fix than 3ccec0ce 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
3c290c1d0e Shader: Fix unit tests 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
be9bdc4705 Modules are workings \o/ 2022-03-14 18:30:55 +01:00
Lynix
83d26e209e WIP2 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
012712b8d0 WIP 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
d72ac9cc73 Core/Uuid: Add FromString builder method 2022-03-14 18:30:55 +01:00
Lynix
8dcce73738 Fix after rebase 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
505d996c88 Core: Add constexpr CRC32 function 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
53157875b9 Shader: Fix LangWriter not outputting const if 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
a4858d6793 Shader: Add comments to surround modules 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
4bded2182c Minor changes 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
53728200ac Shader: Add module ID (UUID) 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
43ac86e85c Shader/Modules: proof of concept 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
7dab1d735f Shader: Add AstExportVisitor 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
073f1dc434 Shader/DependencyCheckerVisitor: Update default config 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
b6cd85d6fe Shader: Add import statement (not doing anything for now) 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
ca83f363a3 Shader: Add export attribute for structs ([export]) 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
a2f4f3c802 Shader: Many fixes 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
1919bd3302 Fix compilation 2022-03-14 18:30:55 +01:00
Jérôme Leclercq
0c3607579e Shader/ShaderLangParser: small refactor 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
ad892dfb43 Assimp: Fix custom stream issues 2022-03-12 16:56:14 +01:00
Jérôme Leclercq
82a01a8203 CI: Disable PCH except on Windows 2022-03-09 21:56:23 +01:00
Jérôme Leclercq
3e556a72b6 Build: Add usepch option to use precompiled headers 2022-03-09 20:06:38 +01:00