Godot 4.x on the Raspberry Pi

I’d like to initiate a discussion in this thread regarding running Godot 4 on the Raspberry Pi. I have a Raspberry Pi 5 8 GB Model and can’t run Godot 4.2 with the Vulkan render. Also have very bad experience with using OpenGLES. I’m curious to hear about your experiences. Have any of you successfully run Godot 4 on the Raspberry Pi 5, especially with Vulkan rendering?

5 Likes

I believe @Akien worked on getting this to run, he made some tweets about it: https://twitter.com/Akien/status/1727806022792712332
But not sure of the current status of it.

1 Like

Well, I scrolled through the tweet and it seems like Godot 4.2 isn’t running on the Pi 5 yet because of segfaults, but it should be supported in a later 4.2.x releases, hopefully.

I did also a lot of testing in the past and compiled Godot 4.2 with different arguments but I’m also getting the same bad results

So I’ve done some testing on Raspberry Pi 5 8GB RAM indeed, all on RPi OS.

What I found out so far:

  • Our new official Linux arm64 binaries in 4.2 (added to the official set of binaries a few weeks ago) don’t work on RPi OS, they segfault. This seems caused by the toolchain we use for cross-compilation, I’ll need help from @hp to fix it. I’m told those same binaries work on Ubuntu 23.10 on RPi 5, so it might be a RPi OS specific bug. Still something we need to fix as it’s the base distro.

  • Self compiled binaries on real arm64 hardware, or possibly cross-compiled with other toolchains (e.g. clang aarch64 target) should work fine however. So the segfault is really just a problem with how we do the builds, not with Godot itself.

  • With a self-compiled build, I was able to test how things work. Both Vulkan and OpenGL ES seem to work ok. For Vulkan, note that RPi OS does not install Vulkan drivers out of the box, you have to install mesa-vulkan-drivers. Other distros might have similar oversights.

  • I haven’t had luck opening 3D projects with meshes like Kenney’s FPS Starter Kit. I think there’s a problem with VRAM compression of textures, and generally it seemed to take forever to import assets. I might have just given up too fast.

  • It’s easy to exhaust the resources of the RPi 5 and make RPi OS deadlock, possibly due to thermal throttling. Though my first tests were done before installing Active Cooling, now with the fan it seems to be doing ok.

  • There’s still a lot more to test and optimize, but for now I want to fix our official binaries.

8 Likes

It’s a bit awkward to cross-post as we have discussions both on godot-proposals and here, but here’s an update: https://github.com/godotengine/godot-proposals/issues/988#issuecomment-1851759653

As of 4.2.1, it should be working fine :slight_smile:

At least the binaries are functional in my tests. Anything that can be reasonably expected to work but doesn’t, should be reported as bugs on GitHub.

I’ll also work on providing such binaries for 3.6 hopefully next month.

2 Likes

Thanks for notifying!

I wanted to test it on a fresh new copy of Pi OS so I installed a new Pi OS Distro with Pi Imager.
After updating I installed the mesa tools and mesa drivers.
Then after rebooting I downloaded a copy of Godot 4.2.1 from tuxfamily.
I run it with --rendering-driver vulkan.
Creating a new project seems to work but loading any Project from the asset library leads to freezes.
So I added the lines

[rendering]
renderer/rendering_method="gl_compatibility"

because it worked in previous versions I think, but it also freezes this time. I tried it with 4 different projects but it always frezzes the entire OS so I have to restart. I can’t really tell why this happens because I have no clue, sorry.

Just tried myself…

Built it locally, following the instructions from the website:

git clone https://github.com/godotengine/godot.git
cd godot
scons platform=linuxbsd
sudo apt install vulkan-tools mesa-vulkan-drivers
bin/godot.linuxbsd.editor.arm64 --rendering-driver vulkan

This all seems to work ok. But when starting something I clearly see it is actually starting the game without the --rendering-driver vulkan and therefore is trying OpenGL (and dropping back to GLES).

If instead I use:

bin/godot.linuxbsd.editor.arm64 --path "./Classic 2D Shooter" --rendering-driver vulkan

It is working properly and the game is using Vulkan… Is there something missing to pass the relevant rendering-driver argument to the debug/running process?

@Tentakel I’ll give it a try too. Can you tell me which projects your tried? I’ve had good success with simple 2D projects like Candy Wrapper which you can download in the asset lib.

With bigger 3D projects like Kenney’s starter kits, I’ve also had some freezes due to the CPU overheating while importing assets. I haven’t tried since putting the Active Cooler on though, I’ll have to do more experimenting.


@gholling: The rendering driver is something that can be configured per-project, and the “Classic 2D Shooter” project you installed is configured to use the “GL Compatibility” renderer by default. So it’s expected that it starts with it.

You can override this on the command line as you did, or change it in the Project Settings for that project.

If you create a new project from the project manager, you can choose which renderer you want to use, and it should use that when editing said project.

I tested 4.2.1 and confirm that Vulkan projects are crashing the V3D driver.

Here’s the errors from dmesg:

[   99.373663] v3d 1002000000.v3d: MMU error from client PTB (1) at 0xc7ed4400, pte invalid
[  119.892156] Unable to handle kernel paging request at virtual address ffffc00009738000
[  119.900116] Mem abort info:
[  119.902917]   ESR = 0x0000000096000047
[  119.906684]   EC = 0x25: DABT (current EL), IL = 32 bits
[  119.912017]   SET = 0, FnV = 0
[  119.915079]   EA = 0, S1PTW = 0
[  119.918229]   FSC = 0x07: level 3 translation fault
[  119.923125] Data abort info:
[  119.926012]   ISV = 0, ISS = 0x00000047
[  119.929861]   CM = 0, WnR = 1
[  119.932835] swapper pgtable: 16k pages, 47-bit VAs, pgdp=000000000123c000
[  119.939651] [ffffc00009738000] pgd=100000010018c003, p4d=100000010018c003, pud=100000010018c003, pmd=1000000100190003, pte=0000000000000000
[  119.952239] Internal error: Oops: 0000000096000047 [#1] PREEMPT SMP
[  119.958527] Modules linked in: rfcomm snd_seq_dummy snd_hrtimer snd_seq snd_seq_device algif_hash algif_skcipher af_alg bnep hci_uart binfmt_misc btbcm bluetooth aes_ce_blk aes_ce_cipher brcmfmac ghash_ce gf128mul sha2_ce sha256_arm64 sha1_ce brcmutil rpivid_hevc(C) pisp_be raspberrypi_hwmon v4l2_mem2mem cfg80211 ecdh_generic videobuf2_dma_contig videobuf2_memops ecc libaes videobuf2_v4l2 videobuf2_common rfkill videodev mc pwm_fan raspberrypi_gpiomem rp1_adc nvmem_rmem uio_pdrv_genirq uio i2c_dev fuse dm_mod ip_tables x_tables ipv6 vc4 snd_soc_hdmi_codec drm_display_helper cec drm_dma_helper drm_kms_helper spidev v3d syscopyarea sysfillrect gpu_sched sysimgblt drm_shmem_helper fb_sys_fops drm spi_bcm2835 snd_soc_core drm_panel_orientation_quirks snd_compress snd_pcm_dmaengine snd_pcm i2c_brcmstb snd_timer gpio_keys snd backlight
[  120.032423] CPU: 0 PID: 2014 Comm: godot.linuxbsd. Tainted: G         C         6.1.0-rpi7-rpi-2712 #1  Debian 1:6.1.63-1+rpt1
[  120.043861] Hardware name: Raspberry Pi 5 Model B Rev 1.0 (DT)
[  120.049711] pstate: 80400009 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[  120.056697] pc : v3d_mmu_insert_ptes+0xc0/0x154 [v3d]
[  120.061773] lr : v3d_mmu_insert_ptes+0x6c/0x154 [v3d]
[  120.066844] sp : ffffc0000ad8bba0
[  120.070163] x29: ffffc0000ad8bba0 x28: ffffc0000ad8bd38 x27: 0000000000000010
[  120.077324] x26: ffffc0000ad8bd38 x25: ffff800106760800 x24: 0000000000000042
[  120.084485] x23: ffff800106760800 x22: ffff8001079a0000 x21: 0000000000100004
[  120.091645] x20: ffff8001fb1e2000 x19: 0000000000ffffff x18: 0000000000000100
[  120.098806] x17: 0000000000000000 x16: ffffd0000c6472f0 x15: ffffd0000d16c008
[  120.105967] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
[  120.113127] x11: 0000000000000001 x10: 0000000000000000 x9 : ffffcfff96ac0260
[  120.120287] x8 : ffff8001079a0700 x7 : 0000000000003fff x6 : ffff8001fb1d5520
[  120.127448] x5 : 0000000000100000 x4 : ffffc00009338000 x3 : 0000000000100000
[  120.134609] x2 : 00000000301fb307 x1 : 0000000000100001 x0 : 00000000301fb308
[  120.141769] Call trace:
[  120.144215]  v3d_mmu_insert_ptes+0xc0/0x154 [v3d]
[  120.148936]  v3d_bo_create_finish+0xd0/0xf0 [v3d]
[  120.153658]  v3d_create_bo_ioctl+0x50/0x150 [v3d]
[  120.158379]  drm_ioctl_kernel+0xd0/0x180 [drm]
[  120.162878]  drm_ioctl+0x214/0x430 [drm]
[  120.166843]  __arm64_sys_ioctl+0xb4/0xfc
[  120.170778]  invoke_syscall+0x50/0x120
[  120.174536]  el0_svc_common.constprop.0+0x68/0x124
[  120.179340]  do_el0_svc+0x34/0xd0
[  120.182661]  el0_svc+0x30/0x94
[  120.185721]  el0t_64_sync_handler+0xf4/0x120
[  120.190001]  el0t_64_sync+0x18c/0x190
[  120.193671] Code: 2a0103e3 11000421 4b050020 0b020000 (b8237880) 
[  120.199784] ---[ end trace 0000000000000000 ]---
[  135.511266] Unable to handle kernel paging request at virtual address ffffc00009738080
[  135.519234] Mem abort info:
[  135.522126]   ESR = 0x0000000096000047
[  135.525897]   EC = 0x25: DABT (current EL), IL = 32 bits
[  135.531235]   SET = 0, FnV = 0
[  135.534297]   EA = 0, S1PTW = 0
[  135.537447]   FSC = 0x07: level 3 translation fault
[  135.542419] Data abort info:
[  135.545351]   ISV = 0, ISS = 0x00000047
[  135.549222]   CM = 0, WnR = 1
[  135.552199] swapper pgtable: 16k pages, 47-bit VAs, pgdp=000000000123c000
[  135.559049] [ffffc00009738080] pgd=100000010018c003, p4d=100000010018c003, pud=100000010018c003, pmd=1000000100190003, pte=0000000000000000
[  135.571665] Internal error: Oops: 0000000096000047 [#2] PREEMPT SMP
[  135.577955] Modules linked in: rfcomm snd_seq_dummy snd_hrtimer snd_seq snd_seq_device algif_hash algif_skcipher af_alg bnep hci_uart binfmt_misc btbcm bluetooth aes_ce_blk aes_ce_cipher brcmfmac ghash_ce gf128mul sha2_ce sha256_arm64 sha1_ce brcmutil rpivid_hevc(C) pisp_be raspberrypi_hwmon v4l2_mem2mem cfg80211 ecdh_generic videobuf2_dma_contig videobuf2_memops ecc libaes videobuf2_v4l2 videobuf2_common rfkill videodev mc pwm_fan raspberrypi_gpiomem rp1_adc nvmem_rmem uio_pdrv_genirq uio i2c_dev fuse dm_mod ip_tables x_tables ipv6 vc4 snd_soc_hdmi_codec drm_display_helper cec drm_dma_helper drm_kms_helper spidev v3d syscopyarea sysfillrect gpu_sched sysimgblt drm_shmem_helper fb_sys_fops drm spi_bcm2835 snd_soc_core drm_panel_orientation_quirks snd_compress snd_pcm_dmaengine snd_pcm i2c_brcmstb snd_timer gpio_keys snd backlight
[  135.651879] CPU: 2 PID: 991 Comm: wayfire Tainted: G      D  C         6.1.0-rpi7-rpi-2712 #1  Debian 1:6.1.63-1+rpt1
[  135.662533] Hardware name: Raspberry Pi 5 Model B Rev 1.0 (DT)
[  135.668383] pstate: 80400009 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[  135.675371] pc : v3d_mmu_insert_ptes+0xc0/0x154 [v3d]
[  135.680451] lr : v3d_mmu_insert_ptes+0x6c/0x154 [v3d]
[  135.685525] sp : ffffc0000a19bba0
[  135.688844] x29: ffffc0000a19bba0 x28: ffffc0000a19bd38 x27: 0000000000000010
[  135.696007] x26: ffffc0000a19bd38 x25: ffff8001073b8e00 x24: 0000000000000042
[  135.703167] x23: ffff8001073b8e00 x22: ffff8001079a0000 x21: 0000000000100024
[  135.710328] x20: ffff8001ed3c7400 x19: 0000000000ffffff x18: 0000000000000100
[  135.717488] x17: 0000000000000000 x16: ffffd0000c6472f0 x15: ffffd0000d16c008
[  135.724649] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
[  135.731809] x11: 0000000000000001 x10: 0000000000000000 x9 : ffffcfff96ac0260
[  135.738970] x8 : ffff8001079a0700 x7 : 0000000000003fff x6 : ffff8001ed4ee7a0
[  135.746131] x5 : 0000000000100020 x4 : ffffc00009338000 x3 : 0000000000100020
[  135.753291] x2 : 00000000301fb34b x1 : 0000000000100021 x0 : 00000000301fb34c
[  135.760452] Call trace:
[  135.762898]  v3d_mmu_insert_ptes+0xc0/0x154 [v3d]
[  135.767620]  v3d_bo_create_finish+0xd0/0xf0 [v3d]
[  135.772343]  v3d_create_bo_ioctl+0x50/0x150 [v3d]
[  135.777064]  drm_ioctl_kernel+0xd0/0x180 [drm]
[  135.781563]  drm_ioctl+0x214/0x430 [drm]
[  135.785529]  __arm64_sys_ioctl+0xb4/0xfc
[  135.789463]  invoke_syscall+0x50/0x120
[  135.793221]  el0_svc_common.constprop.0+0x68/0x124
[  135.798026]  do_el0_svc+0x34/0xd0
[  135.801347]  el0_svc+0x30/0x94
[  135.804407]  el0t_64_sync_handler+0xf4/0x120
[  135.808687]  el0t_64_sync+0x18c/0x190
[  135.812357] Code: 2a0103e3 11000421 4b050020 0b020000 (b8237880) 
[  135.818470] ---[ end trace 0000000000000000 ]---

Won’t have time to look into this in the next couple of weeks, but I’ll aim to get this debugged next year :slight_smile:

In the meantime, it seems indeed that only OpenGL works properly with the current 4.2.1 binaries.

1 Like

Can you tell me which projects your tried?

I don’t remember exactly because I boot up my Pi only every few days when I’m home, but all of them were 3D projects, yes, one of them was the Kenney 3D example project. I always run the Pi with an active cooler.

Won’t have time to look into this in the next couple of weeks, but I’ll aim to get this debugged next year

Good to hear that the Raspberry Pi has some kind of priority in the Godot Development now. I am excited how the performance will be in the future when you are able to run games with Vulkan :smiley:

I have been testing Godot 4.2.1 on 8G Raspberry Pi (standard RPi OS install).

A quite complex 2D project from x86 linux system will run in compatability mode. Mobile or forward render cause it to crash during project loading.

If I start a new project using 4.2.1, I can make some nodes with color rectangles, labels and panels and edit them. They run correctly in a debug window. I can close the scene and reload it - that works fine.

When I save the scene and exit the editor, restarting Godot 4.2.1 and loading the project to edit causes godot to crash out. I did this several times with the same result. The editor starts, proceeds to a Godot splash screen, then the 3D view, and where it would normally switch to the loaded 2D project, that is where it crashes out.

I am seeing exactly the same behaviour with my complex project and the simple Panel + Label test projects, so it appears to be related to loading the project from the project folder. Once you quit to project List, you cannot load a mobile project.

Here is the section of the project.godot file that DOES work by forcing compatibility mode.

[rendering]

renderer/rendering_method=“gl_compatibility”
textures/vram_compression/import_s3tc_bptc=true
quality/driver/driver_name=“GLES3”
2d/snapping/use_gpu_pixel_snap=true
quality/filters/msaa=2
environment/default_environment=“res://default_env.tres”
quality/2d/use_pixel_snap=true

1 Like

Raspberry Pi 5 is the test device I am using.

Next test - making a simple project (without reloading it) and then exporting it to an arm64 executable.

This works. The executable is 54MB and seems to be a normal windowed app.

The export build gives these errors in the editor -

Cannot save editor settings to file ‘res://.godot/editor/project_metadata.cfg’.
Cannot create file ‘res://.godot/exported/133200997/export-362256a061aa8890e9a1e558b11e5ec3-node_2d.scn’.
Unable to save export scene file to: res://.godot/exported/133200997/export-362256a061aa8890e9a1e558b11e5ec3-node_2d.scn
editor/export/editor_export_platform.cpp:1305 - Error opening export file cache: res://.godot/exported/133200997/file_cache
Can’t open file from path ‘res://.godot/global_script_class_cache.cfg’.
Cannot save editor settings to file ‘res://.godot/editor/project_metadata.cfg’.

The executable terminal shows some errors (despite running the app correctly).

ERROR: Error opening file ‘res://icon.svg’

Next test - do the mobile render projects RUN from the Project Manager?
Yes. If you try and edit them, then the editor crashes out, but the projects RUN.

Does the complex project behave the same?
No - when converted to Mobile Render, it crashes with RUN and EDIT.

So - it looks like there are two problems - A editor LOAD issue and a Vulkan driver issue.

1 Like

Thanks for the detailed testing report! I’ll try to reproduce the issues too.

For this specifically, I think it’s not an issue with the Linux ARM builds actually, it’s “working as intended” (but confusingly).

An exported build puts the project in a .pck archive, which is read-only. It’s only meant to be used with an export template binary (runtime) to run the project. It’s not supported to be opened with the editor.

I think a .pck can technically be read and opened by the editor, but as the editor is not designed to work on a read-only filesystem, it throws a bunch of errors like the ones you listed. E.g. it can’t write to res://.godot because that path is within the .pck file which is read-only.

1 Like

If you guys can solve the project load issues, I can selectively disable parts of my complex project to isolate the part that is crashing.

Most of that project is just static textures and buttons. The active parts are an animated slider with a whole lot of line draws, and a a random block draw in a 360x240 texture rect -

func _process(_delta):
	var x = rng.randi() % 352
	var y = rng.randi() % 232
	Render_BM.fill_rect(Rect2i(x,y, 8,8), Color8(rng.randi() % 256,rng.randi() % 256, rng.randi() % 256))
	texture.update(Render_BM)

I should be able to find the bit that is causing trouble with the vulkan mobile renderer.

Maybe related, when I revert to the compatability mode, the project runs in a debug window, but I let it run for 3 days and it froze. The debug process had disappeared from the process list, and when I forced the Godot 4.3dev2 editor to close, the video buffer for that workspace was corrupted or broken.

I am rerunning that experiment with a compiled version of the project (no debug) and will see if that runs indefinitely. I will also try the same project on a x86 machine to see if that can run indefinitely.

It is still dev release, but I guess all data points are useful.

1 Like

Any updates so far?

OK - I just started testing dev4. We have fixes and improvements! Testing using a Pi5 8G and standard RPi OS.

Simple projects with a 2d panel node now RUN and also EDIT correctly. The editor appears to be working correctly. Running the project in DEBUG works and correctly reports Vulkan Driver and the VC7 GPU. So - that is all good.

My more complex project (with Mobile enabled) now RUNs from the project select page, but the .png backdrop images are corrupt and show bad data in tiles (256x256 I think). The GDscript code that draws blocks on an image and updates to a texture actually seems to work OK. An attempt to EDIT this project crashes when the editor proceeds to swap from the initial 3D space to the 2D space.

My guess is that because this project was originally built in Godot 3, the conversion to G4 has problems. What I will do is to start with a clean G4.3 project, and gradually add things to the project until I see a repeatable error. That should at least help identify if there is a problem interfacing with the Mobile Vulkan driver.

I suspect that what I am seeing might just be a problem with converting old G3 code base - which is probably not unexpected. Either way, I should be able to post something helpful fairly soon.

Pi 5 G4.3dev4 Mobile

TexureRect is failing with loaded images larger than 1Mpixel. 1920x1080 exhibits black bands horizontal and vertical, it looks like 64 pixel boundaries.

Smaller images load correctly.
1920x1080 - horizontal and vertical black bars 64 pixels wide
1024x1024 - horizontal black bars 64 pixels wide
1200x800 - good
800x1200 - good
640x480 - good

.png and .jpg behave the same.

Also, the thumbnails in the UI reflect the image corruption.

If I load an image < 1Mpix and expand it, there is no problem.

A 1920x1080 image with exactly the same (apart from uuid) .import file loads correctly with Compatability Mode.

Tested x86 project in both Forward and Mobile and no problem in either mode.
Based on this, it looks like the problem is with loading the texture file into Vulkan in Mobile.
.
.
.
.
.
Here are the terminal outputs of a successful and a failed project load with Mobile.

FAILED:-

Vulkan 1.2.255 - Forward Mobile - Using Device #0: Unknown - V3D 7.1.7
WARNING: Invalid/corrupt pipelines cache.
at: pipeline_cache_create (drivers/vulkan/rendering_device_driver_vulkan.cpp:3832)
Requested V-Sync mode: Disabled

pi5@raspberrypi:~/Godot $ ERROR: Condition “!preset.is_valid()” is true. Continuing.
at: load_config (editor/export/editor_export.cpp:234)

Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
.
. < hundreds of these BO messages >
.
.
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
failed to allocate memory for command list
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO
Failed to allocate device memory for BO

handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.3.dev4.official (df78c0636d79c9545a283e0e2a926d623998cc27)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] linux-vdso.so.1(__kernel_rt_sigreturn+0) [0x7fa4f117bc] (??:0)
[2] /usr/lib/aarch64-linux-gnu/libvulkan_broadcom.so(+0x20ef50) [0x7f9083ef50] (??:0)
[3] /usr/lib/aarch64-linux-gnu/libvulkan_broadcom.so(+0x4bfe4) [0x7f9067bfe4] (??:0)
[4] /usr/lib/aarch64-linux-gnu/libvulkan_broadcom.so(+0x4cd14) [0x7f9067cd14] (??:0)
[5] /usr/lib/aarch64-linux-gnu/libvulkan_broadcom.so(+0x4e2b0) [0x7f9067e2b0] (??:0)
[6] /usr/lib/aarch64-linux-gnu/libvulkan_broadcom.so(+0x4e558) [0x7f9067e558] (??:0)
[7] /home/pi5/Godot/Godot_v4.3-dev4_linux.arm64() [0x304d86c] (??:0)
[8] /home/pi5/Godot/Godot_v4.3-dev4_linux.arm64() [0x30568d4] (??:0)
[9] /home/pi5/Godot/Godot_v4.3-dev4_linux.arm64() [0x3062dd8] (??:0)
[10] /home/pi5/Godot/Godot_v4.3-dev4_linux.arm64() [0x30666b8] (??:0)
[11] /home/pi5/Godot/Godot_v4.3-dev4_linux.arm64() [0x311f7ec] (??:0)
[12] /home/pi5/Godot/Godot_v4.3-dev4_linux.arm64() [0x4e7f0c] (??:0)
[13] /home/pi5/Godot/Godot_v4.3-dev4_linux.arm64() [0x408fac] (??:0)
[14] /lib/aarch64-linux-gnu/libc.so.6(+0x27780) [0x7fa4c07780] (??:0)
[15] /lib/aarch64-linux-gnu/libc.so.6(__libc_start_main+0x98) [0x7fa4c07858] (??:0)
[16] /home/pi5/Godot/Godot_v4.3-dev4_linux.arm64() [0x417400] (??:0)
– END OF BACKTRACE –

SUCCESS:-

pi5@raspberrypi:~/Godot $ ./Godot_v4.3-dev4_linux.arm64
Godot Engine v4.3.dev4.official.df78c0636 - https://godotengine.org
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:39:34: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:40:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:41:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:42:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:43:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:44:27: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:45:27: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:46:27: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:47:27: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:48:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:49:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:49:29: too many errors
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:49:29: failed to parse file
ERROR: Condition “ctxErrorOccurred || !gl_display.context->glx_context” is true. Returning: ERR_UNCONFIGURED
at: _create_context (platform/linuxbsd/x11/gl_manager_x11.cpp:183)
WARNING: Your video card drivers seem not to support the required OpenGL version, switching to OpenGLES.
at: DisplayServerX11 (platform/linuxbsd/x11/display_server_x11.cpp:6161)
OpenGL API OpenGL ES 3.1 Mesa 23.2.1-1~bpo12+rpt3 - Compatibility - Using Device: Broadcom - V3D 7.1

Editing project: /home/pi5/Godot/Godot4/Chroma-dev4
Godot Engine v4.3.dev4.official.df78c0636 - https://godotengine.org
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:39:34: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:40:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:41:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:42:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:43:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:44:27: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:45:27: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:46:27: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:47:27: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:48:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:49:29: string literal is not a valid UTF-8 string
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:49:29: too many errors
xkbcommon: ERROR: /usr/share/X11/locale/iso8859-1/Compose:49:29: failed to parse file
Vulkan 1.2.255 - Forward Mobile - Using Device #0: Unknown - V3D 7.1.7

pi5@raspberrypi:~/Godot $ WARNING: 1 RID of type “StorageBuffer” was leaked.
at: _free_rids (servers/rendering/rendering_device.cpp:5191)
WARNING: 1 RID of type “Framebuffer” was leaked.
at: _free_rids (servers/rendering/rendering_device.cpp:5191)
WARNING: 4 RIDs of type “Texture” were leaked.
at: finalize (servers/rendering/rendering_device.cpp:5344)

Godot 4.3 b1 seems to fix the crashing problem - project loads and so far so good. The problem with venetian blind corruption (banding) of images loaded persists with images having a dimension (x or y) greater than 1024. See above.

I have not tested 3d performance yet.

I tested it with Godot 4.3 Beta 1 and it is still not working with the Vulkan Drivers :pensive:

Hello, i have just stumbled upon this discussion and earlier, machine-code described exactly what error i am having right now. I can make a project just fine and start editing, but as so as i reach around 200 lines of code, close it and re-open, i get the Godot splash screen, the 3d view and then it crashes with the same error as machine-code had. Machine-code mentioned that this error was resolved in 4.3, but i am running 4.3.beta.custom_build and it crashes still, with and without the vulkan drivers. Please help