Here's an example expression using the modulo method as Sander explained:
- Code: Select all
iif(time % 10 == 0, 1, 0)
That will set the field to 1 if the current frame number is divisible exactly by 10 (including frame 0), and 0 if it's not.
So if this expression was added to a Merge Blend field, the merge foreground will display on frames 0, 10, 20, 30, etc, and not on any of the others. Change the '10' in the expression to display after a different number of frames.
Here's a trivial example composition demonstrating that:
- Code: Select all
{
Tools = ordered() {
Merge1 = Merge {
CtrlWZoom = false,
Inputs = {
Blend = Input { Expression = "iif(time % 10 == 0, 1, 0)", },
Background = Input {
SourceOp = "Background1",
Source = "Output",
},
Foreground = Input {
SourceOp = "Text1",
Source = "Output",
},
PerformDepthMerge = Input { Value = 0, },
},
ViewInfo = OperatorInfo { Pos = { 1252.67, 212.212 } },
},
Background1 = Background {
Inputs = {
Width = Input { Value = 1920, },
Height = Input { Value = 1080, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
},
ViewInfo = OperatorInfo { Pos = { 1142.67, 212.212 } },
},
Text1 = TextPlus {
Inputs = {
Width = Input { Value = 1920, },
Height = Input { Value = 1080, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
StyledText = Input { Value = "Example", },
Font = Input { Value = "Open Sans", },
Style = Input { Value = "Bold", },
VerticalJustificationNew = Input { Value = 3, },
HorizontalJustificationNew = Input { Value = 3, },
ManualFontKerningPlacement = Input {
Value = StyledText {
Array = {
},
Value = ""
},
},
},
ViewInfo = OperatorInfo { Pos = { 1210, 129.182 } },
}
}
}