• Welcome to World Machine Community. Please login or sign up.
October 13, 2019, 05:41:53 pm


Read the Development Diary for an inside look at World Machine's progress!

Incremental Save

Started by jaf, July 22, 2008, 05:41:09 pm

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


I was doing some quick builds today that I wanted to expand later when I had more time, and I realized the an incremental save would be a nice feature.  Something like setting a file name, such as try1_1.tmd and saving it.  When you make some changes (or not) and hit the "incremental save" key, it would save a new file called try1_2.tmd. 

This should be rather easy to implement and would be a time saver when working a project where you want to generate a bunch of different terrains to try later in your favorite rendering software.


IMO every program should have such a button!
"Every time you read or write beyond the end of an array, somewhere a fairy dies."
Richard Buckland


I didn't think the whole process out, so here is what I think may work as an incremental save.

On the Heightfield File Output panel, a checkbox could be added under the "Save the file every time the world machine is built" that would say"Save Incremental".  Then, when the filename/directory is set, each build would add an incrementing _v1, _v2, _v3 etc. to each file name.

Now there could also be an incremental save of the .tmd files, which would be listed under "File|Save as" which would be called "Save as incremental".  Once a filename exists from an initial save, such as "myTerrain", a Save as incremental would result in a file called "myTerrain_v1.tmd" to the folder the last Save or Save as was done.  A hotkey, such as Ctrl-I would be nice.

Hopefully this isn't too confusing and I'm sure there are better ideas than what I wrote.  My experience with incremental saves was from Lightwave 3D Modeler.  :D


Autosave / backup setup - really is a feature suited for a professional tool, to minimize risk.  If your box, or even WM, ever crashed on a save... or trashed your file unintentionally for any reason, it could easily be impossible to reconstruct that file with any ease.

We do use perforce and other source control methods for our projects - but it's generally not part of an artists workflow mindset to check in an update every time you save a file.  It's more of a once a day (or so) behavior, unless nearing deadline with shorter windows on incremental builds towards a goal.  However, due to the nature of the work loosing anything more then 20-30 minutes of work can quickly lead to a nightmare scenario.

I am thinking project beta release bug fixing here - I am so in trouble if I have already marked 20 bugs as fixed, trash something on accident, but then my last source update I can go back to is a day old.  That is a whole lot of stress to potentially carry around there!

I'd love to see even the most basic autosave feature:

  • Ability to set a save time window... for example once every 10, 15, 30 minutes

  • Set a number to indicate the length of the backup Queue...  for example only save the last 10 saves

This would make it much easier to commit to using WM more heavily in a workflow process for large projects.

P.S. I might even rate this higher then a undo/redo queue

- jonny
skype: hogjonny


I like the incremental save because I can make the save at important points in my work flow.  If the auto-save  happens I'll probably have to study what was saved to see how many steps were done (before the auto-save.)  With an incremental save, I would do the four steps and hit the (auto-save) hotkey, so I would know each incremental save was a completed portion of the project.

Also, unless the auto-save does an incremental type save, you would only have the last version when you may really need a version a few changes back (before the auto save.)  To overcome that, you would have to do saves, which is what incremental save's accomplish.

That said, an auto-save would be a nice feature when those unexpected things, like a power outage, happen.

I don't think either or both approaches would be that hard to implement and can't think of a performance penalty.


More on this for anyone interested:

When at LightBox Interactive - we created a backup daemon (in python I think), that would run in the background and take local snapshots and do nightly backups, so we had revision control between perforce checkins.

But while working here at Bluepoint Games,  I recently found a really awesome tool that does this (that is easy to set up), it's called FileHamster.  It will snapshot a revision backup every time a file is saved (in a marked location), there are additional settings for #of backups, etc.

It's a great tool!
skype: hogjonny

Quick Reply

With Quick-Reply you can write a post when viewing a topic without loading a new page. You can still use bulletin board code and smileys as you would in a normal post.

Warning: this topic has not been posted in for at least 120 days.
Unless you're sure you want to reply, please consider starting a new topic.

Note: this post will not display until it's been approved by a moderator.

Please leave this box empty:
Type the letters shown in the picture
Listen to the letters / Request another image

Type the letters shown in the picture:

Shortcuts: ALT+S save/post or ALT+P preview