Commit Graph

102 Commits

Author SHA1 Message Date
Wojtek Figat
f045b5b6b6 Merge remote-tracking branch 'origin/master' into 1.12
# Conflicts:
#	Content/Editor/Camera/M_Camera.flax
#	Content/Editor/CubeTexturePreviewMaterial.flax
#	Content/Editor/DebugMaterials/DDGIDebugProbes.flax
#	Content/Editor/DebugMaterials/SingleColor/Decal.flax
#	Content/Editor/DebugMaterials/SingleColor/Particle.flax
#	Content/Editor/DebugMaterials/SingleColor/Surface.flax
#	Content/Editor/DebugMaterials/SingleColor/SurfaceAdditive.flax
#	Content/Editor/DebugMaterials/SingleColor/Terrain.flax
#	Content/Editor/DefaultFontMaterial.flax
#	Content/Editor/Gizmo/FoliageBrushMaterial.flax
#	Content/Editor/Gizmo/Material.flax
#	Content/Editor/Gizmo/MaterialWire.flax
#	Content/Editor/Gizmo/SelectionOutlineMaterial.flax
#	Content/Editor/Gizmo/VertexColorsPreviewMaterial.flax
#	Content/Editor/Highlight Material.flax
#	Content/Editor/Icons/IconsMaterial.flax
#	Content/Editor/IesProfilePreviewMaterial.flax
#	Content/Editor/MaterialTemplates/Features/ForwardShading.hlsl
#	Content/Editor/Particles/Particle Material Color.flax
#	Content/Editor/Particles/Smoke Material.flax
#	Content/Editor/SpriteMaterial.flax
#	Content/Editor/Terrain/Circle Brush Material.flax
#	Content/Editor/Terrain/Highlight Terrain Material.flax
#	Content/Editor/TexturePreviewMaterial.flax
#	Content/Editor/Wires Debug Material.flax
#	Content/Engine/DefaultDeformableMaterial.flax
#	Content/Engine/DefaultMaterial.flax
#	Content/Engine/DefaultRadialMenu.flax
#	Content/Engine/DefaultTerrainMaterial.flax
#	Content/Engine/SingleColorMaterial.flax
#	Content/Engine/SkyboxMaterial.flax
#	Flax.flaxproj
#	Source/Engine/Graphics/Materials/MaterialShader.h
#	Source/Engine/Graphics/Materials/MaterialShaderFeatures.cpp
#	Source/Engine/Renderer/RenderList.h
#	Source/Shaders/Reflections.shader
#	Source/Shaders/ReflectionsCommon.hlsl
#	Source/Tools/Flax.Build/Bindings/BindingsGenerator.Cpp.cs
2026-02-11 00:20:38 +01:00
Wojtek Figat
55f73b6cf7 Optimize Animated Models bones updating with a batches memory pass and manual resource transitions batch
#3917 #3827
2026-02-09 23:03:25 +01:00
Wojtek Figat
27dd1bda25 Optimize GPUVertexLayout::Get to not use mutex on lookup read
#3917
2026-02-06 21:57:16 +01:00
Wojtek Figat
4afd9fd8df Optimize Animated Model bones buffer flushing with delayed draw action to reduce lock contention
#3917 #3827
2026-02-06 13:27:53 +01:00
Wojtek Figat
70b324cdec Optimize included header usage 2026-02-06 09:11:55 +01:00
Wojtek Figat
fa428e343b Add dithering to Volumetric Fog to reduce aliasing 2026-01-28 08:39:56 +01:00
Wojtek Figat
a9bddfa784 Fix Volumetric Fog sampling to use the same code path for depth slices conversion 2026-01-27 23:24:47 +01:00
Wojtek Figat
18778aa511 **Add Box Projection to Environment Probe** for better indoor areas 2026-01-14 09:49:01 +01:00
Wojtek Figat
5c81c71116 Move constant buffer init for instanced draws only, others do it in all paths 2025-12-09 09:51:53 +01:00
Wojtek Figat
56066a3212 Porting to a famous blue platform 2025-12-08 14:41:55 -08:00
Wojtek Figat
361fc3ecfb Add stencil buffer usage with object layer information
#3080 #967
2025-10-07 18:07:23 +02:00
Wojtek Figat
1f56c75821 Minor fixes 2025-09-09 15:26:03 +02:00
Wojtek Figat
44e70692a2 Fix render memory alignment issues to prevent crashes on Android 2025-09-06 23:36:54 +02:00
Wojtek Figat
212b0de29b Add RenderListAlloc to simplify rendering memory allocations 2025-09-03 13:00:28 +02:00
Wojtek Figat
5a2555f845 Improve cdb09847ec and 499ef51875 to swap key bits during sorting
#2271
2025-09-02 22:30:50 +02:00
Wojtek Figat
cdb09847ec Fix draw calls batching to ignore distance in opaque passes for better draw calls instancing
#2271
2025-08-13 21:30:18 +02:00
Wojtek Figat
2a9260ddd5 Optimize emitters to cull shadow passes sorting and drawing 2025-08-07 23:49:21 +02:00
Wojtek Figat
d4355e31d8 Optimize GPU particles drawing with batched indirect args setup before sorting 2025-08-07 18:41:58 +02:00
Wojtek Figat
959371a995 Fix particles regression on DirectX 2025-08-06 23:39:46 +02:00
Wojtek Figat
cf9c203855 Various optimizations 2025-08-06 18:48:18 +02:00
Wojtek Figat
b1710c4d01 Add async particles drawing (GPU emitters are sync) 2025-08-05 22:53:09 +02:00
Wojtek Figat
1a88fefd76 Optimize CPU particles drawing to support async 2025-08-05 09:03:47 +02:00
Wojtek Figat
3abbf08f1f Optimize foliage rendering with concurrent arena allocator 2025-07-08 22:18:00 +02:00
Wojtek Figat
c639a3103c Add memory profiling events to the main areas of the engine 2025-05-22 04:47:01 +02:00
Wojtek Figat
9c3fd052cd Remove copyright year from source files and update to 2025 2025-04-07 19:22:21 +02:00
Wojtek Figat
1b97e49ed9 Fix shadow maps rendering regression bug 2025-01-11 22:45:18 +01:00
Wojtek Figat
b3f37ca041 Refactor Vertex Shader input vertex layout to use GPUVertexLayout defined on Vertex Buffer rather than Vertex Shader
#3044 #2667
2024-12-15 22:10:45 +01:00
Wojtek Figat
2ad9c7f4d5 Fix Skybox rendering regression
#2943
2024-09-24 23:01:13 +02:00
Wojtek Figat
499ef51875 Fix draw calls sorting to favor distance over geometry and material
#2271 #2306
2024-08-27 16:01:46 +02:00
Wojtek Figat
fb2af0e0e7 Fix regression in Sort Key usage 2024-08-22 18:49:03 +02:00
Wojtek Figat
bb00653645 Fix regression in shadow maps rendering batching to ignore transparent materials due to opacity usage 2024-08-22 17:49:12 +02:00
Wojtek Figat
bc313c8630 Merge remote-tracking branch 'origin/master' into 1.9 2024-08-05 20:00:39 +02:00
Wojtek Figat
117178f547 Fix shader resource usage warning when drawing grid gizmo after selection outline
#2808
2024-08-05 18:18:02 +02:00
Wojtek Figat
6fbf4a6aac Optimize draw calls sorting and objects buffer building to be async 2024-07-02 16:07:09 +02:00
Wojtek Figat
08ef7c93ea Refactor draw calls drawing to use single objects buffer and better materials batching 2024-07-02 00:52:22 +02:00
Wojtek Figat
78f3248ac9 Refactor SortOrder to use int8 instead of int16 due to performance reasons (more efficent sort keys packing in rendering) 2024-06-29 13:54:02 +02:00
Wojtek Figat
516ed3e9a0 Cleanup some rendering code 2024-06-28 21:21:17 +02:00
Wojtek Figat
138e17508b Add profile event to hardware instancing building and insert draw count into profiler zone data 2024-06-27 21:03:52 +02:00
Wojtek Figat
b545d8800c Optimize job system memory allocations 2024-06-24 23:19:01 +02:00
Wojtek Figat
60e8d73079 Merge remote-tracking branch 'origin/master' into 1.9
# Conflicts:
#	Source/Engine/Renderer/RenderList.cpp
#	Source/Engine/Renderer/RenderList.h
2024-04-17 09:58:59 +02:00
Wojtek Figat
794b007170 Optimize draw calls sorting in opaque passes 2024-04-16 17:18:18 +02:00
Wojtek Figat
3e475398e7 Optimize draw calls batching sorting with Merge Sort 2024-04-12 16:02:37 +02:00
Wojtek Figat
1e77f3aa5a Optimize DrawBatch for faster sorting 2024-04-12 13:46:20 +02:00
Wojtek Figat
eac1d19a09 Add additional StaticFlagsCompare to Render View for dynamic or static only drawing 2024-04-11 10:21:13 +02:00
Wojtek Figat
708fba5136 Add variable rate update for shadow maps atlas based on distance to light 2024-04-08 00:04:57 +02:00
Wojtek Figat
61323f8526 Refactor shadows rendering to use Shadow Map Atlas 2024-04-04 12:54:07 +02:00
Wojtek Figat
f7470af42d Optimize depth pass rendering to batch simple materials together 2024-03-26 18:04:08 +01:00
Wojtek Figat
55af307c43 Optimize env probes data storage in renderer 2024-03-26 15:01:12 +01:00
Wojtek Figat
4ab572426d Various renamings 2024-03-26 14:27:10 +01:00
Wojtek Figat
cdbb2cc813 Refactor shader structures naming with a prefix 2024-03-25 17:52:48 +01:00