In my model I use a couple of difference modifiers for some meshes to achieve complex surfaces or simple holes, the problem I have is Blender becomes stressed about it very quickly. Every change to the mesh results in complex recalculations. However I absolutely understand of course it is not easy to recalculate the surface with multiple modifiers. But I am wondering if I am doing something wrong or could it do better. I want to keep the flexibility of being able to remove or change the modifiers. So is there a better approach for this?
Hard to tell without looking at your specific mesh and modifier stack.
Anyway there's not much one can do with complex meshes, if there's a lot to be calculated there is no way around it other than watching your modifier stack order and keeping poly count low.
Here's a few things you can do from most destructive to least destructive.
- See if there's any point in your modifier stack bellow which you don't plan to make any more changes. If so, then apply all the modifiers above that point, keeping live only the ones that matter. Be sure to do this in a copy of the object, keeping the original safe in case you need to go back for some reason.
- Watch the modifier stack order. When possible keep calculation intensive modifiers (like the Skin modifier, or Bevel) before the simpler ones whenever feasible. Like if possible modify before mirroring, arraying, or deforming. Limit bevels by crease or angle, etc..
- Keep viewport subdivisions low, to speed things up, and increase only the render subdivisions so you won't lose quality in final images but keep viewport responsive.
- Watch out for any modifier that have "Viewport Settings" and "Render Settings". Be sure to keep the viewport ones low, if they don't negatively affect your work.