Commit Graph

93 Commits

Author SHA1 Message Date
SirLynix e8a362b695 Graphics/MaterialInstance: Add Build method 2024-01-04 17:47:54 +01:00
SirLynix d2e2c075b4 Update copyright year 2024-01-02 12:02:14 +01:00
SirLynix 83366e93d4 Make changes for breaking NZSL update
Fix build

Fix compilation (again)

Fix global included

TextureAsset belongs to another branch

Add missing include

Fix include (should be good, finally)
2023-12-17 20:40:45 +01:00
SirLynix 1ac992b5c7 Graphics: Add Billboard support 2023-11-25 15:52:58 +01:00
SirLynix fa54f1a3e4 Graphics/Material: Fix error message when module is not init 2023-11-04 17:52:47 +01:00
SirLynix 9aebb4f745 Graphics: Rework shadowing (add cascaded shadow mapping)
- Add support for per-viewer shadows
- Add cascaded shadow mapping for directional lights (wip)
- Rework the way lights are sent to the shaders (they are now selected once per viewer)
- Fixes PointLight shadow mapping (using a dedicated pass)
- Lights out of frustum for every viewers are no longer processed (wip)
2023-10-14 14:46:49 +02:00
SirLynix cf6fdf258f Graphics: Add new functions to get default material types/presets 2023-08-08 18:17:58 +02:00
SirLynix dfe6b2ddcf Make use of the new EnumMap class 2023-05-30 12:32:37 +02:00
SirLynix f98cbcd00a Copyright year update 2023-01-22 17:41:18 +01:00
SirLynix e990a320cc WIP 2022-12-08 18:17:13 +01:00
SirLynix be9fba3190 Graphics/Material: Fix uniform buffer size 2022-12-08 13:06:50 +01:00
SirLynix 1205155466 Graphics/Material: Rename CreateInstance to Instantiate 2022-11-05 00:14:16 +01:00
SirLynix ab154819a7 Graphics: Make use of new auto_binding 2022-10-31 22:44:19 +01:00
Jérôme Leclercq dc6ce8427c
Refactor material system (#382) 2022-10-31 19:53:41 +01:00
SirLynix fbdc1faf8c Graphics: Add TextureLoader 2022-09-07 13:31:21 +02:00
Jérôme Leclercq 5ce8120a0c Graphics: Move FramePipeline passes to separate classes 2022-02-16 18:29:27 +01:00
SirLynix 89c7bbf197 Update copyright date 2022-01-01 15:30:09 +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 9a311da2c8 Graphics: Add MaterialPassRegistry 2021-08-19 18:47:11 +02:00
Jérôme Leclercq b5045a2c59 Graphics: Add Material and made use of passes (WIP) 2021-08-19 18:47:11 +02:00
Jérôme Leclercq 5669b5bc60 Graphics: Rename Material to MaterialPass 2021-08-19 18:47:11 +02:00
Jérôme Leclercq 90df17d45a Graphics/Material(Pipeline): Remove leftovers attributes 2021-07-13 14:38:09 +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 3cd9172f7a Graphics: Make use of shader binding sets 2021-06-16 16:50:00 +02:00
Jérôme Leclercq cce32a64d4 Upgrade Utility 2021-05-25 10:40:07 +02:00
Lynix 13feaf4aab Renderer: RenderWindow now requires a RenderDevice 2021-05-16 23:13:00 +02:00
Jérôme Leclercq 08c2f711b0 Graphics/Material: Add UpdateBuffers 2021-02-15 18:16:19 +01:00
Jérôme Leclercq b9151d8a7a Graphics: Improve TextureSampler handling 2021-01-27 18:50:49 +01:00
Jérôme Leclercq 19783f7755 Graphics/Material: Rework UBO handling 2021-01-22 23:31:54 +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 3b2e375382 WIP 2020-09-26 20:04:05 +02:00
Jérôme Leclercq 2a875c8bdc Remove Graphics module and fix compilation 2020-08-27 19:43:31 +02:00
Lynix c23b6dfa01 Copyright year update
I can't wait to see the conflicts this will cause
2020-03-05 17:27:26 +01:00
Lynix 3d22321109 Big f***ing cleanup part 1 2020-02-23 00:42:22 +01:00
Lynix a3a4ed89b8 Graphics/Material: Fix reflection mode not being copied 2018-08-25 22:41:05 +02:00
Jérôme Leclercq 8cdc36c948 Graphics/Material: Add parameter for vertex color 2018-06-15 14:15:23 +02:00
Lynix 786a11fc78 Graphics/Material: Fix missing reflection initialization 2017-10-31 00:14:50 +01:00
Gawaboumga bbac0838dd Include-What-You-Use (#137)
* IWYU Core

* IWYU Noise

* IWYU Utility

* IWYU Audio

* IWYU Platform

* IWYU Lua

* IWYU Network

* IWYU Physics2D

* IWYU Physics3D

* IWYU Renderer

* IWYU Graphics

* IWYU NDKServer

* IWYU Fix

* Try to fix compilation

* Other fixes
2017-10-01 11:17:09 +02:00
Jérôme Leclercq 308f6d7448 #Oops 2017-05-29 20:00:39 +02:00
DrLynix f383eca19a Update copyright year 2017-01-20 12:58:35 +01:00
Lynix 682dab32b3 Graphics/Shader: Make texture units statics
Provides better performances and prevents the sampler type bug to happen
2016-12-18 01:13:46 +01: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 56443c91e4 Renderer/RenderStates: Update RenderStates structure (preparing for renderer update)
Former-commit-id: 392c7c33ff64d19e0fe3c7bdc8b22fe17c150887 [formerly d12a3c5f664fccebe0ee40a73bb0310e2d02287e]
Former-commit-id: 22743f015567a8471f97cb90a06175f600ef0f8f
2016-07-21 23:00:09 +02:00
Lynix 0b0dfda89d Utility/MaterialData: Fix FaceCulling being used for FaceSide
Former-commit-id: b82f598a9c94700bea58d651b5f29dcf47251af1 [formerly 5790a8397870a66dfaeb9e56862e5fb2ae850cfc]
Former-commit-id: 93372a3b733d3c84de11abacc6eaa3804b98079a
2016-07-07 08:57:11 +02:00
Lynix c83b9d0491 Graphics/Material: Add SaveToParameters
Former-commit-id: 87b9ca6e0f5f391f45edf6106efbd550dd52ac53 [formerly 91ba614d69d3a2e9762da0e059ee96985c891749]
Former-commit-id: e049a9db776f407e2cd7635bfb1825d809223c77
2016-07-07 08:56:18 +02:00
Lynix 51533fabe9 Merge branch 'master' of https://github.com/DigitalPulseSoftware/NazaraEngine
Former-commit-id: 3878bde4d067ef921783f256b582af8f6463c19b [formerly 029a8e9081b66daf20a78ba7331a496d89145f44]
Former-commit-id: 47009b49149da0186169afc538618f2ab2973f89
2016-06-09 08:49:14 +02:00
Lynix 296be70a5c Graphics/Material: Ugly spaces to tabs
Former-commit-id: fe691ce50ec143681c8a916bab2f85270cedec06 [formerly c45aba3d7b6d8b47a90e5f8120c278785d68773b]
Former-commit-id: 04596ea0ca1bb7f1575a4db6a5ef309328922938
2016-06-09 08:48:04 +02:00
Gawaboumga 2c941827ed Documentation for module: Graphics
Former-commit-id: 1757c33318443aade1dc38e16d053240d7dc885c
2016-05-30 14:21:36 +02:00
Lynix 6c8d2ed03a Merge branch 'NDK-ShadowMapping'
Former-commit-id: 0fcd92b113069d2ee1edc74cf9be471cd6d97267
2016-05-13 13:06:23 +02:00