Commit Graph

46 Commits

Author SHA1 Message Date
Wojtek Figat
9fd98c8e12 Optimize blend weights to use 8-bit per bone (instead of 16-bit) 2025-01-21 11:40:01 +01:00
Wojtek Figat
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
Wojtek Figat
348f17479d Fix name of BlendWeight to BlendWeights for vertex input to match BlendIndices 2025-01-03 01:07:33 +01:00
Wojtek Figat
1bf29c042b Refactor models and meshes to share more code in a base class 2024-12-19 00:20:08 +01:00
Wojtek Figat
59b4755379 Move mesh code to shared base class and reordanize files 2024-12-16 20:07:42 +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
516ed3e9a0 Cleanup some rendering code 2024-06-28 21:21:17 +02:00
Wojtek Figat
2edb9cc4d8 Fix compilation warnings when using 64-bit coords 2024-05-08 23:24:23 +02:00
Wojtek Figat
96f628429c Improve const correctness in Mesh and SkinnedMesh api
#2467i
2024-04-22 18:56:54 +02:00
Wojtek Figat
859c420d76 Update year in copyright note 2024-02-26 19:00:48 +01:00
Wojtek Figat
d08843900e Add AnimationRootMotionFlags to configure root motion component extraction
Add `RootMotionMode` to support extracting root motion from animated skeleton pose center of mass

#1429 #2152
2024-02-09 15:37:29 +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
9f97787099 Merge remote-tracking branch 'origin/master' into 1.7 2023-09-20 16:02:48 +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
f0496d53e8 Add RenderTools::CalculateTangentFrame utility 2023-07-16 11:57:21 +02:00
Wojtek Figat
99ee0b1bfe Add MeshDeformation utility for generic meshes vertices morphing (eg. via Blend Shapes or Cloth) 2023-07-03 09:49:23 +02:00
Wojtek Figat
05ffaf7cef Add **skeleton retargeting** to play animations on different skeletons 2023-05-04 11:54:17 +02:00
Wojtek Figat
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
Wojtek Figat
eed2cdfe04 Progress on dotnet7 runtime hosting with mono 2023-03-22 17:59:46 +01:00
Wojtek Figat
123b7f5433 Fix Mesh data downloading to support not yet streamed vertex/index data gather
#932
2023-02-16 13:47:43 +01:00
Wojtek Figat
a214c14a4d Add Sort Order to animated models too 2023-01-28 17:03:18 +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
3fcbcacd43 Fix empty draw call submitting 2022-12-15 17:33:14 +01:00
Wojciech Figat
7f0c73606c Improve naming various GPU resources 2022-12-09 11:27:41 +01:00
Wojtek Figat
98c29c4a4e Optimize compilation time 2022-12-03 10:42:58 +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
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
eb52d333ae Refactor scene rendering to use batched culling for main view and shadow projections 2022-10-28 17:53:21 +02:00
Wojciech Figat
ff34c7cc9b Refactor raw data ReadSttream and WriteStream to have easier to use API with more features 2022-10-12 11:22:20 +02:00
Wojtek Figat
b40a890d31 More work for large worlds 2022-06-30 22:07:11 +02:00
Wojtek Figat
a881c90b2e Refactor engine to support double-precision vectors 2022-06-13 00:40:32 +02:00
Wojciech Figat
aba0e46073 Add utility ctors to Half vectors 2022-04-05 17:21:55 +02:00
Wojciech Figat
8c2241c6dc Update copyright year 2022-01-14 13:31:12 +01:00
Wojtek Figat
8938f13a0b Add support for compiling and running engine without C# scripting
(configurable via `EngineConfiguration.UseCSharp` in Flax.Build)
2021-10-23 16:43:15 +02:00
Wojtek Figat
f44e5fb2fe Add support for uint as triangle indices for mesh updates API 2021-08-13 10:04:44 +02:00
Wojtek Figat
fae682e406 Implement DownloadDataCPU for Mesh and add result entries count 2021-08-05 16:40:28 +02:00
Wojtek Figat
f5e5686853 Optimize includes in ThreadLocal.h 2021-07-08 00:34:49 +02:00
Wojtek Figat
0e75dba142 Optimize C++ compilation time 2021-04-30 16:27:57 +02:00
Wojtek Figat
51926f517e Add support for masking Material Slots when cooking Collision Data 2021-03-31 12:15:38 +02:00
Wojtek Figat
e01a0585a8 Add MeshBase as shared impl part for Mesh and SkinnedMesh 2021-03-30 17:57:53 +02: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
Jean-Baptiste Perrier
03eb39afe6 Bumping all copyright headers to 2021. 2021-01-02 14:28:49 +01:00
Wojtek Figat
6fb9eee74c You're breathtaking! 2020-12-07 23:40:54 +01:00