First question is - why on earth do you need to not leave a trace in the
undo stack? What are you doing that requires this line of thinking in
To answer your question - only the Softimage developers know for sure, but I
don't think it's possible. If it were, I would think it would open a big
can of worms leading to lots of problems you really don't want to deal with
as you're basically asking Softimage to selectively ignore something while
still going about it's business as if nothing happened.
The problem is anything you do in the application has many dependencies
which are linked and synchronized. If you have to undo operations, that
dependency chain gets all messed up as undoing operations will lead to a
situation where the 'undo' will create a scenario that never existed in the
first place. For example, create a cube, subdivide it with the dice option,
extrude one polygon with 10 subdivisions, delete one of the subdivisions,
then smooth the mesh. Oh, and tell Softimage to remove the dice operation
from the undo stack as if it never happened, but keep the results it
produced. The minute you undo past the extrude operation, you'll
essentially rewrite history of the scene because the extrusion is dependent
on the outcome of the dice operation to know which polygon to extrude. If
the polygon chosen has an index greater than 5, then it's not physically
possible to undo the extrude because a cube only has 6 polygons in range
[0...5]. Softimage would likely freak out trying to resolve this problem
and crash. If it survived, I'm pretty sure you wouldn't want to the data as
it would likely be very corrupted. A host of other issues are possible too.
The commands you found only address whether the execution of a command
appears in the script history log, or whether they can be undone by a single
key stroke vs. multiple key strokes. That is not the same as the undo stack
which records the state of the scene.
>From experience I'll say if you ever have to consider undo as a necessary
step in your workflow, then something is very, very wrong with your plan.
Date: Thu, 12 Jan 2017 17:44:52 +0900
From: Martin Yara <furik...@gmail.com>
Subject: Executing a Command without undo (Scripting)
Is it possible, in Scripting, to execute a command without leaving a trace
in the undo stack?
I want to execute 2 commands a() and b() in that order, but I want to be
able to use Repeat to use a() again, not b().
b() command is only a command to get data so it shouldn't break anything if
I skip that command when undoing or repeating.
I've found 'TermUndoRedo' in the SDK manual but it is only for C++ API.
Softimage Mailing List.
To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com with
"unsubscribe" in the subject, and reply to confirm.