Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Redot.
Checking the stable version of the documentation...
C#/.NET¶
C# is a high-level programming language developed by Microsoft. Redot supports C# as an option for a scripting language, alongside Redot's own GDScript.
The standard Redot executable does not contain C# support out of the box. Instead, to enable C# support for your project you need to download a .NET version of the editor from the Redot website.
Redot API for C#¶
As a general purpose game engine Redot offers some high-level features as a part of its API. Articles below explain how these features integrate into C# and how C# API may be different from GDScript.
C# platform support¶
As of Redot 4.2 projects written in C# support all desktop platforms (Windows, Linux, and macOS), as well as Android and iOS.
Android support is currently experimental and has a few limitations.
Projects targeting Android need to target .NET 7.0 or higher. This requires modifying the .csproj file generated by Redot for existing projects. The following property is added to new projects created with 4.2 and can be added to existing projects:
<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'android' ">net7.0</TargetFramework>
Only some Android architectures are supported:
arm64
andx64
.
iOS support is currently experimental and has a few limitations.
Projects targeting iOS need to target .NET 8.0 or higher. This requires modifying the .csproj file generated by Redot for existing projects. The following property is added to new projects created with 4.2 and can be added to existing projects:
<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'ios' ">net8.0</TargetFramework>
The official export templates for the iOS simulator only supports the
x64
architecture.Exporting to iOS can only be done from a MacOS device.
Currently, projects written in C# cannot be exported to the web platform. To use C# on that platform, consider Redot 3 instead.