What language does Godot engine use?

What language does Godot engine use?

Godot Supports Multiple Programming Languages

One of the most common questions asked by aspiring game developers and enthusiasts alike is "what language does Godot use?" In short, the answer is a resounding "all of them!"

What’s Supported: GDScript, C++, and C#

In reality, Godot allows developers to work with various programming languages. Specifically, the following are officially supported:

  1. GDScript: This is an inbuilt, high-performance scripting language created specifically for Godot. GDScript is ideal for creating simple scripts and nodes within a game engine. Highly optimized and runs really fast.
  2. C++: Many advanced systems such as rendering , physics, and debugging are programmed using C++ in Godot. Developing complex engine functionality or systems requires low-level programming power, where C++ rules supreme. Control memory management directly, making them more complex, yet super powerful
  3. C#: Available through an additional package GDNative. GDNative allows using existing C# code from C# scripts, but they must comply with some compatibility restrictions . Works smoothly, while still limiting certain.Net calls without hacks to p-invoke/c# wrapper solutions

These language choices bring flexibility, creativity, and efficiency to your projects in Godot, empowering a wide range of users: from absolute beginners to pros

Native Extension and Extensibility

One area where Godot excels is the flexibility and integration of C and C# code Using CFFI to extend languages. Additionally, there exists plugins and extension points like [GDExtension][GDExtensions] enabling extension by linking native extensions libraries into code. Some features in existing plugins need further enhancements/optimization from experienced 3rd party contributors).

A few crucial elements should bear in mind regarding languages employed in your game engine using Godot, while not requiring explicit compilation using CFFI

There are even official language specific tutorials at their GitHub!

Your friends have asked us these questions - Check out the answers!

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top