Commit Graph

6190 Commits

Author SHA1 Message Date
Jérôme Leclercq 025deb9ae1 XMake/Packages: Fix qt5base using python instead of python3 2022-01-18 06:02:05 +01:00
Jérôme Leclercq 0af9a96294 Core/Color: Add Gray constant 2022-01-18 06:01:44 +01:00
Jérôme Leclercq 7976ea27b9 Add initial support for normal mapping and other light types 2022-01-18 06:01:15 +01:00
Jérôme Leclercq b0a3941f4e Add Phong lighting (WIP) 2022-01-11 19:47:29 +01:00
Lynix f30a1faeca Fix client unit tests 2022-01-11 17:32:16 +01:00
Jérôme Leclercq 504249e70f Update xmake.lua 2022-01-06 20:38:57 +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 972d5ffd3f Regenerate global headers, unicode and spirv data 2022-01-04 16:36:28 +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
Jérôme Leclercq aac6e38da2 Core/Algorithm: Improve SafeCast to handle references 2022-01-02 21:59:58 +01:00
Jérôme Leclercq 55784a7dfc VulkanRenderer: Fix scissor handling 2022-01-01 23:02:09 +01:00
Jérôme Leclercq 1f15328fdd Shader: Add initial support for arrays 2022-01-01 23:01:31 +01:00
SirLynix 89c7bbf197 Update copyright date 2022-01-01 15:30:09 +01:00
Jérôme Leclercq d1841356bf Core/Algorithm: Improve AccessByOffset check and add error message 2021-12-29 14:35:26 +01:00
Jérôme Leclercq 7ec017829b XMake: Remove custom assimp package since fix got merged on xmake-repo 2021-12-29 00:15:55 +01:00
Jérôme Leclercq 0616b7c913 CI: Install Qt5 package for MinGW until pyppmd installation is fixed again 2021-12-28 23:38:04 +01:00
Jérôme Leclercq d878036bfc Shader/AstOptimizer: Reduce template complexition 2021-12-28 23:37:35 +01:00
Jérôme Leclercq 60a7cec099 Fix compilation 2021-12-28 22:15:13 +01:00
Jérôme Leclercq c3f7f215d5 Update xmake.lua 2021-12-28 20:09:30 +01:00
Jérôme Leclercq 3a4e006106 UnitTests/Shader: Update scalar swizzle test 2021-12-28 20:09:26 +01:00
Jérôme Leclercq 101a3d70da Shader/AstOptimizer: Add swizzle optimization 2021-12-28 20:09:04 +01:00
Jérôme Leclercq 22651255df UnitTests/Shader: Add cond/const if tests 2021-12-28 13:36:11 +01:00
Jérôme Leclercq 343eac6616 Shader/Parser: Allow external and struct declarations to be conditional 2021-12-28 13:35:53 +01:00
Jérôme Leclercq a8bb5291f2 Update Optimizations.cpp 2021-12-28 11:54:49 +01:00
Jérôme Leclercq 2f64e493de UnitTests/Shader: Add sanitization and optimizations unit tests 2021-12-28 11:49:53 +01:00
Jérôme Leclercq 4e5def1095 Shader/AstOptimizer: Fix Vector4 cast propagation optimization 2021-12-28 11:49:41 +01:00
Jérôme Leclercq 47e2ec35e3 UnitTests/Shader: Improve GLSL handling (detect shader point type instead of assuming fragment) 2021-12-28 11:49:20 +01:00
Jérôme Leclercq a0f66d9e88 Shader/SPIRV: Fix multiple branch handling (by splitting) 2021-12-28 11:48:19 +01:00
Jérôme Leclercq e21b45946f Shader/SPIRV: Fix double termination of blocks when branching
Which could happen when using OpKill (discard) for example
2021-12-26 22:00:44 +01:00
Jérôme Leclercq feb1774eb2 Update Algorithm.inl 2021-12-25 20:25:43 +01:00
Jérôme Leclercq b43ed890d0 Fix scissor bugs (fixes Deferred Shading flare on Vulkan and widget scissor on OpenGL) 2021-12-25 20:25:39 +01:00
Jérôme Leclercq b98fd65a01 Fix a lot of small bugs/warnings 2021-12-25 20:07:53 +01:00
Jérôme Leclercq 1080823c4d Shader/SpirvPrinter: Handle LiteralInteger as value 2021-12-25 19:13:48 +01:00
Jérôme Leclercq b9642b0662 UnitTests: Add a lot of shader generation tests 2021-12-25 19:13:32 +01:00
Jérôme Leclercq f98ea6b0ca Shader: Add full support for scalar swizzle 2021-12-25 19:13:08 +01:00
Jérôme Leclercq ec3da7e3f5 XMake: Fix NAZARA_DEBUG not being defined in unit tests and examples 2021-12-25 19:10:26 +01:00
Jérôme Leclercq 8ad01f9e6e Core/Algorithm: Rewrite SafeCast 2021-12-25 18:37:07 +01:00
Jérôme Leclercq 157e74b016 Shader/GlslWriter: Reorder function implementations 2021-12-25 14:02:22 +01:00
Jérôme Leclercq f798901c23 UnitTests: Use glslang to validate GLSL shaders 2021-12-24 14:54:35 +01:00
Jérôme Leclercq 3e708cf5ed XMake: Use remove_files/remove_headerfiles 2021-12-24 11:06:44 +01:00
Jérôme Leclercq 1aa56b4db8 Tests: disable unity buildd 2021-12-23 18:26:00 +01:00
Jérôme Leclercq 0aff946665 Examples/DeferredShading: Add flare sprite 2021-12-23 17:40:03 +01:00
Jérôme Leclercq d4dfe97006 Minor fixes 2021-12-23 17:39:37 +01:00
Jérôme Leclercq b53d2a0560 Rework shader module unit tests 2021-12-23 17:39:24 +01:00
Jérôme Leclercq a5cc915948 Shader/SPIRV: Fix structs being always decorated as block
They are now only decorated as blocks when used as uniform buffers, which fixes structure nesting
2021-12-23 17:36:40 +01:00
Jérôme Leclercq ed3ee34565 Graphics/Sprite: Allow to change origin 2021-12-23 17:32:18 +01:00
Jérôme Leclercq e2882f6595 Shader: Rename Parse function to ParseFromFile
to avoid ambiguous calls when passing const char*
2021-12-23 17:18:30 +01:00
Jérôme Leclercq e497faabaf Fix compilation 2021-12-21 14:45:53 +01:00