Commit Graph

57 Commits

Author SHA1 Message Date
Wojtek Figat
5e6f33ff1e Fix stability of Global Surface Atlas to smooth objects culling buffer capacity over time 2023-03-01 15:50:40 +01:00
Wojtek Figat
3b797ab1dc Prevent artifacts in Global Surface Atlas when close to its capacity 2023-02-19 17:36:44 +01:00
Wojtek Figat
679757942f Fix GPU Buffer Map/Unmap pair to prevent stall if map fails on DX11
#942
2023-02-17 16:28:48 +01:00
Wojtek Figat
3636cd6940 Fix render target memory leak in Global Surface Atlas debug 2023-02-09 13:30:27 +01:00
Wojtek Figat
c46ea56af2 Rename DepthTestEnable to DepthEnable in Graphics PSO to match actual logic 2023-01-31 14:04:00 +01:00
Wojtek Figat
f127bbebe1 Refactor enum flags with __underlying_type and new EnumHasAnyFlags/EnumHasAllFlags
Fixes #832
Closes #886
2023-01-15 12:44:39 +01:00
Wojciech Figat
a7e428a21c Merge branch 'master' into 1.5
# Conflicts:
#	Content/Shaders/GI/DDGI.flax
#	Content/Shaders/GI/GlobalSurfaceAtlas.flax
#	Content/Shaders/TAA.flax
#	Content/Shaders/VolumetricFog.flax
#	Source/Editor/CustomEditors/Editors/ActorTagEditor.cs
#	Source/Engine/Core/Config/GraphicsSettings.cpp
#	Source/Engine/Engine/PostProcessEffect.cs
#	Source/Engine/Graphics/GPUResourcesCollection.cpp
#	Source/Engine/Graphics/GPUResourcesCollection.h
#	Source/Engine/Graphics/PostProcessBase.h
#	Source/FlaxEngine.Gen.cs
2023-01-10 15:37:55 +01:00
Wojciech Figat
9626e9bbb6 Update copyright year 2023-01-10 15:29:37 +01:00
Wojciech Figat
0595f38fe4 Fix threading issues with GPU buffers mapping 2023-01-09 22:41:06 +01:00
Wojciech Figat
1cf6c5233e Refactor DDGI probes to use variable ray count depending on the probe location relative to the view frustum 2022-12-15 17:33:44 +01:00
Wojciech Figat
ee019510ca Remove old RT1_FloatRGB and RT2_FloatRGB in favor pooled render targets 2022-12-13 11:52:51 +01:00
Wojciech Figat
b33ce8d264 Add pooled render targets naming for easier GPU memory usage debugging 2022-12-09 11:26:35 +01:00
Wojtek Figat
98c29c4a4e Optimize compilation time 2022-12-03 10:42:58 +01:00
Wojtek Figat
9c7da16c1a Add multi-threaded scene rendering with Job System 2022-11-06 20:44:43 +01:00
Wojtek Figat
f37ed16270 Optimize GPUBuffer on D3D11 to not stall CPU on reading staging readback buffer 2022-11-01 21:31:42 +01:00
Wojtek Figat
a0a3457733 Add more profiling data for Tracy 2022-11-01 15:46:21 +01:00
Wojtek Figat
8a98f466c5 Use named events for GPU passes for CPU profiling usability 2022-11-01 12:50:17 +01:00
Wojtek Figat
eb52d333ae Refactor scene rendering to use batched culling for main view and shadow projections 2022-10-28 17:53:21 +02:00
Wojtek Figat
e217d5e79b Refactor scene rendering to separate drawable actors 2022-10-28 17:53:21 +02:00
Wojciech Figat
d8c224112b Add Global Surface Atlas rendering for Foliage 2022-08-11 11:33:41 +02:00
Wojciech Figat
6a1378ebdb Fix Global Surface Atlas drawing of objects that are hidden in GBuffer pass but should be visible for GI 2022-08-09 14:37:29 +02:00
Wojtek Figat
a6e9abfceb Add UseAlpha to RenderBuffers for pass-though renderer with alpha channel 2022-08-01 22:58:22 +02:00
Wojciech Figat
a2677a25a9 Improve env probes rendering if DDGI is enabled 2022-07-15 16:13:36 +02:00
Wojciech Figat
0ba1c124f7 Add Global Surface Atlas missing surface data debug visualization 2022-07-08 16:43:25 +02:00
Wojciech Figat
4007c5e29c Add BounceIntensity to Global Illumination settings 2022-06-30 15:27:31 +02:00
Wojciech Figat
27515585db Improve Global Surface Atlas objects surfaces sampling 2022-06-30 15:14:43 +02:00
Wojciech Figat
9fa2a5ff93 Fix compilation 2022-06-29 09:14:16 +02:00
Wojtek Figat
27d266546e Various fixes and improvements for large worlds rendering 2022-06-28 20:26:01 +02:00
Wojtek Figat
b1640515c4 Merge remote-tracking branch 'origin/gi'
# Conflicts:
#	Source/Engine/Renderer/GlobalSignDistanceFieldPass.cpp
2022-06-28 18:16:28 +02:00
Wojciech Figat
fe6226b276 Minor tweaks 2022-06-28 16:07:34 +02:00
Wojciech Figat
df691e62f8 Various improvements to Global Surface Atlas sampling 2022-06-28 14:10:01 +02:00
Wojciech Figat
443ce106e2 Optimize Global Surface Atlas objects lighting to be less frequent with caching for static lights and objects 2022-06-28 10:38:51 +02:00
Wojciech Figat
d5a529e00a Optimize Global Surface Atlas objects culling to cache up to 32 objects locally per-thread 2022-06-27 16:31:39 +02:00
Wojciech Figat
d8e79101e7 Refactor Global Surface Atlas to not rewrite objects data and use indirection for faster culling 2022-06-27 16:07:54 +02:00
Wojtek Figat
f3bd0e469c Fixes 2022-06-20 18:14:38 +02:00
Wojciech Figat
9cbaeb21f5 Add GI probes spacing setting 2022-06-20 10:09:09 +02:00
Wojciech Figat
41a58f3f2c Merge remote-tracking branch 'origin/master' into gi 2022-06-20 08:26:06 +02:00
Wojciech Figat
2e06d1ce2a Refactor Global SDF to use a single texture for all cascades 2022-06-17 10:41:04 +02:00
Wojtek Figat
9ba117cde3 Refactor OrientedBoundingBox to use Transform for transformation instead of Matrix (for large worlds) 2022-06-16 10:51:59 +02:00
Wojciech Figat
78afe60343 Add Global Surface Atlas resolution setting 2022-06-13 12:38:01 +02:00
Wojtek Figat
e43515f653 Merge remote-tracking branch 'origin/gi' into large-worlds
# Conflicts:
#	Source/Engine/Graphics/PostProcessSettings.cpp
#	Source/Engine/Level/Actors/SkyLight.cpp
#	Source/Engine/Renderer/GBufferPass.cpp
#	Source/Engine/Renderer/GI/GlobalSurfaceAtlasPass.cpp
#	Source/Engine/Renderer/GlobalSignDistanceFieldPass.cpp
#	Source/Engine/Renderer/GlobalSignDistanceFieldPass.h
#	Source/Engine/Renderer/RenderList.h
2022-06-13 00:46:33 +02:00
Wojtek Figat
a881c90b2e Refactor engine to support double-precision vectors 2022-06-13 00:40:32 +02:00
Wojciech Figat
d4839b9c78 Add Global Illumination options to PostFx Settings 2022-06-10 18:48:17 +02:00
Wojciech Figat
f685c67275 Add Global SDF quality setting and support for variable cascades count and resolution 2022-06-10 14:30:40 +02:00
Wojciech Figat
6a74ebd62e Add support for cascades to DDGI 2022-06-09 08:55:45 +02:00
Wojciech Figat
31d9802cf4 Add IndirectLightingIntensity support for lights in Global Surface Atlas 2022-06-06 10:28:39 +02:00
Wojciech Figat
d05c09a33d Improve GI quality 2022-06-02 18:13:15 +02:00
Wojciech Figat
641d04a50e Improve GI quality 2022-05-31 15:52:19 +02:00
Wojciech Figat
d0a6f82cc2 Fix updating Global Surface Atlas for the static object that rendering state was modified 2022-05-27 12:07:02 +02:00
Wojciech Figat
eb6050cf27 Improve probes relocation algorithm to reduce visual artifacts due to probes flickering 2022-05-27 11:44:39 +02:00