Lynix
1e81b38c0f
Graphics: Replace RenderFrame by RenderResources
...
This changes makes the whole rendering independent from the RenderFrame acquired from the Swapchain.
This may allow to do offscreen rendering (= without swapchain), or multi-window rendering in the future
2023-11-21 23:33:18 +01:00
Lynix
d7d5c09428
Graphics/FrameGraph: Remove SwapchainFactors attachment size and fully handle multiple viewer sizes
2023-11-21 23:02:07 +01:00
Lynix
dca8555d34
Fix compilation
2023-11-21 22:18:20 +01:00
Lynix
80cab34088
Graphics: Add RenderTextureBlit
2023-11-21 22:06:44 +01:00
Lynix
f3aacc0cd2
Graphics/FrameGraph: Rename AddBackbufferOutput to AddOutput
2023-11-21 22:06:24 +01:00
Lynix
6a19ab7ba2
Graphics/FrameGraph: Rename BindAttachmentToExternalTexture
2023-11-21 20:46:22 +01:00
Lynix
a018701251
Graphics/ForwardFramePipeline: Fix render size mixup
2023-11-21 19:41:08 +01:00
Lynix
c352e78e11
Compilation fixes
2023-11-21 07:44:44 +01:00
SirLynix
eddd4e992b
Fix previous commit
2023-11-20 23:19:41 +01:00
SirLynix
7991071e41
Graphics/RenderTexture: Remove no longer used config
2023-11-20 23:12:20 +01:00
SirLynix
448cf3b86e
Math/Ray: Fix Intersect(Box)
2023-11-20 23:00:29 +01:00
SirLynix
938ba09d45
Graphics: Rework RenderTargets
...
- RenderTarget have been moved to the Graphics module and are now lightweight objects between the target of rendering (swapchain or texture)
- RenderTexture no longer require a blit between the framegraph texture and the target texture (the target texture is now directly rendered onto using a new feature of the framegraph)
- ForwardFramePipeline viewers are now properly ordered by render order
2023-11-20 23:00:06 +01:00
SirLynix
d06f9bda89
Fix compilation again
2023-11-20 12:36:34 +01:00
SirLynix
aaf3d97954
Graphics: Add RenderTexture class
2023-11-20 12:36:34 +01:00
Lynix
4f08d0b3c1
Fix compilation
2023-11-20 10:16:00 +01:00
SirLynix
97d5640967
Renderer: Blit texture to window instead of using a full renderpass
...
This may improve performance and allow for render targets to customize how they blit the final texture (allowing for render-to-texture)
2023-11-17 16:59:31 +01:00
SirLynix
f2e77fb8a5
Rename Nz::Functor to Nz::AbstractFunctor
2023-11-17 13:19:21 +01:00
SirLynix
5a14808a57
Minor fixes
2023-11-17 11:58:03 +01:00
SirLynix
ddc8cc6797
Core: Rework ParameterFile
...
Improve parsing and usage
2023-11-17 11:57:05 +01:00
SirLynix
5e643bca7b
Fix MinGW compilation
2023-11-15 08:06:50 +01:00
Lynix
e5789d1749
Switch Nazara to C++20
2023-11-14 14:24:28 +01:00
Lynix
592780562e
Try to fix MinGW compilation error
...
It shouldn't make a difference since static constexpr already implies inline but we're talking about MinGW
2023-11-12 22:31:01 +01:00
SirLynix
f0fd3b232c
Core: Add generic ParameterConfig
...
This still needs to be improved
2023-11-12 12:54:34 +01:00
SirLynix
86e26008b3
Minor fixes
2023-11-12 12:51:56 +01:00
SirLynix
db58921cc4
Graphics/PipelinePassList: Add support for attachment proxy
2023-11-06 21:30:49 +01:00
SirLynix
886991f86d
Graphics: Add PipelinePassList loader (able to load from a file)
...
Fix compilation
2023-11-06 21:30:49 +01:00
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
4749e6ec80
Core: Fix NazaraAssert in release mode
2023-11-02 15:49:51 +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
8fb53f467b
Core/ResourceLoader: Fix format error
2023-11-02 08:27:37 +01:00
SirLynix
2c6b507e62
Graphics/AbstractViewer: Make Project/Unproject const
2023-10-30 18:36:41 +01:00
Lynix
bb9f907691
Math/Ray: Fix return 0 to return false
2023-10-25 20:22:29 +02: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
c826b537ab
Math/VectorI: Add Apply static method
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
041be74b9d
Color: Add sRGB <=> Linear conversion methods
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
50c90fd725
Renderer/DebugDrawer: Add DrawBoxCorners
2023-10-08 23:38:03 +02:00