SirLynix
8efebef26c
Graphics/UberShader: Replace missing UInt32 by the new OptionHash using
2023-12-17 21:07:58 +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
b7bdc74f3f
Graphics/SpotLight: Add UpdateAngles method
2023-12-17 15:59:53 +01:00
SirLynix
0137bd1871
Graphics/RenderTextureBlit: Fix default MemoryAccess
2023-12-03 15:29:54 +01:00
Jérôme Leclercq
32d227628c
Integrate render target handling in frame graphs ( #411 )
...
* Graphics: Integrate RenderTarget in FrameGraph
- This handles the blit to texture/swapchain in the FrameGraph and fixes RenderTextureBlit
- Dummy attachments were added to the FrameGraph class to handle link without texture (used to setup a dependency between two passes with no texture)
- FramePass now supports custom access/layout/usage for inputs
* Graphics/RenderTarget: Allow to set any RenderTarget as output
2023-11-28 21:00:57 +01:00
SirLynix
1ac992b5c7
Graphics: Add Billboard support
2023-11-25 15:52:58 +01:00
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
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
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
5a14808a57
Minor fixes
2023-11-17 11:58:03 +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
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