Commit Graph

3680 Commits

Author SHA1 Message Date
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 55b4e47582 Graphics/MaterialInstanceLoader: Add sRGB parameter 2023-10-13 19:56:07 +02:00
SirLynix c2e47501e4 Graphics: Embed new NZSL modules 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 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 078542e44b VulkanRenderer: Improve performance of validation message filtering 2023-10-08 13:25:42 +02:00
SirLynix c02a20457a VulkanRenderer: Fix best usage warning 2023-10-08 13:24:35 +02:00
SirLynix 4723c92a65 Graphics/FrameGraph: Reuse memory when building physical passes 2023-09-10 14:46:09 +02:00
Jérôme Leclercq 5203a4fb49
Fix previous fix 2023-09-08 14:00:52 +02:00
Jérôme Leclercq 18efb2016d
Fix Fletcher16 and CRC64 2023-09-08 13:40:30 +02:00
Jérôme Leclercq e8ddac4964
Fix CRC32 2023-09-08 09:58:05 +02:00
SirLynix 85d13ae436 Fix wrong commit 2023-09-08 09:14:13 +02:00
SirLynix 21680171a2 Replace GetPlatformEndianness() by PlatformEndianness constexpr
from nazarautils
2023-09-08 09:13:04 +02:00
SirLynix a3bf80a805 Utility/PixelFormat: Fix a bunch of conversions 2023-09-08 09:10:38 +02:00
SirLynix 1009b296a1 Update for latest nazarautils 2023-09-08 09:10:22 +02:00
SirLynix aef8b01f15 Math/Box: Rename FromExtends to FromExtents 2023-09-08 09:06:26 +02:00
SirLynix 5f8b7b361e Renderer/CommandBuffer: Add support for InsertDebugLabel 2023-09-06 13:24:31 +02:00
SirLynix 07d3ccd75d Graphics/UberShader: Log uber-shader compilation errors 2023-09-06 13:23:49 +02:00
SirLynix 7e93666224 Graphics: Give debug names to buffers 2023-09-06 13:23:07 +02:00
SirLynix 1b9c19fd78 Minor fixes 2023-08-31 18:01:59 +02:00
SirLynix b1487a04fd Graphics/FrameGraph: Add support for texture arrays 2023-08-31 18:00:58 +02:00
SirLynix 2a41afa5af VulkanRenderer: Rewrite errors 2023-08-31 17:57:43 +02:00
SirLynix 51e0876bed Renderer/RenderDeviceInfo: Ensure storage/uniform buffer alignment is a power of two 2023-08-31 17:55:15 +02:00
SirLynix d4b2cede15 Fix compilation of FFMpeg plugin/emscripten/ShaderNode 2023-08-24 17:58:49 +02:00
SirLynix f7df4f56b4 Widgets/RichTextAreaWidget: Fix backspace 2023-08-24 17:47:41 +02:00
SirLynix 557da10dc6 Rework TextDrawer interface 2023-08-24 17:47:20 +02:00
SirLynix 9579eba43d Widgets/BaseWidget: Fix warning in release 2023-08-24 08:42:37 +02:00
SirLynix ad738a2803 Core/StringExt: Add IterateOnCodepoints to remove std::u32string allocations 2023-08-24 08:42:25 +02:00
SirLynix bd53245f42 Core/StringExt: Don't pass string_view by ref
https://quuxplusone.github.io/blog/2021/11/09/pass-string-view-by-value/
2023-08-24 08:23:14 +02:00
SirLynix 1b7a89213d Widgets: Fix manually hidden entities being incorrectly shown when widget itself is shown 2023-08-24 07:54:33 +02:00
SirLynix 98c0a47dcc Widgets/TextAreaWidgets: Keep selections active (and visible) when losing focus 2023-08-23 17:56:36 +02:00
SirLynix 8f0890f719 Widgets: Fix new line selection not being bound to scissor box 2023-08-23 17:33:59 +02:00
SirLynix 66f7e4b6ad Core/SignalHandlerAppComponent: Fix warning 2023-08-17 18:05:03 +02:00
SirLynix ae62e1f6c9 Network/WebService: Make Pool return a boolean indicating if a request finished 2023-08-17 18:04:12 +02:00
SirLynix 0989a25a99 Core/SignalHandlerAppComponent: Fix "failed to install signal handlers" warning popping out even if it worked 2023-08-16 18:18:33 +02:00
SirLynix 49adcd7b81 VulkanRenderer/Loader: Try to load other vulkan libs 2023-08-16 18:12:26 +02:00
SirLynix f2fc02cbd4 Core/ErrorFlags: Turn this class into an inline class 2023-08-16 18:11:18 +02:00
SirLynix ab8bac2575 Use fmt store instead of ToString fallback
Thanks to @jonathanpoelen for the idea
2023-08-15 01:10:01 +02:00
SirLynix a741672a51 Allow error message to be formatted 2023-08-15 01:10:01 +02:00
SirLynix e8620894f7 Renderer: Expose present mode and allow to query/set it 2023-08-13 18:16:03 +02:00
SirLynix 7e54b19eb5 Fix unity compilation 2023-08-12 14:08:48 +02:00
SirLynix 68ce2b2d00 ChipmunkPhysics2D/PhysWorld2D: Change default step size to 1 / 120 2023-08-12 12:23:11 +02:00
SirLynix 887bd875f7 Remove unused headers 2023-08-12 12:22:27 +02:00
SirLynix 689ea06fe1 ChipmunkPhysics2D/Constraint2D: Fix leak and implement single body constraints
Also move anchors to world space
2023-08-12 12:12:20 +02:00