Commit Graph

3865 Commits

Author SHA1 Message Date
SirLynix
81c5322331 Widgets/BoxLayout: Try to fix widget layout 2023-12-04 09:49:48 +01:00
SirLynix
0c29bce3d8 Utility/SubMesh: Allow tangent generation with 3D texcoords 2023-12-04 09:46:31 +01:00
Jérôme Leclercq
876023ffa9 Core: Fix use of std::bit_cast 2023-12-04 00:38:10 +01:00
SirLynix
f75a00efe2 Audio: Fix loading of OpenAL extensions (pointers are context-local) 2023-12-04 00:23:39 +01:00
SirLynix
6059f608c0 Minor improvements 2023-12-04 00:22:36 +01:00
SirLynix
f7f31431cb JoltPhysics3D/JoltRigidBody3D: Fix IsSleeping 2023-12-04 00:21:51 +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
SirLynix
73fc061412 Audio/Music: Remove unnecessary code
Play() blocks until the thread (and source) has started
2023-12-03 15:30:39 +01:00
Lynix
4ee4092bba Cleanup includes 2023-12-02 13:56:24 +01:00
Lynix
dc9c1e14c4 Allow to use env vars to override module configs 2023-12-02 13:56:23 +01:00
Lynix
5472514f4b Core: Add EnvironmentVariables 2023-12-02 13:56:23 +01:00
Lynix
ba7d2221d0 Audio/SourceEmitter: Throw exception if audio source couldn't be created 2023-12-02 13:56:23 +01:00
Lynix
36dcc03c11 Audio/OpenALDevice: Improve error when buffer/source creation fails 2023-12-02 13:56:06 +01:00
Lynix
150787971a Audio/Music: Fix possible data-race in GetPlayingOffset 2023-11-29 22:26:19 +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
e6c5d95278 JoltPhysics3D/RigidBody: Fix mass being overriden by Jolt 2023-11-26 21:30:27 +01:00
SirLynix
962a2e71c7 Renderer/Texture: Allow to keep the texture format in TextureViewInfo 2023-11-26 21:29:49 +01:00
SirLynix
00935efbe0 OpenGLRenderer/Texture: Fix update of non-2D image types 2023-11-26 21:29:19 +01:00
SirLynix
f09175228d JoltPhysics3D: Skip the rigid body update if no physics step took place
This improves the framerate if FPS > physics rate
2023-11-26 21:28:40 +01:00
SirLynix
72182327dd Core/PrimitiveList: Rework and inline the class 2023-11-26 21:27:24 +01:00
SirLynix
e8eebc1dfc Core/ParameterList: Take advantage of movement 2023-11-26 14:01:23 +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
4cbb5b91a3 OpenGLRenderer/FboFramebuffer: Fix texture view emulation with attachment != color0 2023-11-22 14:09:05 +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
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
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
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
592845e353 Graphics: Fix default atlas check 2023-11-16 09:00:33 +01:00
SirLynix
b7aca4b22a Graphics: Update material shaders 2023-11-16 09:00:21 +01:00