Will something be done about Blender's slow undo system?

Any news about the undo system? I read on Blender development forum that Brecht doesn’t know of anyone who is currently working on it. Looks like we might have to wait half a year to get this fix…

+1 this one. Don’t mind me, keep scrolling.

You Turn off it … maybe cannot undo… … i test Turn off it…always slow undo…Object mode alway slow.

too slow , cannot happy work…

When you look at the source code it seems to save some kind of memory area, I guess. It’s obfuscated (macro’ed) C without clear comments what the code is doing so it’s quite difficult to read. One way to do undo system is create a list of opposite actions to the action and I’ve made this kind of undo myself in a 2D painting program. It’s not that easy, because you need to store different kinds of data for each undo type and I can only imagine in a program like Blender 3D it can be really difficult to do.

1 Like

yet to speed up “object mode” a database would be enough to record all the actions of the changed parameters …
I am ignorant … but I believe that the slowdown is due to the fact that all the meshes and their vertices are scanned to see if there are changes to the vertices of the mesh … and that’s where the CPU starts to calculate all that mess …

I just moved my blender 2.80 from my hold hard drive to my SSD and this is night and day. The same undo that took me between 15 and 20 sec now take 3 sec. It’s still slow but now it’s usable.

2 Likes

Global undo is slow on scenes with many objects. A big reason is that undo writes and reads all datablocks in the file (except from linked libraries). If we can only handle the ones that actually changed, performance would be much improved in common scenarios.

from the Task for undo Performance

I found a workaround till this undo issue will be fixed
I create a new scene (near the view layer drop down menu, in the top bar on the right )
and in the outliner in scene mode, i can link models or collections to the new scene.
With few models in this new scene, you shouldn’t have any performance issues
When you modify a model in the new scene, as the model is lnked, and shared with the original scene, it will be updated everywhere.

1 Like

I wonder if this tip also work for linked .blend files in same manner. Did you try such case?

You can’t edit meshes from linked blend files.

There is a built-in addon, Object: Edit Linked Library, that kind of gets around it. Very useful.

2 Likes

stumbled here after some googling. I’m amazed by all the things made possible by blender, but the undo function… wow!

This needs to be fixed. I did a test. I loaded a character into an empty scene and did a simple cycle of operations: I selected and deselected the object 10 times. It took 23 seconds to undo to the initial state in 2.8. Same operation in 2.79 takes 3.5 seconds.

This is unacceptable and NEEDS TO BE FIXED.

1 Like

So at which point do you start creating new scenes and linking the old ones?

There is no rule at which point you would start linking.
Basically if your scene gets too complex,you have too many objects in your scene ,etc…
or you just want to have your objects organized in separate .blends for editing purposes for example.

just wanted to add my voice here. the undo-slowness had kind of a big impact on my workflow.
feels kinda silly to ‘complain’ though, since its free software…

1 Like

Haha, you are trolling,right?
I think at this point in time we are over the benefits of free(gratis) software against the paid ones.
You know Blender is free for the user, but it costs a lot of money to develop it.

thats what i meant. it was not my intention to troll.

Don’t believe you wanted to troll. Stil the gratis software argument is simply not valid. BF and every single dev have the declared goal to make Blender the best software it can be and they are serious about it, obviously. Performance is a integral part of software quality and will continue to be one of the major metrics how Blender is perceived.
That said, as already pointed by me and others in various places, the devs are aware of the problems, know what’s causing it and already think about ways to improve the situation.
Have a watch of the BCON 19 dev AMA. Most of the points are mentioned there.
TLDR: Yes, there will be something done.

1 Like

ok, thanks.