0 votes

Hi,

I have been following godot since godot 2 was released. It is awesome engine. All the time, I have been using gdscript, but I want to use c# for the change.

I don't know what to use, mono sdk or .net sdk :/

I searched the internet many times regarding these two sdks, but there aren't many questions regarding this for godot engine.

Could someone explain to me what is the main difference between mono sdk and .net sdk?
I know that mono sdk is opensoruce code bla bla, and .net sdk is closed source code and it was created by microsoft, I know that.
But what about performance?
Are there any performance impacts using mono sdk instead of .net sdk?
What are the pros and cons of both these sdks?

Godot version latest
in Engine by (23 points)

1 Answer

+1 vote

Hey munja95,

the short answer:
Use .NET 6

The long answer:
Godot 3 internally uses Mono with C# 7.3. The IDE will jell at you, if you use newer C# features. So the .NET Framework is only for developing.
Exported projects use their own Mono runtime. So the end user doesn't need .NET or Mono preinstalled on his machine.

Godot 4 will completely replace Mono with .NET, because Microsoft will discontinue Mono.

Mono was developed in the early 2000s by a company named Xamarin, as runtime for Linux and other operating systems. Nowadays Microsoft just doesn't support Windows only anymore, so the need of Mono is gone.

by (1,067 points)
edited by

Do you know when godot will come with its own mono runtime? next year maybe?

I updated my answer to be more clear.
"Exported projects use their own Mono runtime. So the end user doesn't need .NET or Mono preinstalled on his machine."

You as developer will still need a .NET SDK to develop.

I get it now, thanks!

Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read Frequently asked questions and How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to [email protected] with your username.