I was inspired by the announcement of Slay the Spire 2 and Casey Yano's description of his experience with Godot Engine to investigate the C# bindings in Godot Engine. I've been using Godot Engine for years but only scripted it with GDScript. Like Yano, I prefer statically typed languages over dynamic ones, so this seemed worth a shot. I was introduced to Rider when I was doing C++ in Unreal Engine, and I found it to be an amazing IDE. This, combined with the availability of free academic licenses for people like me, made that my first stop for trying Godot's C# side.
Unfortunately, some of official documentation had me going in unproductive directions. That's why I am taking a moment here to share my quick notes about the experience. The most important thing I learned was not to bother with Mono: it is being phased out. If I had to do it all again from scratch, I would do something like the following.
- Install dotnet SDK using Microsoft's feed. I used version 8.0 and that seemed fine.
- Download and install JetBrains Rider. I did this with snap, which is how I've installed Android Studio for my Flutter work.
- The first time you run Rider, go to the settings and install the "Godot Support" plug-in.
- Of course, make sure you have the .NET version of Godot Engine, and tell Godot Engine to use Rider as its external "dotnet" editor.
using Godot;
namespace RiderTest;
public partial class World : Node2D
{
public override async void _Ready()
{
base._Ready();
await ToSignal(GetTree().CreateTimer(2.0), Timer.SignalName.Timeout);
GD.Print("Did it!");
}
}
No comments:
Post a Comment