Commit Graph

46 Commits

Author SHA1 Message Date
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
aaaf7c5c37 Various fixes to scripting 2023-03-06 16:17:52 +01:00
Wojciech Figat
f3366178ea Refactor manually written managed bindings to use C-style exported P/Invoke 2023-01-23 18:14:38 +01:00
Wojciech Figat
7b20bc38a4 Merge branch '1.5' into dotnet7
# Conflicts:
#	Content/Shaders/GI/DDGI.flax
#	Content/Shaders/GI/GlobalSurfaceAtlas.flax
#	Content/Shaders/TAA.flax
#	Content/Shaders/VolumetricFog.flax
#	Source/Tools/Flax.Build/Projects/VisualStudio/VCProjectGenerator.cs
2023-01-17 11:52:52 +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
eebc4951de Merge branch '1.5' into dotnet7
# Conflicts:
#	Source/Platforms/DotNet/NUnit/agents/net40/nunit-agent.exe
#	Source/Platforms/DotNet/NUnit/agents/net40/nunit.engine.api.dll
#	Source/Platforms/DotNet/NUnit/agents/net40/nunit.engine.core.dll
#	Source/Platforms/DotNet/NUnit/agents/net7.0/nunit.agent.addins
#	Source/Platforms/DotNet/NUnit/nunit.engine.api.dll
#	Source/Platforms/DotNet/NUnit/nunit.engine.core.dll
#	Source/Platforms/DotNet/NUnit/nunit.engine.dll
#	Source/Platforms/DotNet/NUnit/nunit3-console.exe
#	Source/Platforms/DotNet/NUnit/nunit3-console.exe.config
#	Source/Platforms/DotNet/NUnit/testcentric.engine.metadata.dll
#	Source/Tools/Flax.Build/Deps/Downloader.cs
#	Source/Tools/Flax.Stats/CodeFrame.cs
#	Source/Tools/Flax.Stats/CodeFrameNode.cs
#	Source/Tools/Flax.Stats/Flax.Stats.Build.cs
#	Source/Tools/Flax.Stats/Languages.cs
#	Source/Tools/Flax.Stats/Program.cs
#	Source/Tools/Flax.Stats/TaskType.cs
#	Source/Tools/Flax.Stats/Tools.cs
#	Source/Tools/FlaxEngine.Tests/TestEditorUtils.cs
2023-01-10 15:49:44 +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
Wojtek Figat
a74b847e65 Fix ScriptingObject::FromInterface to return object if the pointer is already valid object 2023-01-10 11:45:23 +01:00
80c3056daf Fix errors when compiling plugins 2022-12-23 22:33:22 +02:00
Wojciech Figat
94c5211ee6 Rename gchandle to MGCHandle 2022-12-22 13:02:00 +01:00
fcd1366d26 Fix memory leaks caused by unreleased GCHandles 2022-12-02 00:06:32 +02:00
96dc279ebd Implement .NET 7 runtime support and bindings generation 2022-11-26 14:37:07 +02:00
Wojciech Figat
c12ea8428e Add FlaxEngine.Object.FromUnmanagedPtr for native object raw pointer conversion to managed object 2022-10-13 13:35:59 +02:00
Wojciech Figat
74fe176d2d Improvements for const class usage 2022-09-05 14:34:16 +02:00
Wojciech Figat
f801e7ffd9 Fixes 2022-01-21 16:23:30 +01:00
Wojciech Figat
8c2241c6dc Update copyright year 2022-01-14 13:31:12 +01:00
Wojtek Figat
c4b6865659 Merge branch 'master' into mac 2022-01-09 19:15:15 +01:00
Wojtek Figat
192af7ec14 Refactor native core objects to simplify usage for newcomers 2022-01-08 15:06:23 +01:00
Wojtek Figat
ff9b116522 Add ScriptingObject::NewObject utility for scripting objects spawning in C++ 2022-01-08 15:06:18 +01:00
Wojtek Figat
5e9b215548 Fix crash when spawning managed object on a detached native thread 2022-01-08 15:06:16 +01:00
Wojtek Figat
ca62cd2661 Mac impl progress 2022-01-03 13:59:52 +01:00
Wojtek Figat
1c34c7f293 Fix crash when creating C# object for native object at the same time on multiple threads 2021-12-16 18:58:14 +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
5e3254435f Add ScriptingObject::ToInterface and ScriptingObject::FromInterface 2021-10-04 14:21:45 +02:00
Wojtek Figat
c3c0a4ef0d Add support for interfaces in scripting API (cross language support C++/C#/VS) 2021-10-04 12:26:08 +02:00
Wojtek Figat
6107af3cca Fix missing change 2021-09-29 18:11:00 +02:00
Wojtek Figat
b9ef09df96 Add support for creating C# scripting object inheriting directly from FlaxEngine.Object 2021-09-29 15:47:49 +02:00
Wojtek Figat
e2cd0393ac Add ManagedBinaryModule::FindModule utility for C# type class lookup 2021-09-29 15:46:17 +02:00
Wojtek Figat
d30e8c4c70 Remove redundant code 2021-08-19 14:01:54 +02:00
Wojtek Figat
a1bf4819cb Optimize calling Object.FindObject from C# 2021-08-19 13:06:20 +02:00
Wojtek Figat
27f2856e6d Optimize FindObject and TryFindObject in Object 2021-08-10 15:57:22 +02:00
Wojtek Figat
99012725dc Adjust includes 2021-06-17 14:15:19 +02:00
Wojtek Figat
907f289ea7 Cleanup asset references code 2021-06-10 11:01:35 +02:00
Wojtek Figat
312e4ad010 Merge branch 'master' into 1.1
# Conflicts:
#	Source/Engine/Content/JsonAsset.h
#	Source/Engine/Core/Config/Settings.h
2021-02-15 10:40:59 +01:00
Wojtek Figat
ed1a3c2964 Update mono 2021-02-14 14:54:56 +01:00
Wojtek Figat
c9860f21ec Fix scripting object issue 2021-02-08 19:42:04 +01:00
Wojtek Figat
8c1f56b7db Fixes for scripting objects 2021-02-07 19:28:57 +01:00
Wojtek Figat
cc8e78b505 Merge remote-tracking branch 'origin/master' into navigation-features
# Conflicts:
#	Source/Editor/Content/Settings/NavigationSettings.cs
#	Source/Engine/Engine/PhysicalMaterial.cs
#	Source/Tools/Flax.Build/Bindings/BindingsGenerator.Api.cs
2021-01-04 14:31:56 +01:00
Jean-Baptiste Perrier
03eb39afe6 Bumping all copyright headers to 2021. 2021-01-02 14:28:49 +01:00
Wojtek Figat
140fae3fa1 Fix crash for ScriptingObject.ToString if class is null 2020-12-28 22:00:11 +01:00
VNC
a4c1bf104c Fix typo and use GetID for the log 2020-12-28 19:52:39 +01:00
Wojtek Figat
4665e8fbdb Add support for basic classes to Scripting Type (without scripting object as a base) 2020-12-22 12:55:57 +01:00
Wojtek Figat
585c752d72 Add more objects types checks and casting utilities to ScriptingObject 2020-12-21 14:03:15 +01:00
Wojtek Figat
6fb9eee74c You're breathtaking! 2020-12-07 23:40:54 +01:00