Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

C#/.NET

C# is a high-level programming language developed by Microsoft. Godot supports C# as an option for a scripting language, alongside Godot's own GDScript.

The standard Godot 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 Godot website.

C# 的 Godot API

As a general purpose game engine Godot 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# 平台支持

As of Godot 4.2 projects written in C# support all desktop platforms (Windows, Linux, and macOS), as well as Android and iOS.

Android 支持目前是实验性的,存在部分限制。

  • Projects targeting Android need to target .NET 7.0 or higher. This requires modifying the .csproj file generated by Godot 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 and x64.

iOS 支持目前是实验性的,存在部分限制。

  • Projects targeting iOS need to target .NET 8.0 or higher. This requires modifying the .csproj file generated by Godot 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 Godot 3 instead.