I'm using Animation Nodes add-on to create typing effect for Text object. It works good, but I don't know how to change when the effect starts. In default it starts in frame 1 ( and I want it to start in frame 120).
Scale and Bias BAN, Blender Animation Nodes
We see your your nodes depicted in your question. Merci Mille Fois.
Two different approaches
- Custom Property FCurve referenced in BAN
- Only BAN Math Nodes
- You need only one approach for results. Two for your education.
Custom Property FCurve Approach
BAN Nodes focusing on Custom Property FCurves. Image Above.
Bias and Scale in your Custom Property Graph. Image Above. The intended units are number of characters. Example. [0, 20]. Not a percentage. (Approximate. Please Improve)
Method 1. Using the Custom Property FCurve. Curve that you would see in Graph Editor. This Custom Property Curve is introduced below.
- The Yellow Colored Nodes show the essentials. We take the zeroth  curve for the text object. We ask for its evaluation a number, which in my case is a range [0, 8] meaning the length of a string, not a percentage. Debug Nodes show the numeric value and Data Path or less formally the Custom Property Name. The name is displayed to verify correctness. Debug Name matches graph editor name which is good.
- Debug Nodes are for the BAN writer. They do not affect render. Delete is desired.
- You will need to take adjustment for your particular context. Some cleanup work on my part is needed.
BAN Math Nodes Only Approach
Gain and Bias with the Animate Float Node. Please improve. Approximately 2 nodes. Attach in similar fashion to previous Trim Node. Units in characters. You can judge for yourself if you like the absence of keyframe. Image above.
- Trim text node has start value zero. Lets assume this is correct or a good start. Possible improvement can come later.
- Lets assume text with trim node value [Start End] (0,0) is the empty string
- Trim text node needs a new [End] value. Now add math nodes to create the formula indicated below.
- Add a Math Subtract Node, Maximum Node, and Minimum Node. Connect them correctly. Show your new nodes a soon as possible. Perfect or Imperfect.
- Its better for you to show your nodes for your education. You have already demonstrated your epic knowledge of Custom Property for an object. I like approach one F-Curve better at this juncture. So Math only nodes are a optional excercise for the reader.
- In the discussion below you can substitute your number 120 for 10 below and make adjustments
- An Object can have Custom Properties such as a number with Keyframe values. Keyframe creation implies a curve viewable in the graph editor. Frame 10 may have value 0.00 and Frame 80 can have value 1.00 Blender can conveniently interpolate for you. Blender has created a curve in the graph editor for you. You have the full visual power of the graph editor at your command.
Custom property with Keyframes. Above image.
- You might consider setting a percentage related to the current frame.
Using Math Functions. Example. Minimum(Maximum(Frame - 10,0), 80)/(80) produces ....
- Value 0.0 in the frame range [-infinity , 10]
- Linear ramp values 0.0 to 1.0 in frame range [10, 80]
- Value of 1.0 for frame range [80, infinity]
- Scale and Bias (Shift). Offset ramp by 10. Ramp to 80 with division scaling (/)
- These values should be consistent with the graph above
- BAN Blender Animation Nodes may have an equivalent visual graph or other useful nodes for this purpose
- [a,b] denotes a range from frame a to frame b, requiring a <= b
- More abstractly, Minimum(Maximum(Frame - offset,0), end)/(end)
These values can for example determine the range of characters used for display
Please forgive the lack of mathematical exactness and formatting above. Above is pseudo code. You can find the exact function names such as Min.
Old Statement. Seeing your nodes would be an improvement. Lots of details missing. Lets forge ahead.
Delaying an animation that depend on time can be done by subtracting the required starting point from the time and then taking the maximum with zero, so for instance, if you want the animation to start at frame 120, you do
Moreover, if you want to change the slop of the animation function, you simply multiply it by a scalar as I did here to slow it down a bit.