GodotSharpRemoteTree 0.2.0
dotnet add package GodotSharpRemoteTree --version 0.2.0
NuGet\Install-Package GodotSharpRemoteTree -Version 0.2.0
<PackageReference Include="GodotSharpRemoteTree" Version="0.2.0" />
<PackageVersion Include="GodotSharpRemoteTree" Version="0.2.0" />
<PackageReference Include="GodotSharpRemoteTree" />
paket add GodotSharpRemoteTree --version 0.2.0
#r "nuget: GodotSharpRemoteTree, 0.2.0"
#:package GodotSharpRemoteTree@0.2.0
#addin nuget:?package=GodotSharpRemoteTree&version=0.2.0
#tool nuget:?package=GodotSharpRemoteTree&version=0.2.0
Godot.Sharp.RemoteTree
A library to create a UI Control that can be ran from within a Godot Application, to inspect the SceneTree at runtime in C#/Dotnet release of Godot. This is a tool that will let you inspect the SceneTree of a Godot Application, at runtime. It is similar to tools such as AvaloniaUI DevTools, allowing you to inspect the SceneTree at runtime, inspecting various nodes that exist in the tree.
Godot already has a Remote SceneTree inspector, which is fine, if you run your Project from Godot itself. However, this will let you run your project directly from a C# IDE such as Rider, VSCode, and still give you access to the SceneTree for your application/game. It is not a 1:1 replication of the Inspector panel in the Godot Editor, more controls need to be added in order to have as close to 1:1 replication.
Installation
To install this library, simply use dotnet command line tool, to add a package reference for this library.
dotnet add package GodotSharpRemoteTree
Alternatively, you can add to your CSProj file, the following:
<ItemGroup Condition="'$(Configuration)' == 'Debug'">
<PackageReference Include="GodotSharpRemoteTree"/>
</ItemGroup>
This will add the package reference for inclusion only when building your project in Debug configuration, and will not include it in your release builds.
Usage
In order to use the Library, you will need to register the RemoteTree in your source code, so that it can initalize and setup the RemoteSceneTree. This can be enabled, by doing the following in your Main Scene script, in the _Ready() function or the _EnterTree() function.
using Godot;
using Godot.Sharp.RemoteTree;
public partial class MyNode : Node
{
public override void _Ready()
{
RemoteSceneTree.Enable();
// Initialize all your other stuff for your node.
}
// Only call this when you are Exiting the Game, if you are changing
// scenes, do not disable it, as when you change scenes, it will disable
// the Inspector.
public override void _ExitTree()
{
RemoteSceneTree.Disable();
}
}
As seen above, cleanup is handled by using RemoteSceneTree.Disable(). When running RemoteSceneTree.Enable(), it will listen for the 'F11' key to show the RemoteSceneTree window. In the future, this will be configurable. The RemoteSceneTree is editable of the current properties to a certain extent. Properties that are currently implemented, will let you adjust values of the current running process, but only for Properties that are currently implemented in the RemoteSceneTree, and will only effect the current run of the application. It does not save the values to your project.
Note:
The same limitation that you normally have with C# and Godot with Variable types work the exact same here. Currently, it cannot display C# types, that do not inherit from GodotObject class. Also, currently there is no support for Resource inspection, and will just be displayed as a string of classname:-instance_id.
Resource Inspection will be added in the future.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- Godot.SourceGenerators (>= 4.6.0)
- GodotSharp (>= 4.6.0)
- GodotSharpEditor (>= 4.6.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Updated to include new Flags Inspector control, and new Layers Inspector Control, also cleanup UI layout some more, to make it easier to look through.