GDScript to Python to C Transpiler
    Godot MIT license Python


gdscript-transpiler-bin is a GDScript compiler (using Nuitka), minimal scripts can be transpiled to Python.

Binary builds are compiled using Forgejo Actions for Alpine Linux, macOS and Windows x86_64.

Other compatible platforms: Android (aarch64 and x86_64).

Also see generated Python source from GDScript.

Video

Example

git clone https://codeberg.org/LinuxUserGD/gdscript-transpiler-bin.git
cd gdscript-transpiler-bin
git submodule update --init --remote --progress

Godot Engine command line (stage0)

  • ./godot4 -s bin/gds.gd --headless help

  • ./godot4 -s bin/gds.gd --headless run=bin/gds.gd (for running GDScript directly using x-python)

  • ./godot4 -s bin/gds.gd --headless format=bin/gds.gd (for generating Python project)

  • ./godot4 -s bin/gds.gd --headless compile=bin/gds.gd (for compiling GDScript to binary using Clang and Nuitka)

Python environment (stage1)

Installing python gds

python -m pip install gdsbin
python -m pip install git+https://codeberg.org/LinuxUserGD/gdscript-transpiler-bin.git@python
  • python -m gdsbin help

  • python -m gdsbin run=bin/gds.gd

  • python -m gdsbin format=bin/gds.gd

  • python -m gdsbin compile=bin/gds.gd

Nuitka compiled binary (stage2)

Installing gds binary (available at itch.io)

unzip gdscript-transpiler-bin.zip
cd gdscript-transpiler-bin
chmod +x gds
  • ./gds[.exe] help

  • ./gds[.exe] run=bin/gds.gd

  • ./gds[.exe] format=bin/gds.gd

  • ./gds[.exe] compile=bin/gds.gd

Benchmark

Time for running GDScript code:

func string() -> int:
    var x: String = ""
    for i in range(0, 300000):
        x += " "
    return x.length()
func add() -> int:
    var x: int = -100000000
    for i in range(0, 100000000):
        x += 1
    return x
Godot Python Nuitka
benchmark.gd 11.639s 4.678s 1.857s

License

See LICENSE and CREDITS (third-party licenses)

Updated 10 days ago
StatusReleased
CategoryTool
PlatformsHTML5, Windows, macOS, Linux
AuthorLinuxUserGD
Made withGodot
Tagscompiler, gdscript, Godot, python, transpiler
Code licenseMIT License
Average sessionA few minutes
LanguagesEnglish
InputsKeyboard
LinksSource code

Download

Download
gdscript-transpiler-bin-linux.zip 6.6 MB
Version 120 10 days ago
Download
gds 54 MB
Version 62 Sep 30, 2023
Download
gds.exe 50 MB
Version 62 Sep 30, 2023

Install instructions

How to run:

./main.exe --help (Windows)

./main.bin --help (Linux/macOS)