Jérôme Leclercq
|
0f55779a8a
|
Fix compilation
|
2022-03-15 12:44:21 +01:00 |
|
Jérôme Leclercq
|
56c6eff7f8
|
Rebase fix
|
2022-03-15 12:44:21 +01:00 |
|
Jérôme Leclercq
|
6bd9f1a9e4
|
Add unity build support
|
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
|
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
|
5a9a55ee7e
|
Shader/MultiStatement: Remove sectionName
|
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
|
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
|
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
|
a7acf32886
|
Shader: Replace indices-based option keys by CRC32
|
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
|
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
|
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
|
99e07e6e1e
|
Shader: Add module statement
|
2022-03-14 18:30:55 +01:00 |
|
Jérôme Leclercq
|
36aea2ca0c
|
Shader/SanitizeVisitor: Fix sanitization of already sanitized AST with holes in indices
this happens when you sanitize an AST that went through a remove unused pass
|
2022-02-28 13:30:53 +01:00 |
|
Jérôme Leclercq
|
142f15d538
|
Fix dependency checker and add unit test
|
2022-02-28 13:28:59 +01:00 |
|
Jérôme Leclercq
|
96d87d9439
|
Merge fix
|
2022-02-27 18:54:45 +01:00 |
|
Jérôme Leclercq
|
bcfef75ec2
|
Merge branch 'master' into nzsl-modules
|
2022-02-27 18:44:44 +01:00 |
|
Jérôme Leclercq
|
6ee3899400
|
Shader/SanitizeVisitor: Fix variable shadowing
|
2022-02-27 18:43:38 +01:00 |
|
Jérôme Leclercq
|
0fe7f6b899
|
Shader/EliminateUnusedPassVisitor: Fix function call
|
2022-02-27 18:43:02 +01:00 |
|
Jérôme Leclercq
|
fbae413620
|
Shader/GlslWriter: Improve removal of unused code
|
2022-02-27 18:42:41 +01:00 |
|
Jérôme Leclercq
|
a155aa598e
|
Shader: Move DependencyChecker to a public class
|
2022-02-26 16:08:16 +01:00 |
|
Jérôme Leclercq
|
7ece44b4f4
|
Shader: Rename Optimize to ConstantPropagation
|
2022-02-22 13:28:01 +01:00 |
|
Jérôme Leclercq
|
e504c4a982
|
Minor fixes
|
2022-02-18 19:37:37 +01:00 |
|
Jérôme Leclercq
|
3f7815175b
|
Shader: Add EliminateUnusedPassVisitor and use it when optimizing
|
2022-02-18 13:06:47 +01:00 |
|
Jérôme Leclercq
|
402e16bd2b
|
Shader: Handle type as expressions
|
2022-02-17 13:23:56 +01:00 |
|
Jérôme Leclercq
|
e6951d54a5
|
Shader: Switch type<subtype> to type[subtype]
|
2022-01-26 19:24:46 +01:00 |
|
Jérôme Leclercq
|
64efd81bf8
|
Shader: Handle matrix cast properly
|
2022-01-23 19:58:04 +01:00 |
|
Jérôme Leclercq
|
b0a3941f4e
|
Add Phong lighting (WIP)
|
2022-01-11 19:47:29 +01:00 |
|
Jérôme Leclercq
|
756fd773a9
|
Shader: Add support for numerical fors
|
2022-01-06 20:38:55 +01:00 |
|
Jérôme Leclercq
|
2bdcc045cd
|
Shader: Replace const for with [unroll] attribute
|
2022-01-03 20:21:09 +01:00 |
|
Jérôme Leclercq
|
b6e4a9470e
|
Shader/Ast: Treat repeated swizzle as rvalue (cannot be assigned)
|
2022-01-02 22:02:46 +01:00 |
|
Jérôme Leclercq
|
4fe44339c5
|
Shader: Add support for for-each statements and improve arrays
|
2022-01-02 22:02:11 +01:00 |
|