Commit Graph

89 Commits

Author SHA1 Message Date
mafiesto4 888dfbe014 Add api to draw Skinned Model from code with Animated Model pose
https://forum.flaxengine.com/t/how-to-render-outline-for-an-animated-model/2598
2026-06-16 11:19:34 +02:00
mafiesto4 bc36168318 Optimize Animated Model rendering with hardware instancing
All models are using the same global buffer for skinned bones which allows to share shader binding for instancing.
Refactor draw call for batching skinned mesh draws.
Remove `SkinnedMeshDrawData` and merge it into `AnimatedModel` internals.
2026-06-15 17:59:41 +02:00
mafiesto4 7a569d4f14 Add selection drawing and picking gizmo to Foliage Types editing tab 2026-04-30 18:19:12 +02:00
mafiesto4 ad46b74f6a Optimize foliage drawing by caching per-instance world matrix 2026-04-28 12:50:19 +02:00
mafiesto4 47a9d76938 Optimize foliage drawing memory access a bit more 2026-04-28 11:48:52 +02:00
mafiesto4 f4905cfccc Optimize foliage rendering with less cache misses 2026-04-28 00:24:05 +02:00
mafiesto4 bf9a015959 Optimize FoliageInstance size to cut down memory by and reduce cache misses when drawing foliage 2026-04-27 22:54:11 +02:00
mafiesto4 4fd7f51fdf Optimize LightmapUVs to be stored already as Half4 to avoid runtime conversions during rendering 2026-04-27 21:53:11 +02:00
mafiesto4 f5e483069d Optimize CPU rendering of shadowed foliage by splitting draw contexts into separate async jobs 2026-04-27 17:14:56 +02:00
mafiesto4 486781661e Optimize foliage instance bounds calculations 2026-04-27 14:32:19 +02:00
mafiesto4 b201897ae6 Optimize foliage serialization by batching instance data, performing quantization, and LZ4 compression
Cuts down foliage data size by over 50% and improves load times.
2026-04-27 14:30:19 +02:00
mafiesto4 8553785397 Fix crash when drawing minor foliage node with both children and instances 2026-04-19 21:48:23 +02:00
mafiesto4 8b383d4dbe Fix regression on Large Worlds build and bunch of warnings 2026-03-30 23:50:03 +02:00
mafiesto4 96bbae8e28 Fix Global SDF update when changing Draw Modes of the model
Refactor `DrawModes` field in `StaticModel` and `FoliageType` into property with getter/setter

#3949
2026-03-11 16:01:56 +01:00
mafiesto4 83bd1deafd Optimize shadow maps rendering by using new Graphics.Shadows.MinObjectPixelSize to skip sub-pixel objects 2026-02-23 16:53:17 +01:00
mafiesto4 4a7f1a5fde Fix various issues 2026-02-06 10:37:52 +01:00
mafiesto4 20516bb8bc Fix foliage dithered LOD transitions when using shadows 2026-02-06 09:11:45 +01:00
mafiesto4 449fc597b5 Fix crash when using overlapping instances
#3899
2026-02-02 19:21:45 +01:00
mafiesto4 361fc3ecfb Add stencil buffer usage with object layer information
#3080 #967
2025-10-07 18:07:23 +02:00
mafiesto4 a1a6d4738f Fix async draw wait labels type 2025-08-05 12:28:29 +02:00
mafiesto4 3abbf08f1f Optimize foliage rendering with concurrent arena allocator 2025-07-08 22:18:00 +02:00
mafiesto4 2dd34b288c Merge remote-tracking branch 'origin/master' into 1.11 2025-07-04 12:05:19 +02:00
mafiesto4 12c8bb4f31 Fix scene lightmaps removal clearing actors linkage to lightmaps 2025-07-01 08:27:29 +02:00
mafiesto4 091f76bbf2 Add more improvements to usability of memory profiler 2025-06-06 22:40:43 +02:00
mafiesto4 8b88def9d0 Revert some changes from #3389 that are not relevant for world units 2025-06-03 17:43:01 +02:00
Ari Vuollet f09fd7ad34 Use exact value comparison in caching related functions
(cherry picked from commit 9d7c6b26422e127719836944d8d473910190e7d4)
2025-05-02 14:19:55 +03:00
Ari Vuollet 8986290b12 Use exact component value equality checks in equality comparisons
(cherry picked from commit 2cddf3de97943844512b2d84aa6be122c6f0d409)
2025-05-02 14:19:54 +03:00
mafiesto4 9c3fd052cd Remove copyright year from source files and update to 2025 2025-04-07 19:22:21 +02:00
mafiesto4 8a7ceef288 Add content deprecation system that auto-saves assets in Editor that use old data format 2025-01-20 23:46:49 +01:00
mafiesto4 7f7549d2f7 Add Foliage.RemoveAllInstances to clear all instances of foliage
#2957
2024-10-01 23:07:47 +02:00
mafiesto4 5f19538455 Add UpdateFlags to ISceneRenderingListener::UpdateActor for more contextual control overdirtying actors state in renderer data
Fixes issue of static shadow maps not refreshing when changing static flags of the model.
2024-09-29 22:03:46 +02:00
mafiesto4 9daddccbed Merge remote-tracking branch 'origin/master' into 1.9
# Conflicts:
#	Source/Editor/Modules/ContentDatabaseModule.cs
#	Source/Editor/Surface/SurfaceUtils.cs
#	Source/Editor/Windows/Assets/MaterialInstanceWindow.cs
#	Source/Engine/Foliage/Foliage.cpp
#	Source/Engine/Graphics/Models/MeshBase.h
#	Source/Engine/Tools/MaterialGenerator/MaterialGenerator.Textures.cpp
2024-09-12 13:38:20 +02:00
mafiesto4 545e59aba5 Fix lightmap uvs density view to handle scale in lightmap and outline non-static objects
#2080
2024-09-09 05:59:17 +02:00
mafiesto4 a18565fd61 Merge remote-tracking branch 'origin/master' into 1.9 2024-08-23 00:05:00 +02:00
mafiesto4 b8cb1a828a Fix foliage shadows rendering when using cull distance
#2489
2024-08-22 22:29:33 +02:00
mafiesto4 08ef7c93ea Refactor draw calls drawing to use single objects buffer and better materials batching 2024-07-02 00:52:22 +02:00
mafiesto4 516ed3e9a0 Cleanup some rendering code 2024-06-28 21:21:17 +02:00
mafiesto4 5e086809ae Fix crash on prefab preview with lightmap in use
#2454
2024-04-20 15:51:20 +02:00
mafiesto4 859c420d76 Update year in copyright note 2024-02-26 19:00:48 +01:00
mafiesto4 bc3107d1db Fix build warnings on the latest XCode 2023-11-14 19:03:46 +01:00
mafiesto4 2d0eabc8be Fix deadlock in Foliage::GetFoliageTypeInstancesCount
#1724
2023-10-17 23:20:30 +02:00
mafiesto4 e6c45fccb3 Merge remote-tracking branch 'origin/master' into 1.7
# Conflicts:
#	Source/Engine/Level/Actors/AnimatedModel.cpp
2023-10-05 10:44:03 +02:00
mafiesto4 8bafdb0b78 Remove std::function usage from ArrayExtensions 2023-10-02 12:52:44 +02:00
mafiesto4 99ee0b1bfe Add MeshDeformation utility for generic meshes vertices morphing (eg. via Blend Shapes or Cloth) 2023-07-03 09:49:23 +02:00
mafiesto4 adfe3ad165 Add SortOrder to drawable object types for transparency sorting override 2023-01-26 18:37:40 +01:00
mafiesto4 f127bbebe1 Refactor enum flags with __underlying_type and new EnumHasAnyFlags/EnumHasAllFlags
Fixes #832
Closes #886
2023-01-15 12:44:39 +01:00
mafiesto4 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
mafiesto4 9626e9bbb6 Update copyright year 2023-01-10 15:29:37 +01:00
mafiesto4 8918c71312 Update old header usage 2022-12-22 19:31:01 +01:00
mafiesto4 98c29c4a4e Optimize compilation time 2022-12-03 10:42:58 +01:00