Having trouble making viewport play at full speed

Hi there all,
I’ve been recently working on some projects that use the Eevee render engine. No matter what I do (including limiting max subdivisions and similar in the simplify menu) I cannot get my viewport to render at any more than around 7-8 fps (not even a third of the 24 my scene is at.) I was wondering if anyone knows of a way to force the viewport to just skip frames to keep up with the fps of the project, because what I’m really trying to do here is to be able to view my animations (bones/rigging) in real time so i can get a sense of how the final render will work. Apart from just viewport rendering the entire animation every time, does anyone have any idea of how to force blender to sacrifice some frames to play at the real project speed? Oh and please note that my solid view plays at a similar 8-10 fps

Hi.
You must give specifications of your GPU, CPU, and operating system. Also it would be nice if you share a .blend file of your scene.

If the problem is only in Eevee (Material preview or rendered view) and not in Solid mode, you probably have a weak GPU to handle your scene.

From Playback menu in Timeline you try Frame Dropping

Not that I’m aware of, but my suggestion is to use proxies. In the outliner, make the high-res asset render only & the proxy asset viewport only. Also, parent the high res asset to the proxy. Less geometry & less textures enabled in viewport should bring viewport playback speed up to 24 fps.

Screen Shot 2021-01-10 at 11.19.15 AM

Hi, thanks for the quick reply, the CPU is a Intel Core i7-6700 and the GPU is a EVGA GeForce GTX 970. I run windows and the 2.83 LTS version of Blender at the moment. Thanks for the tip about the playback menu, that helped. The main problem with my model is probably that I use a lot of boolean modifiers. Apart from that, the model is fairly standard, though it uses a bunch of hook modifiers to tie pieces to an armature. The problem is persistent in solid view, material preview, and Eevee renders. I’m don’t feel comfortable sharing the whole blend file but let me know if there’s any other info i can provide that would help.

Thanks for the tip, I’ll definitely try that. Is there any way to make those automatically or should i just make manual copies and remove any subsurf modifiers from those/do what else?

If the slowness is present also in Solid mode it is surely not a GPU problem, then it can be multiple other causes depending on the complexity of your scene. You try to analyze your scene by doing tests in Solid mode to rule out that the slowness is due to heavy Eevee scene problems.
You keep an eye on the number of viewport subdivisions in Subdivision surf./Multires modifiers, OpenSubdiv does not have hardware acceleration in 2.8+. You have Simplify item in Render tab, from where you can globally reduce subdivision levels for viewport.

Edit: OK sorry. Quick read while doing other things. Apparently you have already tried limiting subdivision levels.

Hmmm… I mean you could just use primitives when the shape is close enough. Other than that, you could use the decimate modifier to make low poly proxies. Also, you can link modifiers, so making everything into proxies could theoretically only be done in a few commands. Duplicate, decimate, link modifiers. Only problem is you’d have to manually parent everything and re-add armature modifiers & stuff.

Its good to use proxies. It will be a lot better to play 24fps at viewport