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
SirLynix
f5df12e740
JoltPhysics3D: Update for v4
2023-11-15 08:08:45 +01:00
SirLynix
ddf0dc88bc
Minor fixes
2023-11-15 08:07:06 +01:00
SirLynix
5e643bca7b
Fix MinGW compilation
2023-11-15 08:06:50 +01:00
SirLynix
cf222941ec
Utility/Image: Fix functions taking a Color
2023-11-14 15:41:59 +01:00
SirLynix
a4b10749f7
C++20 fixes
2023-11-14 15:40:48 +01:00
Lynix
e5789d1749
Switch Nazara to C++20
2023-11-14 14:24:28 +01:00
SirLynix
f0fd3b232c
Core: Add generic ParameterConfig
...
This still needs to be improved
2023-11-12 12:54:34 +01:00
SirLynix
86e26008b3
Minor fixes
2023-11-12 12:51:56 +01:00
SirLynix
949573636d
Graphics: RegisterDebugDrawPipelinePass
2023-11-06 21:30:49 +01:00
SirLynix
db58921cc4
Graphics/PipelinePassList: Add support for attachment proxy
2023-11-06 21:30:49 +01:00
SirLynix
578240cd6f
Graphics/PipelinePassListLoader: Replace Result by exception to improve readability
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
4995364418
Graphics/UberShader: Don't set debug level to regular by default
2023-11-04 17:55:26 +01:00
SirLynix
5382dd3ccd
Graphics/UberShader: Hotreload shader when an imported module is modified
2023-11-04 17:55:04 +01:00
SirLynix
fa54f1a3e4
Graphics/Material: Fix error message when module is not init
2023-11-04 17:52:47 +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
a803a9cff4
Core: Update UnicodeData
2023-11-02 08:27:10 +01:00
SirLynix
2c6b507e62
Graphics/AbstractViewer: Make Project/Unproject const
2023-10-30 18:36:41 +01:00
SirLynix
6a9177a109
Graphics/ShadowMapping: Replace bias by a position scale
...
Inspired by Godot (see https://github.com/godotengine/godot-proposals/issues/4517 )
2023-10-21 19:31:07 +02:00
SirLynix
b04d7662ce
Graphics/SlicedSprite: Fix UV inversion when texture coordinates don't take the whole texture
2023-10-21 19:26:26 +02:00
SirLynix
a46e61e2e5
Widgets/SimpleWidgetStyles: Fix ImageButtonWidget pressed color
2023-10-21 19:26:26 +02:00
SirLynix
da2b49d719
OpenGLRenderer: Fix depthBias constant and slope factors inversion
2023-10-21 19:26:26 +02:00
SirLynix
ca4f1b49ac
Graphics/Shaders: Adjust PBR ambient
2023-10-14 16:44:36 +02:00
SirLynix
f0d809c22a
Graphics/ForwardFramePipeline: Fix depth-prepass
2023-10-14 16:43:58 +02:00
SirLynix
4fc5f68f3d
Graphics/ViewerInstance: Initialize far and near planes
2023-10-14 14:46:49 +02:00
SirLynix
d92a307fb8
Graphics/Shader: Add light shadow support to PBR
2023-10-14 14:46:49 +02:00
SirLynix
ceedfbabaf
Graphics/Shaders: Move shadow factor to a separate file
2023-10-14 14:46:49 +02:00
SirLynix
c191cb227b
Fix compilation
2023-10-14 14:46:49 +02:00
SirLynix
d6a99da2ea
Graphics/Graphics: Enable depth-clamp on shadow pass if supported
2023-10-14 14:46:49 +02:00
SirLynix
35414ec5d8
Use Nz::Bitset<> for-range
2023-10-14 14:46:49 +02:00
SirLynix
addbb98671
Graphics/Shaders: Add support for DistanceDepth (aka point-light shadow maps)
2023-10-14 14:46:49 +02:00
SirLynix
b3a43eb5ed
Graphics: Improve directional light stabilization and split
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
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
SirLynix
65a1c195ac
ChipmunkPhysics2D/RigidBody2D: Add ToLocal/ToWorld methods
2023-08-12 12:11:24 +02:00
SirLynix
4642ea778c
ChipmunkPhysics2D/PhysicsSystem: Add query functions wrappers
2023-08-10 12:05:31 +02:00