SirLynix
ef0a34b7b1
Graphics: Add FramePipelinePassFlag to fix shadows
2023-11-06 21:30:49 +01:00
SirLynix
8fb6ea728d
Graphics: Add data-driven pipeline passes
...
Fix compilation
2023-11-06 21:30:49 +01:00
SirLynix
5382dd3ccd
Graphics/UberShader: Hotreload shader when an imported module is modified
2023-11-04 17:55:04 +01:00
SirLynix
c80e06226f
Graphics/Graphics: Create default depth texture in preferred depth format
2023-11-04 17:52:27 +01:00
SirLynix
4b8a475bbd
Split error macro into two versions (format vs non-formating) to allow format checking at compile-time
2023-11-02 15:18:03 +01:00
SirLynix
2c6b507e62
Graphics/AbstractViewer: Make Project/Unproject const
2023-10-30 18:36:41 +01:00
SirLynix
f7e9ee9f60
Graphics/Enums: Add GammaCorrection to FramePipelineAllExtraPasses
2023-10-14 16:43:30 +02:00
SirLynix
c191cb227b
Fix compilation
2023-10-14 14:46:49 +02:00
SirLynix
413dd2ce71
Graphics/FrameGraph: Fix parameter type
2023-10-14 14:46:49 +02:00
SirLynix
96504a0a21
Graphics/FramePipeline: Fix UpdateViewerRenderMask name (=> RenderOrder)
2023-10-14 14:46:49 +02: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
a08850946a
Graphics/FrameGraph: Fix texture 2D array reuse
2023-10-14 14:46:49 +02:00
SirLynix
e10f15243d
Graphics: Replace runtime structs offsets by compile-time struct offsets
...
now that nzsl::FieldOffsets is constexpr this is possible
2023-10-14 14:46:49 +02:00
SirLynix
929b599337
Graphics/ViewerData: Add near and far plane
2023-10-14 14:46:49 +02:00
SirLynix
2a3da7384d
Graphics/RenderSystem: Add support for external swapchains
2023-10-13 20:17:31 +02:00
SirLynix
9066fe78bb
Graphics/Camera: Allow to enable/disable passes without re-specifying
2023-10-13 19:56:07 +02:00
SirLynix
d40b8af68d
Graphics: Add gamma correction
2023-10-13 19:56:07 +02:00
SirLynix
b09b4d2419
Graphics: Add a way to set which passes are enabled in a frame pipeline
...
This will be replaced soon with a better system
2023-10-08 23:44:24 +02:00
SirLynix
7ef9a3b93c
Graphics/DebugDrawPipelinePass: Remove unused headers
2023-09-10 14:54:17 +02:00
SirLynix
b1487a04fd
Graphics/FrameGraph: Add support for texture arrays
2023-08-31 18:00:58 +02:00
SirLynix
a741672a51
Allow error message to be formatted
2023-08-15 01:10:01 +02:00
SirLynix
de002adbb1
Graphics/GraphicsComponent: Fix clear clearing other entries
2023-08-09 18:01:01 +02:00
SirLynix
cf6fdf258f
Graphics: Add new functions to get default material types/presets
2023-08-08 18:17:58 +02:00
SirLynix
fd73d62adf
Graphics/RenderSystem: Fix skeleton not being used when added after graphics component
2023-08-06 10:14:01 +02:00
SirLynix
ee361fc48c
Graphics/GraphicsComponent: Fix GetAABB() with no renderable
2023-08-06 10:12:35 +02:00
SirLynix
816d9d1174
Allow to setup/override module configuration from commandline
2023-07-30 12:44:43 +02:00
SirLynix
f2bc1bff7a
Update for latest nazarautils update
2023-07-17 19:05:15 +02:00
SirLynix
4f3542356d
Graphics/RenderSystem: Handle visibility immediatly
...
This fixes an issue when rendermask/scissor box is updated right after making an entity visible (e.g. widgets)
2023-07-02 14:04:00 +02:00
SirLynix
b2538028b4
Math/Plane: Rename Distance method to SignedDistance
2023-06-22 17:56:18 +02:00
SirLynix
21503ffaa7
Graphics/MaterialPipeline: Use FixedVector instead of std::vector
2023-06-05 18:05:41 +02:00
SirLynix
2886a2e0c0
Rename EnumMap to EnumArray after nazarautils update
2023-05-30 13:49:19 +02:00
SirLynix
cff918f6a3
Graphics/ForwardFramePipeline: Fix unregister + register the same renderable pointer not invalidating rendering
...
This can happen with ECS components which are mostly stable in memory, when destroying a graphics entity and recreating it (even with a different mesh) its pointer may not change due to memory recycling, especially on simple scenes.
A UInt8 generation counter helps prevents this
2023-05-30 13:34:41 +02:00
SirLynix
dfe6b2ddcf
Make use of the new EnumMap class
2023-05-30 12:32:37 +02:00
SirLynix
aa441354ec
Graphics/GraphicsComponent: Fix GetAABB
2023-05-20 21:31:49 +02:00
SirLynix
bbbd3f88c1
Core: Add DisabledComponent (to temporary disable an entity)
2023-05-07 22:43:48 +02:00
SirLynix
5e5a740f24
Graphics: Add non-const GetShaderModuleResolver
2023-05-01 18:44:01 +02:00
SirLynix
dcc23ef7c2
Graphics/Tilemap: Fix layer update when enabling tiles
...
Thanks to @jube for noticing!
2023-05-01 10:37:14 +02:00
SirLynix
97f1c2c56c
Refactor xmake.lua and make some warnings as errors
2023-04-30 21:11:30 +02:00
SirLynix
3cf50221c5
Graphics/GraphicsComponent: Add constructor taking an instanced renderable
2023-04-05 08:51:58 +02:00
SirLynix
0656b388bc
Graphics/GraphicsComponent: Add GetAABB method
2023-04-04 08:25:30 +02:00
SirLynix
6fd90d63ef
Fix check-files
2023-03-21 13:21:49 +01:00
SirLynix
9b4d297c04
Update includes for new NazaraUtils version
2023-03-19 13:01:56 +01:00
SirLynix
88b6ff63b7
Graphics/AbstractViewer: Add Project & Unproject methods
2023-03-14 18:07:03 +01:00
SirLynix
488f3ca6ef
Minor fixes
2023-03-14 18:06:14 +01:00
SirLynix
99c8027fd0
Remove .inl inclusion of their .hpp files
...
It has no real purpose and is breaking Clang parsing
2023-03-10 13:33:10 +01:00
SirLynix
3edffa8399
Graphics/MaterialInstance: Add UpdatePassesStates
2023-03-09 17:51:03 +01:00
SirLynix
55f2937678
Graphics/GraphicalMesh: Add AABB
2023-03-09 17:50:38 +01:00
SirLynix
a96722d4ec
Graphics/Tilemap: Fix UpdateAABB warning
2023-03-09 17:49:25 +01:00
SirLynix
d7dda716fe
Warning fixes
2023-03-05 18:01:20 +01:00
SirLynix
36d7e98299
Graphics/PointLight: Fix bounding volume
2023-02-26 19:04:52 +01:00