UNDO…
Just thinking, maybe blender could just try to sty X steps behind and save it as actions.
And keep an object/mesh track save option.
Or some kind of snapshot auto backup, based upon time or amount of edit actions.
But then there is a difference in say, change a single vertex, or apply a smooth over all vertexes.
- not all functions might be undo-able… so this might not be do-able given the current dev path.
And since it seams blender never was made in such a way from scratch, i got an idea
how about :
Each time when one switches between “object edit” and “mesh edit”
(as i think here the most problems occurs).
Such a switch triggers a file backup action of the object : (like projectX-Cube1-ver032.Blend)
And the whole scene “projectX.blend” file would be a file that has no mesh content only links to other files. We allready can link other blend files so that wouldnt be a problem.
But when one does do a full save of the “projectX.blend” one could optionally destroy the small backup object-based blend files, who are not from the latest version.
However if one works on a mesh, (projectX-someMesh-ver1005.blend) then have an option on it to override automatic deletion. (so for example to keep a human mesh in a state before mirror was aplied)
Such a workflow would allow for new ways of working with Blender
ea suppose you are making a street scene in blender.
Then without loading the main blender file, you could instead open just a streatlight, and work on just that. Then when launching the master blend file again, it might prompt you that some meshes have been updated and ask you to use latest or a specific version.
— this looks a lot like how sintel and other movies where made from what i understand.
with the difference of keeping version numbering on mesh/object edits and save them
add automatic linking for masterproject blend file (might be much inline with current development).
versioning control (some addon) to deal with updating links.
benefit
one could easily add options to have low poly animation master blend files
and full movie finished master blend files (the difference just what object version they use).
Pottentially this would cause a lot of small object files (to be all linked in the master). instead of a single use blend file.
But if the masterBlend file where a bit smarter (ea braking standards with .blend save files), it couls as well be a link list that knows that some blendobject version file contains more then on streetlight, but in fact contains also trees, garbage cans, and cars. And that it knows that people are in another blend file.
Pro
- it wouldnt require huge changes for the Blender program
- would be more close to how blender movies are allready made.
- maybe not that much c++ coding required (adding save action to obje/edit mode switch)
- no changes required in all object edit methods, can keep curent
- a way of dealing with master link file would need to be made (could be all python i think).
neg
- projects wont consist of a single file anymore, a minium of 1 master.blend, and 1 objectversion.blend
(but could be zipped). (but have option to open such zips in blender would be nice). - rethink of storage of textures etc, preferably always relative path link.
- it could allow for a master file to change in between lowress vs highres textures.
- it might require that each project would always start as a file system folder with its master en object.
and a link to textures etc. (personally i wouldnt mind some organizing here)
- or that we change to zip save by default (a zip of files in the folder).