PDA

View Full Version : Fix the damn undo system nowww!!!



Hail
09-25-2013, 08:05 AM
The stupid, useless, ****** undo system is at it again!
After spending so many man hours polishing and refining a character performance today, I unconsciously hit the genoma update rig button and guess what... all of the hard work I'd put into polishing the animation went out the window! yep! That's right, several hours of work is gone! because.. the next to useless undo won't undo anything besides TRS in lw.
This workflow is too ancient to be acceptable in the 21st century.
..and this is about the second time that the ****** undo system is screwing me over in lw!

WHY can't we have a functioning undo system that just works as it should..???
For **** sake this is 2013 NT!!!
This piece of **** is driving me nuts right now!
OH GOD.. I so HATE this software right now.:(:(:(

OnlineRender
09-25-2013, 08:16 AM
have a look at your backup directory to see if its saved the scene ... yeah undo is a nightmare but are you telling me you spent hours of animation work and never saved? or you did save then hit genoma and it overwrote everything?

Ryan Roye
09-25-2013, 08:19 AM
It would be nice though if Genoma would look for existing animation or external items in the scene and warn the user before destroying everything (and I do mean *everything*) in the scene and re-creating the bones/nulls defined in modeler.

No one will really argue about the undo system. I'm just glad IKBooster's undo functions are so much more robust than the rest of LW.

And as always... save early, save often, and save backups because destroyed work is a threat for every program in existence.

Oedo 808
09-25-2013, 09:16 AM
One would hope it's because a lot of work to that end would be non-transferable to any update of the architecture they may be working on, but who knows. It is tiresome, I'm writing this while trying to perform an operation on a model that chokes up Modeler because it has a few hundred thousand polys... will it work?... will it crash? Ooh the excitement of using LightWave. Often I can get away with exporting a smaller section but that isn't really an option this time.

I'm sure I sculpted 4,000,000+ polys in Blender quite some time ago, I could be mistaken but if I did, it's quite sad :(

Ahh well, I'll just sit back and dream of a comprehensive undo system and adequate polygon handling. :sleeping:

jasonwestmas
09-25-2013, 10:02 AM
As I tell everyone. . .I make several increment saves no matter what program I'm using. Undo isn't a magic bullet for recovering work. BUT yes, the undo can be drastically improved but LW would need a proper history stack and a consolidation of tools.

digitaldoc
09-25-2013, 10:10 AM
I don't think a simple undo would have saved you as there were probably multiple actions performed with the genoma update, maybe even as many as your total undo limit.

Undo in Layout is pretty much next to worthless anyway.

I save many incremental scenes and objects when working on a project, have lost too much worl in the past not to do this.

Hopefully you saved a previous scene file.

Good luck.

Nicolas Jordan
09-25-2013, 10:29 AM
As I tell everyone. . .I make several increment saves no matter what program I'm using. Undo isn't a magic bullet for recovering work.

This is easy especially since saving a Lightwave scene is very quick and takes up very little disk space to have dozens or even hundreds of incremental saves.

geo_n
09-25-2013, 10:37 AM
Newtek probably should have started with a totally new module for character animation that has its own undo system. Ikboost has its own undo system so its very possible to create a new module. One that can integrate to old and future lw architecture. Its been done with other appz.

Hail
09-25-2013, 12:48 PM
I often forget to save when I'm in the zing of things, I guess I am partly to blame for this mess.
I had done some incremental saving during the blocking stages but I not when I was polishing.
Nonetheless undo should work as it should. It works flawlessly in other apps except in lw. Heck! even ms paint has a better undo system than lw.
Why is it so hard for NT to give us a working undo??
I can understand it is an involving process but come on guys hasn't it been like this since the 1990s?
It appears NT is not interested in fixing the problem and that is saddening.
If it continues like this it will only be a matter of time before I jump ship.

..and yes I couldn't make the deadline:(

Thanks lw!

bobakabob
09-25-2013, 04:57 PM
C'mon, there's really no excuse not to save incrementally especially if it's a professional job. You would do this with any software.

The Hub can also store scenes and objects at specified intervals. It hardly takes up disc space.

LW devs have said in previous discussions that it would take a major rewrite to go beyond the levels of undo that presently exist so maybe you'd be better off jumping ship. Just remember to save.

Surrealist.
09-25-2013, 05:21 PM
I often forget to save when I'm in the zing of things, I guess I am partly to blame for this mess.


It does happen to the best of us. It is something that when it happens to me I think, what in the hell? Because when I am truly in the zone I am actually saving almost unconsciously. And there have been a few times lately that I crashed and panicked. Then realized I had saved and even forgot about it, thinking I had gone a good 20 to 30 minutes and forgot.

This is something I have worked real hard on making a part of my "in the zone".

The undo system in LightWave is deplorable for sure. But I think of it as a workflow hindrance not a crutch to keep you from loosing work. Every program I use I never rely on undo for that. I use it as a reasonable way to get back a few steps, but not as a work saver. I use save as my marker for something I want to get back to.

In LW the undo situation makes work take longer. Because even the simplest yet vital things can not be undone. So you have to reload a scene if you make a minor mistake, and this is beyond annoying.

My advice from artist to artist is seriously rethink your saving habits and start working constant saving into your zing. Make it as second nature as navigating.

shadowshifter
09-25-2013, 07:16 PM
I'm sure I sculpted 4,000,000+ polys in Blender quite some time ago, I could be mistaken but if I did, it's quite sad :(

Ahh well, I'll just sit back and dream of a comprehensive undo system and adequate polygon handling. :sleeping:

I'm close to 900k polys in Sculptris on a character I'm detailing atm (giving some leeway because sculpty goodness is most of what Sculptris does, and also it's sensible enough to use all available cores), will send it back through Meshlab to retopo but am not really looking forward to dropping it back into Lightwavefor texturing because Modeler choked on it when it was a bit over 240k :S

Hail, I hope you were able to recover all right from that (even if you missed your deadline) :S Have to say I learned to obsessively shift+s right quick from similar mishaps. And I don't think undo has ever worked for me in Layout on anything.

Philbert
09-25-2013, 07:38 PM
I do incremental saves whenever making a major change, but in between the auto-save handles everything very nicely.

JonW
09-25-2013, 11:41 PM
Lots of incremental saves & get yourself a decent UPS!

The number of times a UPS has saved me from a blackout no matter how short is worth it's weight in gold!

rwhunt99
09-26-2013, 07:27 AM
I have thanked Newtek for that "revert to last saved" many a time, but I do because of bad experiences, and I save incrementally often.

probiner
09-26-2013, 02:28 PM
The constant saving workaround is also not great. Saving Incrementally is not the same of having a good version saving system and it bad to have a folder full of duplicates and a scene changing the number of a object when it's the same object identity. We actually need both. Undo and versioning systems. but the first one doesn't need a complete app revamp, but good scripts.

A bit overdue but I'm gonna bump this thread:http://forums.newtek.com/showthread.php?137575-Version-Saving

jasonwestmas
09-27-2013, 09:52 AM
For versioning, a project format for me would be fine. One that includes options for what you want to save in it. It would be like a package scene zip but without the compression, zipping and unzipping. But with lightwave I think that's just a wild dream due to the division of two applications.

jwiede
09-27-2013, 12:22 PM
For versioning, a project format for me would be fine. One that includes options for what you want to save in it. It would be like a package scene zip but without the compression, zipping and unzipping. But with lightwave I think that's just a wild dream due to the division of two applications.

The reason this isn't doable today by third-party devs isn't because of the split application (it doesn't help matters, granted), but instead because LW's SDK APIs do not expose all app/project state to be saved, nor allow complete restoration of app/project state programatically. Fix those issues and I bet some third-party dev would produce a comprehensive incremental project save/restore system rather quickly. It should really be part of the apps out-of-box, ofc, but even if LW3DG just fixes the hidden state & programatic state restoration SDK issues that'd be a huge step forward.

jasonwestmas
09-27-2013, 12:45 PM
The reason this isn't doable today by third-party devs isn't because of the split application (it doesn't help matters, granted), but instead because LW's SDK APIs do not expose all app/project state to be saved, nor allow complete restoration of app/project state programatically. Fix those issues and I bet some third-party dev would produce a comprehensive incremental project save/restore system rather quickly. It should really be part of the apps out-of-box, ofc, but even if LW3DG just fixes the hidden state & programatic state restoration SDK issues that'd be a huge step forward.

I see, I'll look forward to that.

jwiede
09-27-2013, 01:02 PM
I see, I'll look forward to that.

Considering how many times the issue has been raised in one context or another, and the lack of redress to this point, Newtek/LW3DG doesn't seem any more proactive on these issues than on the undo one. Less explainably so, as well, since these issues should require significantly less work to address in SDK APIs than the undo issue.

Sebasvideo
02-12-2014, 12:12 AM
I found this thread by accident while searching for something else, and I can't read all of it, but I can say two things about it:

1) Yes, the Undo system in Lightwave is a piece of bleeeeeep!! Extremely aggravating and frustrating.

2) However, as bad as it is, nobody should lose hours of work, at the most a few minutes, because Shift+S will keep saving incremental objects and scenes until the day you retire.

geo_n
02-12-2014, 12:51 AM
The undo system needs work and probably will take atleast 3 versions of lw to fix.
If they can add undo in surface editor and undo when removing items in scene, better undo in scene editor, that would already alleviate some frustration from me. :D
Its amazing though that with current undo in lw my brain is actually more functional than average because of the exercise it gets using lw.

Sebasvideo
02-12-2014, 12:55 AM
I'll throw you some cheap philosophy because I can't sleep and it's the middle of the night: The Undo system in Lightwave is a little like life itself; sometimes you get to undo, sometimes you don't. Go ahead, laugh, but you know it's true :ohmy:

Snosrap
02-12-2014, 12:39 PM
LW needs a significant overhaul in it's base architecture to get a proper undo system.

jwiede
02-12-2014, 03:06 PM
There is no legitimate excuse for a software package which so frequently uses destructive workflows to fail to warn users of unsaved data before taking such actions. The known lack of a viable undo system in Layout makes such warnings even more critical, and makes their absence even less acceptable.

Sebasvideo
02-14-2014, 01:37 PM
Here's what I don't understand. And I'm aware that I don't know any programming, so I may be wrong. I keep reading that implementing a decent undo system can't be done without an extensive rewrite of the code, etc.

When you send a command to the program, the program has to be aware of that. For example a simple command, change diffuse in the surface editor from 50% to 70%. The program knows what you just did, otherwise it couldn't do it. Inside the program, that is an instruction. So the program lists those instructions somewhere, that could be a file on the hard drive or on RAM.

When the user invokes an Undo command, the program sees the last item on that list and executes it, so if the last instruction says "Change diffuse from 50 to 70" (whatever that is in code syntax) then the new instruction is as easy as "Change diffuse from 70 to 50". Then if the user invokes the Undo command again, the program goes to the second to last item in that list and does the opposite again.

Does this make sense? Is it really that hard to implement a proper Undo? Does it take a full rewrite of Lightwave as I've read so many people saying?

jeric_synergy
02-14-2014, 02:04 PM
Sebasvideo: I used to be a programmer of sorts, and here's (a/the) (possible) issue: The command isn't "change the diffuse from 50% to 70%", and isn't even "add 20% to the diffuse", it's "set the diffuse to 70%", with no relative offset or reference to what it used to be. IOW, the previous state is not stored, and the software has no idea what it was.

That's one of the many issues it COULD be.

That said: it's been a long damn road, and IMO they've had plenty of time, 11 revisions to be exact, to have addressed this. And I point out that other vendors haven't seemed to have had difficulty with implementing standard Undo systems. Note that Modeler's GEOMETRY undo is quite good and user definable, and that's most likely just a brute force storage of the entire mesh state after every command.

Even just STORING in a brain-dead (i.e. non-clever) states would beat the current b.s. of "one undo" -- it's the g*****n 21st Century.

I don't know what the issue actually is: at a strategic level I suspect it's some form of "the perfect being the enemy of the good, or even the adequate." For instance, I'd be okay with "multiple undo stacks", where Undo just does Undoes one aspect of the UI: surfaces now, motions now, whatever the user decides. It complicates the UI, but also has some advantages.

wyattharris
02-14-2014, 02:07 PM
I've been using other software quite a bit more lately and I find that instead of lacking undo system they simply crash when trying to undo. I ask my more experienced friends about this and they say "Yeah..." as in its the most obvious thing I've just discovered. I don't know enough about them yet but it seems like ZBrush is the only package with a perfect undo system.

(Of course this is not excusing LWs shortcomings)

Sebasvideo
02-14-2014, 02:16 PM
Sebasvideo: I used to be a programmer of sorts, and here's (a/the) (possible) issue: The command isn't "change the diffuse from 50% to 70%", and isn't even "add 20% to the diffuse", it's "set the diffuse to 70%", with no relative offset or reference to what it used to be. IOW, the previous state is not stored, and the software has no idea what it was.

OK, so let me ask you this. If the diffuse is set to 50, the program has to know it, right? I mean, somewhere in there the program is aware of the values for all parameters, otherwise how can it be showing a value of 50? So would it be hard for the program to check that current value so it know both the old value and the new value?

jeric_synergy
02-14-2014, 02:26 PM
(Again, not a professional programmer, but) No, I suspect it wouldn't be difficult, although there's cleverer ways to do so, BUT the issue seems to be that at a very low level, the code base doesn't operate that way.

And again: re-writing LWM around 5.6 with modern programming practices would have been the sensible thing to do. And they've had plenty of time to do so, although possibly not the actual resources to do so. Personally, I'm pretty sure one of those Ferrari's NewTek's CEO likes to drive around would have financed quite a few programmer-weeks to have done so, but hey, maybe programmers make even more than I think they do.

A parallel code-base that mirrored exactly what LWM does, but in a better way, is what I'm thinking of. No innovations, same UI, just better architecture.

If CORE had JUST done that, it would have been great. And we could have moved forward with better foundations under our work. However, at the same time they (foolishly) tried to implement a complete upheaval of the User Interface, which is why it failed.

robertoortiz
02-14-2014, 03:14 PM
(
A parallel code-base that mirrored exactly what LWM does, but in a better way, is what I'm thinking of. No innovations, same UI, just better architecture.



I do wonder if that is the current plan. And this comes from someone who was Ok with a ground floor rewrite.

jasonwestmas
02-16-2014, 02:08 PM
If it was easy, then I'm not sure why 11.6 doesn't have this undo history nipped in the bud yet. Speaking as someone who was ok with a ground floor rewrite.

Sebasvideo
02-16-2014, 02:26 PM
Right now I would be happy if I could press F9 and have my two machines render a single frame. Like I can in Modo. Sure, I can load the scene in Amleto and have that, but I would just like to press F9 and squeeze all the processing power I have. If I had that the terrible undo system would be a bit more tolerable.

mav3rick
02-17-2014, 05:01 AM
thats why my scene directory always have almost 100 increment saves per scene... pressing shift+s every 10-20 minutes :)....

jeric_synergy
02-17-2014, 11:59 PM
I habitually hit CTRL+S maybe every 2 minutes. Anytime I'm not actually working. It's like a tic.