Hello everyone!
I'm Marcin and I'm new here. I'm playing with Godot for about month and I like the engine and editor very much. I read almost everywhere that Godot 4.0 is faster due to Vulkan implementation, not mentioning a better quality. And yes, Godot 4.x has brilliant new features, many improvements, and many problems solved comparing to 3.4. But on my setup there is a catch: 4.0 is slower than 3.4 even in very simple scenes. It's nothing hard to go down to ~25fps on 1280x720.
I understand complexity of measuring and comparing performance on two quite different engines, so I'm NOT trying to achieve more fps in all cases. The problem is that there is quite easy to go below 60fps on 1920x1080. Just with one sky, one light and few cubes.
I created very simple project for testing, where all costly features are disabled (ssao, ss reflections, dof, glow, etc.). Also FXAA, MSAA, etc. are disabled, and every render option in project settings is set to a fastest mode. Only shadows are enabled. Then I converted this project to 4.0. Results for the scene rendered on 1920x1080 resolution: ~100-110 fps for Godot 3.4 (GLES3), ~65-70fps for Godot 4.0 (Vulkan). There is no complex _process nor physics (just one RigidBody).
My setup is:
System:
Host: x Kernel: 5.10.93-1-MANJARO x86_64 bits: 64
Desktop: GNOME 41.3 Distro: Manjaro Linux
Machine:
Type: Laptop System: Dell product: Precision 3520 v: N/A
serial: <superuser required>
Mobo: Dell model: 0G0G6Y v: A00 serial: <superuser required> UEFI: Dell
v: 1.20.2 date: 06/03/2021
Memory:
RAM: total: 15.51 GiB used: 7.01 GiB (45.2%)
RAM Report:
permissions: Unable to run dmidecode. Root privileges required.
CPU:
Info: quad core model: Intel Core i7-7700HQ bits: 64 type: MT MCP cache:
L2: 1024 KiB
Speed (MHz): avg: 932 min/max: 800/3800 cores: 1: 900 2: 971 3: 1000
4: 993 5: 900 6: 899 7: 900 8: 900
Graphics:
Device-1: Intel HD Graphics 630 driver: i915 v: kernel
Device-2: NVIDIA GM107GLM [Quadro M620 Mobile] driver: nvidia v: 495.46
Device-3: Realtek Integrated Webcam_HD type: USB driver: uvcvideo
Display: x11 server: X.Org 1.21.1.3 driver: loaded: modesetting
unloaded: nvidia resolution: 1: 1920x1080~60Hz 2: 1920x1080~60Hz
OpenGL: renderer: Mesa Intel HD Graphics 630 (KBL GT2) v: 4.6 Mesa 21.3.4
The system is up to date.
It's worth mentioning that I'm running many games from Steam through Proton with very good results (usually at mid quality with SSAO disabled). I checked Unreal Engine with it's FPS project template, and it is running just fine. I understand that Godot 4.0 is in alpha stage, but I think that such performance drop is not expected. There are many posts and videos about stressing out the engine (r/godot for example), and everyone is telling that 4.x is far better in terms of performance and quality. I understand that my issue may be related to the hardware and/or drivers. But as far I know Vulkan is just an API, where many things are dependent on the implementation.
So is possible that Vulkan implementation in Godot 4.x is somehow not performant for some hardware setups? Should I talk with devs, or should I search for the cause somewhere else (but where)?
Godot 4.x
Godot 3.4
Kind Regards, Marcin