Commit Graph

69 Commits

Author SHA1 Message Date
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 99e07e6e1e Shader: Add module statement 2022-03-14 18:30:55 +01:00
Jérôme Leclercq a1b6f51398 Minor fixes 2022-02-21 20:46:37 +01:00
Jérôme Leclercq 402e16bd2b Shader: Handle type as expressions 2022-02-17 13:23:56 +01:00
Jérôme Leclercq 8a3a8547dc Add light support (WIP) 2022-02-02 12:55:39 +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 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 9bd411e53c Shader/SPIRV: Add support for swizzling with one component 2021-12-18 15:51:20 +01:00
Jérôme Leclercq e84ec8e4ac Proof of concept 2021-10-26 20:26:13 +02:00
Jérôme Leclercq 0442db1c53 Shader: Add support for compound operators 2021-09-24 15:39:03 +02:00
Jérôme Leclercq abdcd63058 Graphics: Add support for draw call data (texture overlay) 2021-09-05 18:26:12 +02:00
Jérôme Leclercq 732bb89a86 Graphics/UberShader: Add config callback 2021-09-05 15:46:59 +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 a2a0e6bd54 Graphics: Add DepthMaterial 2021-08-19 18:47:11 +02:00
Jérôme Leclercq 7aafcfaae9 Minor stuff 2021-08-19 18:47:11 +02:00
Jérôme Leclercq f5dac32020 Minor stuff 2021-08-19 18:47:11 +02:00
Jérôme Leclercq 1b4ab7e625 Graphics/BasicMaterial: Improve shader 2021-07-08 11:37:33 +02:00
Jérôme Leclercq 81b64e4fe2 Fix some shaders 2021-07-08 11:06:54 +02:00
Jérôme Leclercq d3e0d8a39f Shader: Replace select_opt by const_select 2021-07-08 10:53:11 +02:00
Jérôme Leclercq bfab451633 Remove resources headers (as they will be generated on compilation) 2021-07-07 22:44:38 +02:00
Jérôme Leclercq 1f6937ab1b Shader: Implement const if and const values 2021-07-07 22:38:24 +02:00
Jérôme Leclercq 4ac5fe7cba Graphics: Add RenderSystem and frame pipeline 2021-07-06 11:04:22 +02:00
Jérôme Leclercq 428a706fbe Replace basicmaterial nodes by NZSL source 2021-07-06 11:02:53 +02:00
Jérôme Leclercq 517ca2d9c2 Graphics/Shaders: Remove pseudo-lighting from BasicMaterial shader 2021-06-20 14:12:30 +02:00
Jérôme Leclercq 3cd9172f7a Graphics: Make use of shader binding sets 2021-06-16 16:50:00 +02:00
Jérôme Leclercq eb6ca428a3 Update shader binaries 2021-06-01 16:23:21 +02:00
Jérôme Leclercq eab6b4a279 Update shaders 2021-05-22 13:38:29 +02:00
Lynix 525f24af2e Shader/ShaderLang: Add support for Unary operators 2021-05-16 23:07:25 +02:00
Jérôme Leclercq a18d8859d5 Update basicmaterial binary 2021-05-14 02:11:08 +02:00
Jérôme Leclercq 080fd9c7eb Minor fixes 2021-02-15 18:17:30 +01:00
Jérôme Leclercq bb18ca13ca Fix shader generation 2021-01-15 19:19:05 +01: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
Jérôme Leclercq 89609570f4 Graphics: WIP (almost working) 2020-10-30 23:08:48 +01:00
Jérôme Leclercq 2a875c8bdc Remove Graphics module and fix compilation 2020-08-27 19:43:31 +02:00
Lynix 96f3104347 Fix Basic uber-shader compilation on some drivers 2018-03-10 13:02:30 +01:00
Lynix e7eaea37d7 Reencode resources 2017-10-26 23:38:33 +02:00
Lynix fce0db09e8 Add support for reflection in PhongLighting shader 2017-10-11 00:07:57 +02:00
Lynix 486d4fc015 Revert "Core/HardwareInfo: Fix indentation (Windows)"
This reverts commit a4019076ff9afd3cb7e2d98a54c9788fd2df1457 [formerly 3a39cd2e8a3aa8bb46f9f1465923f2abb8fc19a1] [formerly a23f6beee25e408579609874672806b124bf5fc0 [formerly be4cec088d5683bc18e54fd5daa2805134a88bb9]] [formerly dd94bfecaf16a96cdc39de9abd3c0749f17bf824 [formerly 539605da0eb694cbad2fb52fdb49b9a79c3a0d04] [formerly 00917e0bb4766a6f19f303040241c81a92778185 [formerly 48c4b5219e3d1f74f04099f164712c2baddf1d4b]]].


Former-commit-id: 8c12c9823e95088e92a5fbcb77b7b4feb175d3d9 [formerly 137a3a93c7be0cbcc8b82939c0ba5f3844fa1e24] [formerly a76f30044d61a5e815ed2b1d0ebbcd05feaad994 [formerly 71b63053a8db0e880844044f849f1029c70a6b25]]
Former-commit-id: 596d78e1e8fd79e5dc8aa3fbb514c1d6444ce978 [formerly e5089919c76e32c64bda7a1186550a65a6b6d8b3]
Former-commit-id: bca999978415a972625367d087320cc016f4774b
2016-08-31 19:16:03 +02:00
Lynix 4637547834 Core/HardwareInfo: Fix indentation (Windows)
Former-commit-id: 8e81ffeabb15ea32897b9326c64f3eb0509f3a4d [formerly 5f825a1f5e572a323ccde72c02092eef3fe63288] [formerly ee52f05420bcce124f38df04a993981f55319da3 [formerly d158e494b1e518dc1f472439cd96a9005e959697]]
Former-commit-id: 2bcd5f3ef3195e1ddb172010a3322551101490d3 [formerly c1ad1017301b3c17c8fab3981bb43fcbd3ca6dfc]
Former-commit-id: 7782b8a6e2ef27e2ca97201d490c5782a9a83899
2016-08-31 18:20:23 +02:00
Lynix f3c57a5417 Graphics/DeferredRenderTechnique: Optimize Deferred Shading
No longer copies depth twice


Former-commit-id: aa2096ade409861b773bc7302ced27ae84fab858 [formerly 80fd00bd4a75506b128b70a545eb43ff6a3a7071] [formerly d8576a8858caca9314ea67661af0ce7d9077ba9d [formerly e626f2fd62d19ca5f952485478bfe46f4a803227]]
Former-commit-id: 363c93e397887e66b25446927bc5ef89e761c488 [formerly a8bee284456d7f46d182ae7df2d565fa29e55b61]
Former-commit-id: 168792d853247ada5add8f97057c213af7c801b3
2016-08-15 01:27:33 +02:00
Lynix 3f899d24aa Graphics: Allow OpenGL 3.3 to use the engine (with shadow disabled)
I still have a figure a better solution


Former-commit-id: b183688bb05e98ba75f046b21aa10de3e7d8c329 [formerly 455fea0feb41b47325d0ca67b37edc4bbdf72251] [formerly 51570bc5776af09f35ffeec175361d5a68c6b3f6 [formerly 0361f22475e3064ed871cc13058b15098f45570d]]
Former-commit-id: 28efac6ddbe03f3d53e48072f20ea2353b45035f [formerly d68e985e7016c3e307cf55e882ff70507363985f]
Former-commit-id: ac4958f4df3df5f9c3847b14524cc275027c1ace
2016-08-11 00:04:10 +02:00
Lynix ac25df0126 Graphics: Separate pipeline state from Material into a new class, MaterialPipeline
This allows much more efficient batching, along with pipeline reusage and preparation for the Vulkan API


Former-commit-id: fd2de2f0e9612ea275ee69c5578c68e7169cd05b [formerly 53bd8a5ed5695311b7543ad717df63f93fad2da6] [formerly 171740929652ac9fe30e84983709388859cedd6b [formerly 25096a76678f1052e76f67d26b458077a0632cc3]]
Former-commit-id: 7978dbeb87af2eac9e5501a97afa83849648bf6e [formerly 81b6cce1ee81a2ca8873d3c70d468b2c71510c95]
Former-commit-id: 6663e2721c3f79d5f1e3f33c6183174378b502f4
2016-08-05 22:11:13 +02:00
Lynix ce90bd43d6 Graphics: Prevent shadow-mapping code to compile without shadow-mapping
Temporary fix for OpenGL 3.3


Former-commit-id: 50b368b62fc0eba5507e4bf3c4f825eedf35cc8b [formerly 6a5258a1ecd4991937a4446684043f52bc60215c]
Former-commit-id: 70f890125f05d0c4e16f38535a3ca9c6848bf35b
2016-06-02 13:49:30 +02:00
Lynix 9cf5e4b68c Merge branch 'master' into NDK-ShadowMapping
Former-commit-id: 83435ab51753299b30a102871fbcd5558d2ac4f1
2015-12-09 00:59:07 +01:00
Lynix 70ea6912e1 Merge branch 'OpenGL3-upgrade' into NDK
Conflicts:
	src/Nazara/Graphics/SkyboxBackground.cpp
	src/Nazara/Renderer/RenderTexture.cpp
	src/Nazara/Renderer/Renderer.cpp

Former-commit-id: e8914d4e32a689b7df365dca15a438f10722530c
2015-09-24 21:35:43 +02:00
Lynix cd3b19ca79 Graphics/Shader: Fix shadowing
Former-commit-id: 54fc9a019217eef85281c33a8a7becb6fec4f851
2015-08-19 13:46:11 +02:00
Lynix 2b48917176 Merge branch 'NDK' into NDK-ShadowMapping
Former-commit-id: b07de3853987ffc91946b307208c0ec26eda280a
2015-08-17 14:26:42 +02:00
Lynix ff9d233e7c Graphics/Billboard: Fix billboard texcoords
Former-commit-id: 4c3182736ded66d0d03ed5d0abc54a51d6f6eca6
2015-08-16 01:43:59 +02:00
Lynix 5cad63c21b Graphics/Shadow: Implement PCF for spot lights
Former-commit-id: 0045af26b612a5c41268fcf3e3d03893e01c0448
2015-08-14 14:13:53 +02:00