MeshInstance3D is chugging up 100FPS

Godot Version

4.4

Question

Hello! So basically there has been an optimitzation problem that has been driving me insane. My game (compatibility mode) consists of 2 scenes, a main 2D scene:

And a 3D one inside a subviewport:

I’m doing this game for a school project, so I need it to run on potato PC’s, currently it runs around 430FPS on my machine, if I disable the MeshInstance3D it shoots to 580FPS. If I disable any of the other Nodes in this 3D scene none make more than a 10-20FPS difference. In the school laptops it runs at around 30-50FPS. It is also very unstable, it cycles between 350 and 430FPS.


(The Geometry is a slapped 1920x1080 texture onto it, everything by default.)


How can a MeshInstance3D have such a big impact? How could a game like Rocket League run in my pc at stable 240fps and my game at unstable 360-430FPS? I think I’m missing something pretty big. Thanks for reading.

(GitHub: GitHub - DragoNHatake333/BlackLuck: BlackLuck)

Well, your physics frame time (16.66ms) is a solid 60Hz. Does your monitor run 240Hz? Anything over your monitor’s frame rate is a waste.

If you can, profile it on the school laptops; that’ll show you what’s pulling the frame rate down there, though I expect the answer will be “slow gpu”. Your home machine will have different bottlenecks, and you could easily spend a bunch of time optimizing stuff that doesn’t matter on the laptops.

You might also want to try loading that sketchfab scene into Blender or something, and check how big it is and whether it can be optimized.

My monitor is 240hz. I didn’t think though of profiling it on school laptops, great idea. I did check the sketchfab scene in blender and it looks good.

Thanks for the answer.

EDIT: Just found out if I deactivate the particles it jumps from 20 to stable 60FPS. Any ideas?

CPU particles or GPU particles? I’m betting the laptops have weak GPUs, so you may find it faster to do as much on the CPU as possible.

I didn’t know CPUParticles existed! What an oversight.

Will have to redo them I guess.

I’d test on the laptop with a simple case before you tear everything out and redo it, but I suspect moving to cpu particles will help.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.