Unofficial Godot Engine for the Raspberry Pi
Unofficial Godot Engine binaries 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
- Status
- Downloads
- How to launch the Editor
- How to export a game using the Export Templates
- How to export an independent PCK file
- How to run a game
- Troubleshooting
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
- Raspberry Pi 4
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
, uncheckDebugging Enabled
. - In
Custom Binary -> Release
, select the version of the export template that matches the version of your project. - In
Binary
, uncheck64 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
, uncheck64 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
, uncheck64 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
, uncheck64 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:
- Open an issue if you find a bug.
- Create a pull request if you have a new cool feature to add to the project.
- Start a new discussion about a feature request.
๐
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
If you can't, consider sharing it with the world...
... or giving it a star
Thank you very much!
๐
Credits
Thanks to:
- Juan Linietsky (@reduz), Ariel Manzur (@punto-), Rรฉmi Verschelde (@akien-mga) and all the Godot contributors - For creating and maintaining the Godot Engine.
- Emanuele Fornara (@efornara) - For creating FRT - A Godot "platform" targeting single board computers.
- Krzysztof Jankowski @w84death - For the Raspberry Pi 4 as Perfect Indie Console blog post.
๐
Licenses
- Source code: MIT License.
- Godot - Game Engine: MIT License.
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:
Is there a known way around this error?
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
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 $ sudo chmod +x godot_3.2.4.rc.1_rpi4_editor.bin
No errors Tried running again same error
So i checked without the capital x and there is a package and i have the latest version.
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?
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:
Of note are:
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
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
.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
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
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?
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
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 :
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