Unofficial Godot Engine binaries for the Raspberry Pi.

  • By null
  • Last update: Dec 31, 2022
  • Comments: 11

Unofficial Godot Engine for the Raspberry Pi

Unofficial Godot Engine binaries for the Raspberry Pi.

Unofficial Godot Engine for the Raspberry Pi

Limitations

  • The Raspberry Pi only supports GLES2.
  • The Raspberry Pi doesn't support GPU particles, only CPU particles.
  • We don't have 3.0.6 binaries because it doesn't have GLES2 support, only GLES3.
  • If the export templates from this repository don't work, you can try the ones from FRT: a Godot "platform" targeting single board computers, which offers support for multiple Raspberry Pi revisions and other single-board computers and are well tested.
  • We don't offer any kind of support. The binaries are distributed as-is ๐Ÿ™ƒ .

If you would like official Godot support for the Raspberry Pi, there is a proposal about it. Go there and give us a thumbs up so we can get it ๐Ÿ‘ ๐Ÿ˜‰ !

Table of contents

Compiling

See COMPILING.

Status

This table refers to the Raspberry Pi 4 only. Prior version are untested.

2.1.6 3.1.2 3.3.4 3.4
Editor โœ“ * โœ“ โœ“
Export template โœ“ โœ“ โœ“ โœ“
Headless - ** ** **
Server - ** ** **
  • โœ“: Works perfectly.
  • *: It works, but it's laggy/unresponsive at fullscreen (1920x1200). Making the editor 1/2 or 1/3 of that size makes it run better.
  • **: Untested, but should work fine.

๐Ÿ“ฅ Downloads

2.1.6

3.1.2

Each ZIP file contains: Editor, Export template, Headless and Server.

3.3.4

Each ZIP file contains: Editor, Export template, Headless and Server.

3.4

Each ZIP file contains: Editor, Export template, Headless and Server.

๐Ÿš€ How to launch the Editor

To open the editor, run:

./godot_x.x.x_rpi4_editor.bin

(where x.x.x is the version of Godot).

You might need to give executable permissions to the binary. If that's the case, run:

sudo chmod +x godot_x.x.x_rpi4_editor.bin

๐Ÿค– How to export a game using the Export Templates

You don't have to use a Raspberry Pi to export a game for it. You can use any computer running any OS supported by Godot.

Godot 2.x

  • In the editor, go to Export.
  • Select the Linux/X11 template.
  • In Debug, uncheck Debugging Enabled.
  • In Custom Binary -> Release, select the version of the export template that matches the version of your project.
  • In Binary, uncheck 64 bits.
  • Click Export.
  • You can use the .rpi4 extension when naming the exported game.

Godot 3.x

  • In the editor, go to Project -> Export.
  • Select the Linux/X11 template.
  • In Binary Format, uncheck 64 bits.
  • In Custom template -> Release, select the version of the export template that matches the version of your project.
  • Click Export Project.
  • Uncheck Export With Debug.
  • Optionally, after the game is packed, you can rename the extension of the game's executable binary from .x86 to .rpi4 to avoid confusion.

๐Ÿ—ƒ๏ธ How to export an independent PCK file

You can export a .pck file and run it with the export templates from this repository.

Godot 2.x

  • In the editor, go to Export.
  • Select the Linux/X11 template.
  • In Binary, uncheck 64 bits.
  • Click Export PCK/ZIP.
  • Enter the name of your game with the .pck extension.
  • Click OK.

Godot 3.x

  • In the editor, go to Project -> Export.
  • Select the Linux/X11 template.
  • In Binary Format, uncheck 64 bits.
  • Click Export PCK/ZIP.
  • Uncheck Export With Debug.
  • Enter the name of your game with the .pck extension.
  • Click Save.

๐ŸŽฎ How to run a game

Case 1

  • The is no .pck file (meaning that it's embedded/compiled in the executable binary).
  • The .pck file has the same name as the executable binary and they are both in the same directory.

You can just run the executable binary, like this:

./name_of_your_godot_game.ext

Case 2

  • The .pck file has a different name than the executable binary.
  • The .pck file is in a different directory than the executable binary.
  • You are using an independent .pck file (without an executable binary).

You'll have to pass the .pck file's path using the --main-pack option, like this:

./godot_x.x.x_rpi4_export-template.bin --main-pack "/path/to/the/pck/file.pck"

โ„น๏ธ Troubleshooting

A game doesn't launch or crashes

If the game you are trying to play doesn't work, it will most likely be because it was made with another version of Godot.

It could also be because it uses GDNative or C#, which the Raspberry Pi binaries doesn't support.

Force Godot to use the GLES2 video render

If you get this error when trying to play a game:

Your video card driver does not support any of the supported OpenGL versions. Please update your drivers or if you have a very old or integrated GPU upgrade it.

It means that the game you are trying to run uses the GLES3 video driver, which the Raspberri Pi doesn't support.

You'll have to force Godot to use the GLES2 video driver by passing the --video-driver GLES2 parameter, like this:

./godot_x.x.x_rpi4_export-template.bin --main-pack "/path/to/the/pck/file.pck" --video-driver GLES2

๐Ÿ—’๏ธ Changelog

See CHANGELOG.

๐Ÿ‘ค Author

hiulit

๐Ÿค Contributing

Feel free to:

๐Ÿ™Œ Supporting this project

If you love this project or find it helpful, please consider supporting it through any size donations to help make it better โค๏ธ .

Become a patron

Suppor me on Ko-Fi

Buy me a coffee

Donate Paypal

If you can't, consider sharing it with the world...

... or giving it a star โญ๏ธ .

Thank you very much!

๐Ÿ‘ Credits

Thanks to:

๐Ÿ“ Licenses

Download

Unofficial-Godot-Engine-Raspberry-Pi.zip

Comments(11)

  • 1

    Building in 64bit OS

    Hi,

    i've been trying to get the headless compile running for the 64 bit Raspberry Pi OS, but I keep getting errors like so:

    In file included from /usr/lib/llvm-10/lib/clang/10.0.0/include/xmmintrin.h:13:
    /usr/lib/llvm-10/lib/clang/10.0.0/include/mmintrin.h:33:5: error: use of undeclared identifier '__builtin_ia32_emms'; did you mean '__builtin_isless'?
        __builtin_ia32_emms();
        ^
    
    

    Is there a known way around this error?

  • 2

    Server builds?

    Would it be possible to use one of these as a server? I think it'd be best to get a dedicated server build as it would not require a desktop environment or even a graphics driver

  • 3

    Raspberry PI OS 64bit

    Hi,

    I can't get Godot IDE 3.2.4 RC 1 to run on Raspberry PI OS 64bit see output from Terminal below. To me it looks like it is trying to use libXcursor1 which doesn't exist but I do have libxcursor1 (no capital X) installed

    [email protected]:~/Desktop/godot_3.2.4.rc.1_rpi4_editor $ ./godot_3.2.4.rc.1_rpi4_editor.bin
    ./godot_3.2.4.rc.1_rpi4_editor.bin: error while loading shared libraries: libXcursor.so.1: cannot open shared object file: No such file or directory
    

    [email protected]:~/Desktop/godot_3.2.4.rc.1_rpi4_editor $ sudo chmod +x godot_3.2.4.rc.1_rpi4_editor.bin

    No errors Tried running again same error

    [email protected]:~/Desktop/godot_3.2.4.rc.1_rpi4_editor $ sudo apt install -y libXcursor1
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    E: Unable to locate package libXcursor1
    

    So i checked without the capital x and there is a package and i have the latest version.

    [email protected]:~/Desktop/godot_3.2.4.rc.1_rpi4_editor $ sudo apt install -y libxcursor1
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    libxcursor1 is already the newest version (1:1.1.15-2).
    0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
    [email protected]:~/Desktop/godot_3.2.4.rc.1_rpi4_editor $ 
    
  • 4

    Interest in building each public release dating back to 2016?

    Firstly, many thanks for this project and documenting how to compile the engine and tools on a Raspberry Pi. I found myself needing to test Godot version 2.1.4 on a Raspberry Pi 400 and I was able to build it on Buster from the df70d283d8 commit with success.

    Given that there are 36 stable releases of Godot at the time of writing this, I'm wondering whether it's worthwhile building the other stable versions of the project for this target? The value would be in the ease of opening any existing Godot project. Anything to lessen the work of bringing existing games across seems like a good thing to do.

    I'm willing to try this with my Pi 400 as I believe in it's potential as a console / A600-like. I'm not sure however if it's something you would welcome into this repo or whether it's something I should pursue independently?

    Let me know what you think?

  • 5

    Godot 4.0 on 64bit Ubuntu recipe (WIP/RFC)

    Hiya,

    This is more of a heads up and a request for review rather than an actual issue.

    For background I'm familiar with the Pi, Raspbian and various flavours of OpenGL/ES but I'm a noob to: Godot, 64 bit Pi and Ubuntu on Pi.

    I would like to get Godot 4.0 up and running on a PI and I want to play with GodotVR.

    I could not see a performant way* to get Godot 3.x to work for my use case on Raspbians' OpenGL/ES and GCC versions. (Clang NEON headers are missing NEON definitions that are present in Buster's GCC 8.x, but 8.x GCC is not supported by Godot; I tried binary 9.x, 10.x installs, it didn't go well the first time...)

    *I did get my PSVR headset to work with the GodotVR demo (when modified to use the OpenHMD driver), but I had to resort to software OpenGL rendering... eek

    So... I had a cunning plan....

    I'm currently building mainline Godot (which is 4.0 bleeding edge AFAIK and OpenGLES 3.x based, no OpenGL) on a Pi 400 using 64bit Ubuntu Desktop.

    I've have the godot openhmd driver compiled. (It uses OpenGLES 3.0 shaders)

    I had to tweak the Godot scons build parameters and have made progress, but, after hours of trial and error and many hours of compilation I've run out of disk space lol. So dont know yet if it works... I will resume with a large SD shortly.

    However, in the meantime I'd be interested in any feedback or tips and advice please. (As I foresee more 'fun' required till I see the demo run, those ABI warnings have the potential to bring the house down )

    The build instructions I have so far are:

    sudo apt-get install -y build-essential scons pkg-config libx11-dev libxcursor-dev libxinerama-dev \
        libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev libfreetype6-dev libssl-dev libudev-dev \
        libxi-dev libxrandr-dev yasm git scons cmake
    
    git clone https://github.com/godotengine/godot.git
    cd godot
    scons platform=x11 target=release_debug tools=yes  module_denoise_enabled=no 
    

    Of note are:

    • I removed ARM MCU flags as according to (the obvious error, but confirmed by sources) they are not required for AARCH64, please review
    • There are many ABI related warnings such I wonder if this this will actual run once complied: https://github.com/godotengine/godot/issues/41160

    This is kinda pre-emptive, but it would be good to get some feedback if possible please (as I'm at least 3 hours away from compilation time lol)

    Thanks for all your previous Pi work, it was really helpful to get into this in the first place.

    All the best Wayne

  • 6

    Can't run binaries in a VM

    I am trying to help my brother install Godot on a Raspberry Pi 400 I got him and part of that has been trying to install stuff in a raspbian VM so I can figure out how to get everything to work before having him try.

    When I unzip the binaries and run both the raspberry pi 3 and 4 versions and run ./godot_3.3.3-stable_rpiX_editor_lto.bin I just get /lib/ld-linux-armhf.so.3: No such file or directory.

  • 7

    Update to Godot 3.3

    I'm sure you are aware of the release yesterday of Godot 3.3. Just seeing if a build for the Pi is on the horizon? Thank you!!!

    https://godotengine.org/article/godot-3-3-has-arrived

  • 8

    64 bit version for Raspi 3

    Hello I noticed that the binaries for Raspberry Pi are in 32 bit would like to know what it would take to compile it into 64 bit

    Currently on raspi 3B

  • 9

    Not working on Raspberry Pi 1 - "illegal instruction" error

    Running editor or any build with export templates for rpi1 I get "illegal instruction", is this was build with ARMv7? RPi1 uses ARMv6 so maybe this is the cause of "illegal instruction" error?

  • 10

    3.4.4 Editor Issues

    Hi! I'm trying to run the 3.4.4 editor on an arm64 Raspberry Pi 4. I downloaded the correct version, and launched the project manager, which went perfectly when creating a project and running asset library projects from godotengine.org. However, after I've edited an existing project and I run it, I get repeated DRM_IOCTL_MODE_CREATE_DUMB failed: Cannot allocate memory Failed to create scanout resource in the terminal, and the godot window seems to be transparent after that. I have to kill the process and restart it to access the editor.

    Thanks in advance

  • 11

    Video support not working - pi 4 & 3

    hello, i trying to do an small app that play videos on raspberry pi, but the game canยดt load or work with videos , giving me these errors : unknown

    same error, webm or ogv

    if requested, i can upload the concept test project, itยดs small ( just 55 MB)

    all the project are doing with VisualScripting

    of course, this error occurs only using the export template binary