Commit Graph

676 Commits

Author SHA1 Message Date
Jérôme Leclercq
4067116eb8 Graphics/ForwardFramePipeline: Handle material invalidation correctly 2021-10-26 20:26:13 +02:00
Jérôme Leclercq
66bbf63e87 Core/Algorithm: Add SafeCast 2021-10-26 20:26:13 +02:00
Jérôme Leclercq
6bab824e4f Graphics: Use default white texture if material has empty texture slot 2021-10-26 20:26:13 +02:00
Jérôme Leclercq
e84ec8e4ac Proof of concept 2021-10-26 20:26:13 +02:00
Jérôme Leclercq
58485cfa79 Rework shader bindings (WIP) 2021-10-26 20:26:13 +02:00
Jérôme Leclercq
93ec196dc4 Apply header guard check 2021-10-26 15:52:46 +02:00
Jérôme Leclercq
ed7ab31933 Apply copyright fix to all files 2021-10-26 14:31:35 +02:00
Lynix
c3999d708f Graphics: Add DistanceAsSortKey function 2021-10-18 16:46:03 +02:00
Jérôme Leclercq
a66f6faed1 Add widgets (WIP) 2021-10-04 09:25:45 +02:00
Jérôme Leclercq
601ed047ba Fix some initialization order 2021-09-24 15:24:21 +02:00
Jérôme Leclercq
74534236ef Graphics: Fix some warnings 2021-09-13 23:35:46 +02:00
Jérôme Leclercq
7f6b61df53 Graphics/SpriteChainRenderer: Improve copy 2021-09-13 23:35:31 +02:00
Jérôme Leclercq
72f2a5b531 Graphics: Add initial support for transparency 2021-09-08 19:08:44 +02:00
Jérôme Leclercq
c6763bc623 Graphics/Camera: Fix Orthographic projection matrix 2021-09-08 19:08:21 +02:00
Jérôme Leclercq
ece18bf472 Implement back text rendering (WIP) 2021-09-07 18:45:10 +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
26e5a41dce Graphics/SpriteChainRenderer: Reuse vertex buffers and memory 2021-09-05 16:04:10 +02:00
Jérôme Leclercq
938d965e06 Graphics: Add SpriteChainRenderer 2021-09-05 15:50:17 +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
0179ef4d65 Graphics: Improve frustum culling (do it once per viewer) 2021-08-21 01:42:53 +02:00
Jérôme Leclercq
8546631f62 Add frustum culling (WIP) 2021-08-19 23:26:34 +02:00
Jérôme Leclercq
8db8533300 Fixes a lot of warnings and move math enums to enum classes 2021-08-19 20:27:20 +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
c8e7fa5063 Graphics: Fix RenderElement missing export 2021-08-19 18:47:11 +02:00
Jérôme Leclercq
793952eb67 Graphics: Add Camera class 2021-08-19 18:47:11 +02:00
Jérôme Leclercq
9a311da2c8 Graphics: Add MaterialPassRegistry 2021-08-19 18:47:11 +02:00
Jérôme Leclercq
5b1123b971 Graphics: Fix WorldInstance removal while being in use 2021-08-19 18:47:11 +02:00
Jérôme Leclercq
289472dc9f Graphics/ForwardFramePipeline: Minor fixes 2021-08-19 18:47:11 +02:00
Jérôme Leclercq
3de0edec6f Graphics/RenderQueue: Remake it with a naive implementation
The idea is to improve it in the future, after profiling
2021-08-19 18:47:11 +02:00
Jérôme Leclercq
08921b36a6 Graphics: Add RenderElement and ElementRenderer (WIP) 2021-08-19 18:47:11 +02:00
Jérôme Leclercq
7fb5109dfa Graphics/FrameGraph: Make use of RenderPassCache 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
f61deabe92 Graphics/BakedFrameGraph: Don't release in flight resources 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
99876d935d Graphics/Material: Fix IsDepthClampEnabled method 2021-07-13 12:04:19 +02:00
Jérôme Leclercq
ae364934bb Graphics/CameraComponent: Add remaining features 2021-07-10 14:27:38 +02:00
Jérôme Leclercq
c72dfc8004 Graphics: Add forceDisableFeatures config 2021-07-09 12:37:11 +02:00
Jérôme Leclercq
8458301a64 Add support for depth clamping 2021-07-09 00:22:08 +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
4ac5fe7cba Graphics: Add RenderSystem and frame pipeline 2021-07-06 11:04:22 +02:00
Jérôme Leclercq
1c482bbde6 Graphics/BakedFrameGraph: Handle resize in a better way 2021-07-03 13:57:18 +02:00
Jérôme Leclercq
e073e1a44d Graphics/Material: Add PrimitiveMode support 2021-06-20 14:06:28 +02:00
Jérôme Leclercq
0eda2d0721 Improve global header generation to take ECS into account 2021-06-20 14:06:28 +02:00
Jérôme Leclercq
c1a9a22177 Add initial ECS support 2021-06-20 14:06:28 +02:00
Jérôme Leclercq
6f87a01fb2 Graphics: Improve WorldInstance handling 2021-06-20 14:06:28 +02:00
Jérôme Leclercq
298beaedc0 Graphics/BasicMaterial: Add IsAlphaTestEnabled() 2021-06-16 16:50:00 +02:00
Jérôme Leclercq
3cd9172f7a Graphics: Make use of shader binding sets 2021-06-16 16:50:00 +02:00