Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Proposal] Add an AOT/JIT compiler for GDScript #134

Open
heavymetalmixer opened this issue Nov 12, 2024 · 0 comments
Open

[Feature Proposal] Add an AOT/JIT compiler for GDScript #134

heavymetalmixer opened this issue Nov 12, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@heavymetalmixer
Copy link

heavymetalmixer commented Nov 12, 2024

Tested versions

4.3 or 4.4

System information

Every OS that the engine supports

Issue description

Many times people have compared C# to GDScript for performance inside the engine and C# often comes out on top, even though GDScript has better integration with the engine. Although most of the performance issues in the engine come from internal problems, the fact that GDScript is an interpreted language mean it'll always be slower than a language with a JIT or AOT compiler.


  1. So, putting the internal issues aside, having an AOT/JIT compiler for GDScript would make (in theory) games made in it run better, and to catch errors and bugs faster, without having to use another programming language for better performance.

This results on game devs transitioning from Godot easily, because the same code runs exactly the same, but faster.


  1. The editor should have a pair of buttons called "Compile" and "Run/Debug compiled version" in the Editor, close to the Run/Debug button used for the Interpreted version, so users don't have to look for them inside menus.

  1. Godot already had two similar requests but they never led to anything:
    GDScript performance improvement via Just-in-time (JIT) compilation godotengine/godot#5049
    Improve the performance of the GDScript VM godotengine/godot-proposals#6031

Note: As to why I opened this proposal as "bug report", it's the first time I make a proposal on Github ever, and for some reason "Bug reports" is the only option that doesn't redirect me to the Godot repo.

Steps to reproduce

None

Minimal reproduction project (MRP)

None

@Starkium Starkium added the enhancement New feature or request label Nov 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants