Hello Godot Community !!
I am asking about the current Godot 4 performance in 3D. I think vulkan haven't fixed the performance issue in Godot 3D. I have seen some videos and then install Godot. I am using low end GPU R7 240 vulkan supported which at low resolution 720p using Unity Engine Giving 40+ in Vulkan and DX11. But in Godot I am getting 3 FPS in Abandoned Spaceship G4 even in 50% resolution scale 800x600. What is the problem. is any of You using GTX 950 or some mid range GPU ?

Well, that is a really really old GPU. It's from 10 years ago, and was low spec / entry level even at the time. That said, the performance on Godot 4 is not amazing. For the high end it's better, and you can enable more effects with good performance. But for the low end it's not great. Even on my laptop, which I got last year and is pretty powerful (AMD RX 6800) I only get 100 FPS with a simple scene. I imagine with a full game with particles and animation and everything it might not even be 60 FPS. So there is a lot of optimization to do honestly. You can try the mobile renderer, that may be slightly better, but probably not that much.

    cybereality Yes. I got your point. But this is not just GPU problem I have seen simple scenes in videos where people are using RTX 3070 or 3080 and getting 60. its Godot optimization and Garbage GDscipt which simply python a bad language and other factors. So, I think we have to wait for 3 years to fix these issues. Nim programming or same should be chosen for such things. Bad results. No optimizations on 3D side. I am so disappointed. Sad

    I don't think the issue is GDScript, as on my test scenes there was very little logic (just a spinning camera) and Godot 3.x handled it okay. I just don't think the Vulkan renderer is well designed. I haven't looked at the code, but it's much slower than some of the tests I've done with C++ Vulkan directly. Even so, that's not the whole story. Vulkan is a newer API and works better on newer GPUs (newer spec, more features, etc.). Your card came out actually before Vulkan did, and I guess they back-ported support. Which means it's likely very basic and not the full feature set you would get with a card that came out maybe 3 or 4 years ago (or newer). But you're right, I'm kind of disappointed too compared to all the hype they said about Godot 4.0 for like 5 years.

      cybereality I am talking about other people's benchmark with RTX 3080 which is 2 years old GPU. And look at the frustrating and bad FPS in 3D like only 60 using a high end GPU 3080. So, I am so sad older version of Godot 3.4 had a game on steam developed by one person and that simple game can't run on rtx 2060 super. thats what I mean

      • xyz replied to this.

        Here is another video. I am testing Vulkan API in Ogre3d SDK. 800x600 resolution same as godot I tested. Getting 60 FPS. All other scenes giving 60 FPS or 40+
        Link:

        Same thing with the second video. Framerate is fixed to 60 by vsync. So they don't really benchmark the max fps that gpu can pump out in the scene.
        You need to disable vsync to measure max framerate. In Godot, and probably most other engines, it's on by default.

        Also note that frame rate is not linearly dependent on scene complexity. Benchmarking it with too simple a scene can mislead you into thinking that the gpu is weaker than it really is.

        So yeah, VSync is on in the gun demo. You can see that CPU is like 9%, pretty good, and GPU usage jumps from 30 to 50%. Meaning the real FPS is likely 120 - 200 FPS. That said, it's hard to make any conclusion from that. You could say 200 FPS is still low for a scene with 1 gun and 2 hands, but there is a lot of fixed overhead in an engine that is running even in a blank scene. So it's likely the FPS would not drop linearly if you added 10 guns, for example.

        You can see here on my high-end RX 6950 XT, I can get over 1,100 FPS at 1080P.

        And you can see here on my custom Vulkan engine I'm working on, I get over double the performance (and it looks better too, I discovered Godot's color space is wrong, but that's another topic).

        However, this is just a renderer demo, no engine really. So there is little to no overhead in terms of everything else going on (scripting, physics, etc.). But it shows the theoretical maximum performance on my GPU in Vulkan.

        There are also numerous beautifying scene-wide features that won't affect gpu performance much on modern hardware but can cause serious hindrance on older cards. For example; screen space AO and reflections (their rendering method and textures sizes), various forms and qualities of spatial/temporal anti-aliasing, shadow rendering method and shadow map sizes, etc. So to get some sort of realistic benchmark, you need to disable vsync and provide toggle buttons for those types of features, to see how each in particular affects the performance of a specific piece of hardware.

          xyz Again new Video. Double may be 4x more performance. Vulkan API same low end gpu. Vsync off. its not about only graphics its about performance. if your game is unplayable its worthless. Unreal Engine 5 do have stutters but its performance is so good that player dont care about those stutters.

          (please avoid, Sorry for my bad English)
          First of all thanks to the developers of Godot for providing us a great game engine that powers many tools and games !
          Secondly with very sorry !!
          Problem with Godot is. Its developers dont focus on 3D and importance of each aspect of game industry standard's modern trends. They have provided a great engine for 2D Games and I admit there is not free or paid engine like Godot with some features in 2D it offers but in 3D side its lacking behind in performance, physics, world editing, environment designing tools, etc. But on other hand it provides very very nice features in 3D first of all, loading any scene is fast, animations, audio, input system, gltf2 support, rendering and particles and many more. But the big thing killing this great engine is performance. If developers just fix it. It will be next Unity of game developers.
          Needs some features in 3D:
          1)Terrain Editing
          2)OpenGL 3.3 full support and 4.0-4.3 also for Linux and Windows
          3)AI like Unity
          4) Physics needs to be improved more. But for now its better than Godot 3.xxxx

          In end I will say. As Godot Lover and user I accept that this engine is using very high performance API which has improved some performance in 3D. but not much and still not so good in performance. It must be taken seriously because its just released few months ago but it needs to be very stable and developers and contributors must work on optimizations and performance side.

            mazharakbar400
            What "performance" is then bothering you if not graphical performance?

            You complain about Godot's "performance" but you didn't show any actual benchmarks nor comparison of those benchmarks with other engines.

            If your project performs badly, there's a great chance that your own code is poorly written and/or the whole project architecture isn't put together well.

            It's kinda getting old hearing about the "bad" Godot 3D performance and bashing of the GDScript language. Even if Godot doesn't have the same performance as Unity or Unreal in some areas, I have yet to see anyone professional with a budget big enough (with a couple of exceptions) to push the engine where that kind of performance or feature(s) is actually needed/critical in their game. Even then, most things can be worked around with technical and artistic skills (which is very common in the industry. Every project is unique and have its unique requirements). The ones I've seen that have really promising projects using Godot, that look really nice, it's pretty obvious they know what they're doing. These people also seem to be the ones that complain the least (or they're just hyper-focused on actually making the game), and their project seems to be running fine. Guess what? I've heard people complaining about using Unity and Unreal as well. You are always going to find some shortcomings, no matter what engine you pick. (Same with these engines. The ones knowing what they're doing tend to be pretty silent and instead focus on releasing a game in the end. I'm sure they have the same struggles as everyone else).

            And now with 4.x, there's also a lot of work done with occlusion and various optimization techniques. Is it perfect? No, it's still a work in progress and always will be as the industry always moves forward, and being open source with limited funding, things might not move forward as fast as you would sometimes like (but being open source, you could always contribute). Most projects I've seen so far with really bad performance are either running something that hasn't been optimized at all or running on hardware so old I'm impressed it runs at all (or in some cases runs well, but for some reason, the capture is really bad).

            Problem with Godot is. Its developers don't focus on 3D and importance of each aspect of game industry standard's modern trends.

            Isn't it one of the biggest priorities of G4 to bring 3D up to a more modern standard? As far as I've seen, it's a huge leap from where the engine was at 3.x. I agree there's still work to be done on it for sure when it comes to implementation, bugs, features etc. Given time, though, I'm sure it will get there. Is there anything specific you can give as an example?

            its Godot optimization and Garbage GDscipt, which simply python a bad language and other factors

            GDScript is actually really nice to work with and is best used for game logic IMO... If you need performance for more heavy computing, then C++ is available for anyone to plug into.

            How about this, instead of just complaining, try to make a game (which is hard enough). And when you feel the engine is struggling, make sure you have your knowledge of how graphics and game tech work in place. Meaning, know how forward rendering works (what are the weaknesses and strengths, and what differs from a deferred renderer). Have your LOD's in place, and learn how to optimize textures with proper pixel density. Optimize your draw calls, memory management, utilize multithreading, apply good dev/code practices, etc. (These things are done in games no matter what engine you use). Does the game still struggle to a point where it's unacceptable, even if you're not pushing it hard? Then there's a problem somewhere.

            At the end of the day, it's only tools for you to use with your creativity.

            My advice is to try to be more constructive than throwing out "this, and that is garbage." Why is it garbage, though? Give a proper example of the bottleneck. If it's something critical that is done really badly, then give that as constructive feedback in a way that can be something to take action on. Everyone involved, I'm sure, only wants the engine to be as attractive for as many projects as possible.

            cybereality It handle a demo scene in Unity with URP. Can you Imagine that It can Play many games. I also tested with GTX 960 a day before and also there were too much frame drops and stutters. Abandoned Spaceship Demo at 70% resolution scale and vsync off at 720p. I got 1 fps to 120 fps on GTX 960 2GB and 16 GB Ram (CPU Xeon W 3550).
            Same can Run Unity in 90+ FPS and 1080p without a frame drop or any stutters.