gdscript-transpiler-bin
GDScript to Python to C Transpiler
gdscript-transpiler-bin
is a GDScript compiler (using Nuitka), minimal scripts can be transpiled to Python.
Binary builds are compiled using GitHub Actions for Alpine Linux, macOS and Windows x86_64.
Other compatible platforms: Android (aarch64 and x86_64).
Also see generated Python source from GDScript.
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 git+https://github.com/LinuxUserGD/gdscript-transpiler-source.git
-
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)
Status | In development |
Category | Tool |
Platforms | HTML5, Windows, macOS, Linux |
Author | LinuxUserGD |
Made with | Godot |
Tags | compiler, gdscript, Godot, python, transpiler |
Code license | MIT License |
Average session | A few seconds |
Languages | English |
Inputs | Keyboard |
Links | Source code |
Download
Install instructions
How to run:
./main.exe --help (Windows)
./main.bin --help (Linux/macOS)