Commit Graph

963 Commits

Author SHA1 Message Date
SirLynix 63c526cecc Core/Node: Refactor interface
- Removed overloads taking multiple scalars
- Removed CoordSys parameter (functions exists in two sets, local and global)
2024-02-19 09:44:01 +01:00
Lynix 67904abd29 Replace Warning string concatenation by WarningFmt 2024-02-13 17:17:04 +01:00
SirLynix e64c2b036e Remove Utility module and move its content to Core and TextRenderer modules 2024-02-11 22:48:38 +01:00
SirLynix 18b6d14670 Graphics/Model: Add mesh callback parameter
It allows to query/save/update the mesh before it's used to create a GraphicalMesh and disposed of
2024-02-07 15:56:16 +01:00
SirLynix 5a46ebda36 Graphics/PropertyHandler: Warn if an option if set but doesn't exist in material 2024-02-07 15:55:14 +01:00
SirLynix 37e90ecea9 Graphics/Materials: Fix normal maps for PhongMaterial 2024-02-07 15:53:09 +01:00
Lynix 2b88f50c21 Minor improvements 2024-01-29 18:34:46 +01:00
SirLynix 22a047b3b1 Add tab outside of indent check 2024-01-26 14:38:59 +01:00
SirLynix 6757de1be8 Add end-of-line spaces checker 2024-01-26 10:43:00 +01:00
SirLynix 9ada93b995 Remove spaces before line feed 2024-01-25 14:38:06 +01:00
SirLynix bb3b28279b Rename AppComponent classes (AppEntitySystemComponent => EntitySystemAppComponent) 2024-01-24 16:50:04 +01:00
SirLynix db83413536 Graphics: Fix issue when unregistering viewer then adding it again before resources are cleaned 2024-01-14 16:01:55 +01:00
SirLynix 6a4d3008c9 Fix compilation 2024-01-05 11:37:45 +01:00
SirLynix 2bdd6f9351 Graphics/Model: Add model loader 2024-01-05 11:24:25 +01:00
SirLynix 201ac025e2 Graphics: Fix compilation 2024-01-05 11:23:55 +01:00
SirLynix e8a362b695 Graphics/MaterialInstance: Add Build method 2024-01-04 17:47:54 +01:00
SirLynix f46f0da12a Graphics/Shaders: Fix point and spot lights in PhysicallyBasedMaterial 2024-01-04 00:03:32 +01:00
SirLynix 5a96ab3bf7 Graphics/PipelinePassList: Add AddPass overload taking a pass name 2024-01-03 18:18:09 +01:00
SirLynix 14f51b31ca Fix a bunch of warnings 2024-01-03 18:17:52 +01:00
SirLynix d2e2c075b4 Update copyright year 2024-01-02 12:02:14 +01:00
Jérôme Leclercq 79ec135af7
Optimize out a lot of std::string construction and allocations (#415)
Update CommandLineParameters.hpp

Update CommandLineParametersTests.cpp

Update WebContext.hpp

xmake check-files -f

Fix MaterialPassRegistry
2023-12-30 14:50:57 +01:00
SirLynix 0d3a9547fc Graphics/PipelinePassList: Fix error introduced by 9fb308a531 2023-12-26 12:41:48 +01:00
Lynix e1b3832643 Minor cleanup 2023-12-25 21:02:24 +01:00
Lynix 9fb308a531 Graphics/FramePipelinePass: Replace pointer + size by span 2023-12-25 20:05:45 +01:00
SirLynix 496800fc5c Graphics/UberShader: throw an exception if shader module couldn't be resolved 2023-12-21 00:08:30 +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 e8c594e325 Graphics/ForwardFramePipeline: Fix viewers ordering 2023-12-03 15:45:44 +01:00
SirLynix 27bc5d48e9 Graphics/ForwardFramePipeline: Fix crash with multiple viewers on a single target 2023-12-03 15:31:32 +01:00
Lynix dc9c1e14c4 Allow to use env vars to override module configs 2023-12-02 13:56:23 +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 079f153640 Minor fixes 2023-11-28 20:05:09 +01:00
SirLynix 2622951144 Minor fixes 2023-11-26 11:25:52 +01:00
SirLynix 1ac992b5c7 Graphics: Add Billboard support 2023-11-25 15:52:58 +01:00
Lynix fb425e310f Fixed compilation 2023-11-22 00:13:37 +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 5f796666f0 Minor fixes 2023-11-21 22:07:00 +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 6268acbf04 Graphics: Fix compilation with clang 2023-11-21 08:05:35 +01:00
Lynix c93a5f1975 Graphics: Fix texture reuse when backbuffer is a proxy 2023-11-21 08:05:26 +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 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 674610e9f8 Graphics/BakedFrameGraph: Don't resize fixed-size textures
Fixed-size attachments such as shadows maps were recreated on resize (oops)
2023-11-20 00:01:24 +01:00
SirLynix 2ef9cd0128 Graphics/ForwardFramePipeline: Optimize out merge pass when only one viewer renders to a target 2023-11-17 17:00:08 +01:00