Commit Graph

52 Commits

Author SHA1 Message Date
Wojtek Figat
1e77f3aa5a Optimize DrawBatch for faster sorting 2024-04-12 13:46:20 +02:00
Wojtek Figat
3939444e05 Fix potential issues with shader resources bindings when using custom post processing effect 2024-03-20 12:24:35 +01:00
Wojtek Figat
cf3145273f Fix TAA jitter in post-resolve passes such as editor primitives and debug gizmos 2024-03-19 16:02:50 +01:00
Wojtek Figat
859c420d76 Update year in copyright note 2024-02-26 19:00:48 +01:00
Wojtek Figat
c8dd2c045c Simplify sorting arrays code 2023-12-01 13:57:34 +01:00
Wojtek Figat
98d5769558 Fix performance bug in Development/Release builds due to incorrect draw calls batching (uninitialized memory) 2023-09-28 10:59:09 +02:00
Wojtek Figat
8cd8ae93c3 Add ObjectRadius to DrawCall to properly cull local lights and env probes in Forward Shading 2023-09-20 15:01:02 +02:00
Wojtek Figat
ab51ecddb4 Add RenderBuffers::LinkedCustomBuffers to reuse main game viewport rendered state (eg. GI) in sub-rendered view 2023-02-01 11:05:29 +01:00
Wojtek Figat
5a30883082 Add AfterGBufferPass for custom PostFx location 2023-01-31 09:28:19 +01:00
Wojtek Figat
9b3d15aa46 Add Renderer::DrawActors for quick actors rendering in custom render passes 2023-01-30 00:52:32 +01:00
Wojtek Figat
87549a3e6c Fix sort order usage in multi-pass drawing of the Mesh 2023-01-28 01:31:07 +01:00
Wojtek Figat
adfe3ad165 Add SortOrder to drawable object types for transparency sorting override 2023-01-26 18:37:40 +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
b33ce8d264 Add pooled render targets naming for easier GPU memory usage debugging 2022-12-09 11:26:35 +01:00
Wojtek Figat
835a230323 Refactor material shaders to use separate constant buffer (slot 1) for shared per-view constants 2022-11-27 12:06:31 +01:00
Wojtek Figat
5cc66d60dc Tweaks 2022-11-24 20:14:47 +01:00
Wojtek Figat
3b4d91924f Add draw call sorting keys generation during draw calls collection (async) 2022-11-16 09:20:56 +01:00
Wojtek Figat
eb281a7574 Additional improvements to scene rendering 2022-11-15 22:39:03 +01:00
Wojtek Figat
aa978ce0e4 Minor improvements 2022-11-10 23:45:58 +01:00
Wojtek Figat
4ba1531cda Add async scene drawing for Foliage and Terrain 2022-11-10 23:43:36 +01:00
Wojtek Figat
9c7da16c1a Add multi-threaded scene rendering with Job System 2022-11-06 20:44:43 +01:00
Wojtek Figat
183636289a Optimize shadow projections rendering contexts to collect draw call indices only (draw calls from main render list) 2022-11-06 20:44:42 +01:00
Wojtek Figat
6a61b692aa Refactor PostProcessEffect to support C++ scripting 2022-11-02 20:29:59 +01:00
Wojtek Figat
27ad3c38b7 Rename RenderListAllocation into RendererAllocation 2022-10-28 17:53:22 +02: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
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
Wojciech Figat
2522d84a21 Add default Post Process options to Graphics Settings 2022-06-14 12:01:16 +02:00
Wojtek Figat
a881c90b2e Refactor engine to support double-precision vectors 2022-06-13 00:40:32 +02:00
Wojtek Figat
f82e370392 Refactor Vector types to support 64-bit precision via define switch 2022-05-25 20:04:33 +02:00
Wojciech Figat
cad9bad950 Merge remote-tracking branch 'origin/master' into gi 2022-04-21 12:57:08 +02:00
Wojtek Figat
e32ad93020 Add support for sampling Scene Color in transparent materials (forward pass) 2022-04-12 21:48:52 +02:00
Wojciech Figat
0a27d277a0 Adjustments 2022-04-12 14:27:06 +02:00
Wojciech Figat
de8a6bea58 Add drawing RenderList if it was not batched/sorted 2022-04-01 12:40:26 +02:00
Wojciech Figat
3fe1e2c763 Refactor SceneRendering to simplify actors impl of drawing flow at high level 2022-02-22 17:06:19 +01:00
Wojciech Figat
8c2241c6dc Update copyright year 2022-01-14 13:31:12 +01:00
Wojtek Figat
192af7ec14 Refactor native core objects to simplify usage for newcomers 2022-01-08 15:06:23 +01:00
Wojtek Figat
53022ff013 Fix code quality issues detected by PVS-Studio 2021-09-21 18:23:31 +02:00
Wojtek Figat
669b99f8e4 Add CustomUpscale postFx to replace upscaler with a custom script 2021-07-20 15:33:12 +02:00
Wojtek Figat
929bd2a8c8 Add support for rendering percentage scale with upscaling to backbuffer 2021-07-20 11:06:25 +02:00
Wojtek Figat
38bf3d87ed Optimize renderer memory allocations with RenderListAllocation (mem pooling) 2021-07-08 00:34:51 +02:00
Wojtek Figat
254ce569fa Optimize Foliage rendering with manual instanced draw calls batching 2021-07-08 00:34:47 +02:00
Wojtek Figat
2deac50c53 Various changes 2021-07-04 11:25:52 +02:00
Wojtek Figat
fca4f4ba40 Optimize CPU particles sorting with Radix sort 2021-06-27 12:30:49 +02:00
Wojtek Figat
9cba6bad6d Add support for rendering into 3d textures on Vulkan
#136
2021-05-18 11:40:38 +02:00
Wojtek Figat
1dee615d6e Add Volumetric Fog support for particles to modify local fog 2021-03-05 13:58:15 +01:00
Wojtek Figat
506ce69f53 Fix batching draw calls after recent refactor 2021-02-21 16:49:19 +01:00
Wojtek Figat
c9ea812a24 Optimize DrawCall to pack indirect draw arg and graphics draw data with union 2021-02-15 11:52:06 +01:00
Wojtek Figat
a560b19cbc Refactor draw calls and instancing logic to be more modular 2021-02-03 09:33:48 +01:00