SirLynix
9ada93b995
Remove spaces before line feed
2024-01-25 14:38:06 +01:00
SirLynix
d2e2c075b4
Update copyright year
2024-01-02 12:02:14 +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
Lynix
f3aacc0cd2
Graphics/FrameGraph: Rename AddBackbufferOutput to AddOutput
2023-11-21 22:06:24 +01:00
Lynix
c93a5f1975
Graphics: Fix texture reuse when backbuffer is a proxy
2023-11-21 08:05:26 +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
f6c417ba8f
Fix compilation
2023-11-20 12:36:34 +01:00
SirLynix
aaf3d97954
Graphics: Add RenderTexture class
2023-11-20 12:36:34 +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
a08850946a
Graphics/FrameGraph: Fix texture 2D array reuse
2023-10-14 14:46:49 +02:00
SirLynix
98fe974fc8
Fix some Vulkan errors
...
Depth buffers were not tagged as output on passes writing on it
Handle holes in clear values
2023-10-08 13:47:15 +02:00
SirLynix
4723c92a65
Graphics/FrameGraph: Reuse memory when building physical passes
2023-09-10 14:46:09 +02:00
SirLynix
b1487a04fd
Graphics/FrameGraph: Add support for texture arrays
2023-08-31 18:00:58 +02:00
SirLynix
a578b061b4
Graphics/FrameGraph: Fix bug introduced in 97f1c2c56c
2023-05-01 17:05:07 +02:00
SirLynix
97f1c2c56c
Refactor xmake.lua and make some warnings as errors
2023-04-30 21:11:30 +02:00
SirLynix
9b4d297c04
Update includes for new NazaraUtils version
2023-03-19 13:01:56 +01:00
SirLynix
f98cbcd00a
Copyright year update
2023-01-22 17:41:18 +01:00
SirLynix
f8238a6e6c
Graphics: Implement point-light shadow-mapping
2022-12-08 18:17:13 +01:00
SirLynix
5a57976b4b
Graphics/FrameGraph: Add support for cubemap and slice rendering
2022-12-08 18:17:13 +01:00
SirLynix
d7eab778fb
Graphics/FrameGraph: Add FramePassAttachmentSize enum instead of boolean
2022-12-08 18:17:13 +01:00
SirLynix
e990a320cc
WIP
2022-12-08 18:17:13 +01:00
SirLynix
4a10c1f8fe
Add shadow mapping (wip)
2022-12-08 18:17:13 +01:00
SirLynix
77642cf431
Renderer: Implement and use debug names
2022-12-02 22:46:43 +01:00
SirLynix
2fd2e190b9
FrameGraph: Fix texture pool
2022-11-15 18:01:51 +01:00
Jérôme Leclercq
03e2801dbe
Split engine to packages NazaraUtils and NZSL ( #375 )
...
* Move code to NazaraUtils and NZSL packages
* Reorder includes
* Tests: Remove glslang and spirv-tools deps
* Tests: Remove glslang init
* Remove NazaraUtils tests and fix Vector4Test
* Fix Linux compilation
* Update msys2-build.yml
* Fix assimp package
* Update xmake.lua
* Update xmake.lua
* Fix shader compilation on MinGW
* Final fixes
* The final fix 2: the fix strikes back!
* Disable cache on CI
* The return of the fix™️
2022-05-25 19:36:10 +02:00
SirLynix
ca9854d06a
Graphics/FrameGraph: Fix pipeline barrier from output to input
2022-04-08 13:36:07 +02:00
Jérôme Leclercq
6bd9f1a9e4
Add unity build support
2022-03-15 12:44:21 +01:00
Jérôme Leclercq
99e07e6e1e
Shader: Add module statement
2022-03-14 18:30:55 +01:00
SirLynix
89c7bbf197
Update copyright date
2022-01-01 15:30:09 +01:00
Jérôme Leclercq
5963f4c848
Graphics/FrameGraph: Fix texture pool issue
2021-12-19 18:29:20 +01:00
Jérôme Leclercq
a8fefeb833
Some fixes
2021-12-16 23:11:48 +01:00
Jérôme Leclercq
07199301df
Graphics/FrameGraph: Handle invalidation and flush barriers
2021-12-16 18:29:40 +01:00
Jérôme Leclercq
90ab0e9438
Graphics/FramePass: Add SetReadInput method
2021-12-13 23:44:34 +01:00
Jérôme Leclercq
dfa2a0040a
Graphics/FrameGraph: Add AttachmentProxy
2021-12-13 23:44:14 +01:00
Jérôme Leclercq
4eb96849db
Graphics/FrameGraph: Reuse textures if possible
2021-12-05 16:53:02 +01:00
Jérôme Leclercq
ecd1e43890
Graphics: Add support for multi-viewer rendering (a bit hacky)
2021-11-13 20:08:03 +01:00
Jérôme Leclercq
a02b1952c0
Apply header order fix
2021-10-28 09:53:56 +02: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
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
52ec5d88f0
Graphics/FrameGraph: Fix depth stencil input not being taken into account for graph dependency
2021-08-19 18:47:11 +02:00
Jérôme Leclercq
d2144c8941
Graphics/FrameGraph: Mark subpass deps tilables
2021-06-20 14:12:58 +02:00
Jérôme Leclercq
9ee3a0d6be
DeferredShading: Add bloom
2021-06-01 20:28:19 +02:00
Jérôme Leclercq
6fe7e5b16b
Graphics/FrameGraph: Fix infinite recursion when traversing graph
2021-06-01 16:24:14 +02:00
Jérôme Leclercq
43b73da3f4
Graphics/FrameGraph: Add support for loading a previous output texture
2021-06-01 16:24:00 +02:00
Jérôme Leclercq
c2b61b6732
A lot of fixes
2021-05-28 22:58:40 +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
61dbd91346
Lot of small fixes/improvements
2021-05-14 01:48:47 +02:00