Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

slowdown with multiple objects while, other engine remain stable if they are not selected in 3d #73411

Open
Saul2022 opened this issue Feb 16, 2023 · 6 comments

Comments

@Saul2022
Copy link

Saul2022 commented Feb 16, 2023

Godot version

godot 4 Rc2

System information

Windows 11 Vulkan Amd Integrated graphics card TM driver: vega 3 8GB Ram

Issue description

It happens that godot is rendering everything or most of it while other engines like unity or unreal keeps it stable till you try moving it, at that point the fps are much slower, while in godot they don't see that big falldown. Note that this is with the default sethings, except unreal where it had to be low sethings

Fmv9Yu8XkAApigM

FmwGm9yXkAEhZkd

as you can see while godot has bad fps, unreal is hanging just more or less well, i doubt that nanite is doing something, because it an IGPU and the ssd is not good,

And when i try to move for example 1k of that spheres godot fps remain more or less the same while unreal fps suddenly drops.

And with unity the fps are 40-30 till you move them too, (i will do some screenshot or video on weekend, i can't use the pc rn. ).

Maybe as @RandomShaper said on twitter it could be some gui feature where it makes the meshes inactive or something like that, or rendering batching.

Steps to reproduce

1 Open the MRP

2 Select as many objects till the fps are slow

3 Try moving them

Minimal reproduction project

https://github.com/Saul2022/godot_unoficial_perfomance_test/tree/main/Nuevo%20Proyecto%20de%20Juego2

@Saul2022
Copy link
Author

it my first issue, so sorry if it not good quality.

@clayjohn
Copy link
Member

Is the bug just that performance is 2X slower than Unreal in this case?

@Calinou
Copy link
Member

Calinou commented Feb 16, 2023

The Forward Mobile rendering method is expected to be slower when rendering lots of objects compared to Forward+.

In general, Godot does not distinguish between static and dynamic geometry for culling or shadow rendering. This could be done in the future but it'll require additional setup on the users' end, as the engine cannot guess whether an object will be moved at some point during gameplay. See also godotengine/godot-proposals#4635.

@Calinou Calinou added this to the 4.x milestone Feb 16, 2023
@Saul2022
Copy link
Author

Is the bug just that performance is 2X slower than Unreal in this case?

It more that when nothing is selected godot performs way worst than other engine like unity or unreal.

@Saul2022
Copy link
Author

The Forward Mobile rendering method is expected to be slower when rendering lots of objects compared to Forward+.

well forward+ is kind of the same case

7BC19B35-5AD6-4E90-BBEC-66717BB0CDF4

In general, Godot does not distinguish between static and dynamic geometry for culling or shadow rendering. This could be done in the future but it'll require additional setup on the users' end, as the engine cannot guess whether an object will be moved at some point during gameplay. See also godotengine/godot-proposals#4635.

Prob might be the issue, although not sure if it has or not as unreal or unity does that by default.

@Saul2022
Copy link
Author

Update: Not sure if this may be the issue of this going on https://godotengine.org/article/godot-40-optimization-progress-report/ it may be as it not optimized, but i don't know if it is or not

Screenshot_2023-02-17-08-48-24-42_40deb401b9ffe8e1df2f1cc5ba480b12

Maybe the BVH couldn't be updated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants