Commit Graph

70 Commits

Author SHA1 Message Date
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 e450658834 Remove deprecated mono runtime backend
Old `mono` backend was not maintained for since 1.7 (July 2023)
`dotnet` backend still can run `mono` on AOT platforms but with the latest .NET features.
2026-06-03 16:35:06 +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 361fc3ecfb Add stencil buffer usage with object layer information
#3080 #967
2025-10-07 18:07:23 +02:00
mafiesto4 c639a3103c Add memory profiling events to the main areas of the engine 2025-05-22 04:47:01 +02:00
mafiesto4 9c3fd052cd Remove copyright year from source files and update to 2025 2025-04-07 19:22:21 +02:00
mafiesto4 5d3da8a8d0 Merge remote-tracking branch 'origin/master' into 1.10
# Conflicts:
#	Source/Editor/SceneGraph/Actors/StaticModelNode.cs
#	Source/Engine/Graphics/Models/Mesh.cs
#	Source/Engine/Graphics/Models/ModelData.h
2025-03-13 11:23:01 +01:00
mafiesto4 a54299a560 Optimize ViewportRubberBandSelector
#3151
2025-03-11 13:05:15 +01:00
Tryibion 837a4927c1 Try fix build issues. 2025-03-08 10:50:46 -06:00
Tryibion abe2482a01 Use mesh collision proxy if available. 2025-01-27 18:28:06 -06:00
mafiesto4 eaf48bb176 Fix regression in dynamic mesh bounds and triangles setup after refactor 2025-01-20 23:48:25 +01:00
mafiesto4 ea96418764 Update old Float1010102 to FloatR10G10B10A2 2025-01-12 21:22:53 +01:00
mafiesto4 a1c46d2e6e Add support for up to 4 texture channels when importing meshes
#2667
2025-01-11 22:40:20 +01:00
mafiesto4 db4d7d2a05 **Refactor meshes format to support custom vertex layouts and new flexible api to access mesh data**
#3044 #2667
2025-01-06 22:47:19 +01:00
mafiesto4 1bf29c042b Refactor models and meshes to share more code in a base class 2024-12-19 00:20:08 +01:00
mafiesto4 59b4755379 Move mesh code to shared base class and reordanize files 2024-12-16 20:07:42 +01:00
mafiesto4 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
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 08ef7c93ea Refactor draw calls drawing to use single objects buffer and better materials batching 2024-07-02 00:52:22 +02:00
mafiesto4 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
mafiesto4 516ed3e9a0 Cleanup some rendering code 2024-06-28 21:21:17 +02:00
mafiesto4 2edb9cc4d8 Fix compilation warnings when using 64-bit coords 2024-05-08 23:24:23 +02:00
mafiesto4 96f628429c Improve const correctness in Mesh and SkinnedMesh api
#2467i
2024-04-22 18:56:54 +02:00
mafiesto4 859c420d76 Update year in copyright note 2024-02-26 19:00:48 +01:00
mafiesto4 1a5606a45c Improve collision data cooking usability
#1687
2023-10-13 23:33:03 +02:00
mafiesto4 98d5769558 Fix performance bug in Development/Release builds due to incorrect draw calls batching (uninitialized memory) 2023-09-28 10:59:09 +02:00
mafiesto4 9f97787099 Merge remote-tracking branch 'origin/master' into 1.7 2023-09-20 16:02:48 +02:00
mafiesto4 8cd8ae93c3 Add ObjectRadius to DrawCall to properly cull local lights and env probes in Forward Shading 2023-09-20 15:01:02 +02:00
mafiesto4 f0496d53e8 Add RenderTools::CalculateTangentFrame utility 2023-07-16 11:57:21 +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 510fc443e8 Refactor CoreCLR runtime into explicit dotnet api instead of mocking mono api
Required by platforms that will use mono under the hood for .Net 7
New `USE_CSHARP` define for C# ability
Engine doesn't use `mono_*` apis directly but via MCore/MClass/MMethod/ apis
2023-03-27 17:29:42 +02:00
mafiesto4 eed2cdfe04 Progress on dotnet7 runtime hosting with mono 2023-03-22 17:59:46 +01:00
mafiesto4 123b7f5433 Fix Mesh data downloading to support not yet streamed vertex/index data gather
#932
2023-02-16 13:47:43 +01:00
mafiesto4 87549a3e6c Fix sort order usage in multi-pass drawing of the Mesh 2023-01-28 01:31:07 +01: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 3fcbcacd43 Fix empty draw call submitting 2022-12-15 17:33:14 +01:00
mafiesto4 df82a0f5d0 Add **GPU Memory profiler** to Editor 2022-12-08 16:30:37 +01:00
mafiesto4 2b6e3cf993 Fix lod preview typo in df45ac46b1 2022-12-03 13:10:47 +01:00
mafiesto4 df45ac46b1 Optimize various debug views performance 2022-12-03 12:23:39 +01:00
mafiesto4 98c29c4a4e Optimize compilation time 2022-12-03 10:42:58 +01:00
mafiesto4 3b4d91924f Add draw call sorting keys generation during draw calls collection (async) 2022-11-16 09:20:56 +01:00
mafiesto4 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
mafiesto4 eb52d333ae Refactor scene rendering to use batched culling for main view and shadow projections 2022-10-28 17:53:21 +02:00
mafiesto4 ff34c7cc9b Refactor raw data ReadSttream and WriteStream to have easier to use API with more features 2022-10-12 11:22:20 +02:00
mafiesto4 134c8b99aa Add relative-to-camera rendering for large worlds 2022-06-21 20:03:13 +02:00
mafiesto4 a881c90b2e Refactor engine to support double-precision vectors 2022-06-13 00:40:32 +02:00