FXTree Editing using the Animation Mixer Tut ver1.1

by Graham D Clark copyright 2002

mail@"removemefirst"grahamdclark.com

FXTree Editing using the Animation Mixer can be achieved by using an expression to match :

the "source frame offset" parameter of the of the File Input OP *insert image of PPG param

to

the "start offset" of a clip on a track in the Animation Mixer. *insert image of PPG param + mixer

Addon

An addon FXEditThree with a script FXOPEqualClip for XSI ver 3.x is provided to help set this expression up automatically or use FXEdit addon if using XSI ver 2.x .

To install the addon dragndrop the above link into a 3D view in XSIs 3D view manger.

"source frame offset" parameter (XSI ver 2.x only)
If using XSI version 2.x (pre 3.x) then the "source frame offset" parameter of the File Input OP cannot be animated. Changing the SPDL file for the File Input OP will allow one to animate its "source frame offset" parameter or in this case drive its value with an expression.

If using XSI version 3.x editing the SPDL file is unessessary so skip the following step.

Changing the SPDL file (XSI ver 2.x only)

Open C3DFxFileInputOp.spdl in notepad or other text editor. Location shown below or wherever you have XSI 2.x installed.

change line in following:
to:

Script (if not editing SPDL file for XSI version 2.x)

(If you are not going to edit the SPDL file in XSI 2.x then you can write a script to align each "source frame offset" parameter of the File Input OPs to the "start offset" of a clip on a track in the Animation Mixer. But this would be very tedious to setup for each File Input OP :
note: for each set of fileinput and clip to align it to put the following lines in script replacing ClipName with your ClipName and MyFileInputImages with your FileInput OP FileInput Name.
clipstartoff =GetValue("Model.Mixer.Mixer_Anim_Track.ClipName.actionclip. timectrl.startoffset")
sourcestart = GetValue("Model.FxTree.FxTree.MyFileInputImages.SHOT1.SourceStart")
shift = clipstartoff - sourcestart
SetValue "Model.FxTree.FxTree.FileInput_Image.SHOT1.SourceOffset", shift )
Expression (if not using script provided in addon)

If you are not going to use the script in the addon to automate setting up the expression for you use the following expression to align each "source frame offset" parameter of the File Input OPs to the "start offset" of a clip on a track in the Animation Mixer

For XSI Ver 3.x:
myFileInputOP&".SourceOffset" = myClip &".actionclip.timectrl.startoffset" & " - ("&myFileInputOP.Fullname&".SourceStart)"
For XSI ver 2.x
myFileInputOP&".SourceOffset", myClip&".actionclip.timectrl.startoffset"&" - ("&myFileInputOP&".SourceStart)"
Layout
-make a layout that exposes the FXtree, FXviewer, and Animation mixer and temporarily the explorer to retrieve action/clips or hide it and just use get source in the mixer. If you have dual screen perhaps split these views across both screens.
Get a FileInput OP
then click the green E like above to get PPG for FileInput OP and enter name for your file or sequence. For FXOPEqualClip script to work filenaming must be sequencefilename.#.ext or filename.ext
note here in PPG at right if you changed the spdl file that you now have an animation icon next to Source Frame Offset. This is the parameter that needs to be offset to align the source to a clip.
Model Node Organize
-at this point it might be a good idea to put the FXtree under its own model node, the advantage being that it will be easier to find clips relative to it by having its own mixer. Name it something useful. Also note here, under the FXtree, the nodes of the Over Op and the folder containing the two Fileinput Ops (you'll be adding another in next step).
Add Over Node
-repeat above steps getting another fileinput Op and select source then get an over Op and pipe the first fileinput in then the next like so and click big blue V to see effect of over in Viewer in future steps
Key opacity
click E of Over, set Opacity at 0 and click the Opacity Animation icon to key. Once is fine as it will be mixed in the mixer later. Note as you slide the opacity amount the effect in the viewer.
Store Action
-select the FxTree node or Over Node if other Ops in Tree are keyed, and store an action of the fcurve for the opacity parameter you just keyed
call it what ever makes sense like OVEROpacityZero. (And later OVER1 etc.)
-repeat last two steps, keying the opacity at 1 then store an action for it
put action/clips on tracks in Mixer
-drag the two newly created clips onto sperate tracks in the animion mixer. Note under each clip the stored Items. Press A to fit all clips into view and resize (click on middle side of clip, a yellow marker will appear) and position them until desired length and they overlap with Opacity at 1 clip coming after Opacity at 0 clip like so:
Add transition
-apply a standard transition between the two tracks, by selecting the tool then clicking on the end of the out clip and beginning of the in clip and the blue band will indicate the overlapping effect. Try moving the slider back and forth in the timline to see the effect mixed, but note that the sources do not yet start when the clips do.
run script to match FileInput start to Clip start
-to align each "source frame offset" parameter of the File Input OPs to the "start offset" of a clip on a track in the Animation Mixer, select the FileInput node in the explorer (remember the ones in the folder earlier) then the clip to align to, and run FXOPEqualClip.

-Now shift the clips back n forth and note that the source file updates its relative position in time.

note above I added another fileinput source and Over and then added the second Overs opacity parameter to the same action/clip as second clip of the first Over.

The middle clip above contains the two Opacity parameters for both Over and Over1

It is unlikely that you would set it up like above and instead will want to make a dummy clip to align each "source frame offset" parameter of the File Input OPs to and then make seperate clips fro the FXOPs values.

In the new version of FXEditThree I have added a "dummyclip" script that generates dummy clips for you named same as the FileInput OP. Just select the and run "DummyClip" and drag the created source to Animation Mixer and then run FXOPEqualClip to align each "source frame offset" parameter of the File Input OPs to the "start offset" of a clip on a track in the Animation Mixer.

Also Note Instead of using "FXOPEqualClip" I've added "FXOPEqualClipL" so when you go to align each "source frame offset" parameter of the File Input OPs to the "start offset" of a clip on a track in the Animation Mixer it makes the clip length the same as the length of the File Input OPs

.

You could also use this FXEdit method to mix image sources for texture clips etc using clip in, just switch out the clip ins with FileInputs:

Its not that elegant a method, but is far more elegant than tracking and mixing all your effects in various PPGs of Ops from the FXtree.

If I have made some errors or you can recommend an improvement please give me an email. Good luck editing.

copyright graham d clark 2002