Blender Version: 2.41
Tutorial Version: March 14, 2006
Resources: rolling text animation 1.41 Mb animation DivX format

It's fairly straight forward, but does show how to "flip" Text around to the inside of a Curve Circle and how to set up Influence IPO curves.
1. In Top view [NumPad_7], delete [x] the default cube.

2. Add (Shift+a) a Curve > Bezier Circle.
[Tab] out of Edit mode.
Scale [s] the Circle up by a factor of 1.6 to ensure that there is space around the circle's circumference to add the Text later.
Set the circle to 3D in the Edit Buttons Window > Curve and Surface panel, so that it isn't filled in when displayed in Solid view mode.

3. Add (Shift+a) a Text object. Press [Home] key to get to the start of the Text and add 'Rolling ' so that the text reads 'Rolling Text'. (or substitute whatever text you want).
[Tab] out of Edit mode for the Text.
Adjust the Text settings in the Edit Buttons Window > 'Curve and Surface' panel, as shown below in Figure 3, to give the text some "thickness".

4. Select the Text, and then Shift_RMB (Right Mouse Button) select the Curve Circle and parent it by pressing Ctrl_p > 'Normal Parent'.
Select the Text and then in the Edit Buttons Window > 'Font' panel, in the 'Text On Curve' button, type in the name 'CurveCircle'.
Tip: You can just type the first 2 letters of 'CurveCircle', press [Tab] - Blender will auto-complete the remainder of the name for you. Another option is to use the copy and paste feature by placing your mouse over a button to copy its contents by pressing Ctrl_c, and then placing your mouse cursor over the button to insert the information and pressing Ctrl_v to paste it.

5. For the Text to come off of the circle properly when animated, it needs to be "flipped" around to the inside of the CurveCircle, such that the top of each letter is towards the center of the circle.
To achieve this, select the CurveCircle and [Tab] into Edit mode. With all of the circle's control points selected, press Scale [s], [x], [1], [-] and then press [Enter]. [Tab] out of Edit mode.

6. Select the Text and adjust the settings for the Text in the Edit Buttons Window > 'Font' panel, as shown below in Figure 6, so that the text is evenly spaced around the circle.

7. Next, we'll animate the circle. Select the CurveCircle. At Frame 1, insert a LocRot key for the circle and then advance the Frame Slider to Frame 250. Translate the circle to the right by about 20 BU (Blender Units) and also rotate the circle 90 degrees clockwise (it needs to be rotated more of course, but this is more easily done in the IPO Curve Editor later). Insert a second LocRot key.
Open an IPO Curve Editor window, and select the flat IPO curves one at a time and delete [x] them. (we only need the LocX and RotZ IPO curves, so no use keeping around any unnecessary clutter).
TIP: A quick way to delete multiple IPO curves: Ensure that all of the IPO curves are not selected, then box select [b] the 'flat' IPO curves at the Frame 250 key and press [x].
Select the RotZ ipo curve and [Tab] into Edit mode. Move the second key vertically from -9 to -36 (Note that the Rotation values are scaled by one-tenth simply so that (in most cases) when they are viewed along side other IPO curve types such as Loc ipos, they are all scaled vertically by relatively the same amount to make the results easier to view). Another option is to press [n] and adjust the value in the Properties panel.
Set the LocX and RotZ IPO curves to linear, by selecting them and then press [t] > 'Linear'.
Also, set the 2 curve's Extend mode by selecting from the menu (Ensure that the Curve is NOT in Edit mode): Curve > 'Extend Mode' > 'Extrapolation'.
To ensure that the circle is rotating at the correct rate, we need to do a little math. Determine the radius of the circle (in Global context). If you have been following the steps used in this tutorial, the radius of the circle should be 1.6 BU. Therefore, the circumference of the circle (from C = 2 * PI * r) is equal to approximately 10.05 BU. Thus, for one rotation (360 degrees), the circle should travel a distance of 10.05 BU to avoid looking like it is either sliding (ie. rotating too slow relative to its linear displacement along the ground or slipping/"spinning out" by rotating faster than it should be (This is of course more an issue if you are using a background against which the circle/text's rotation would be more distinguishable). So set the LocX vertical value for Frame 250 to 10.05 (10 should be close enough).
If you intend to have the text unroll onto a surface, like a table top; keep in mind the lower case descender letters, namely: 'g', 'j', 'p', 'q', and 'y'. If your text contains any of these letters, it'll be troublesome to animate them realistically. A simple solution in this case would be to simply use upper case letters.
If you run the animation now, you will see that it is moving relatively slow. To speed things up a bit, in edit mode for the 2 curves, move the second key for each IPO curve from Frame 250 to Frame 125 (or whatever looks best to you - Note that the circle must turn enough to allow you to take all of the individual letters off prior to the last frame of the animation; so be carefull to obtain the proper timing).

8. We need to "break apart" the text into its individual letters, so that we can animate them coming off of the circle one at a time. First, select the Text and then convert it to curve by pressing Alt_c. [Tab] into edit mode. For each letter, place the mouse cursor over the letter control point and press [l] to link select the connected control points. Note: for some letters, like the 'e' and 'o', you will need to select the inner portion of the letter as well. Just ensure that you have all parts of the individual letter selected. Then press [p] to seperate it. (Note: If you make a mistake, you can always use the [j] hotkey to join the individual pieces). Repeat for the rest of the letters until they are all seperate objects. When you get to the last letter, it is already a seperate Object, so no need to seperate it.

9. Adding the Emptys.
Advance the Frame Slider until the point at which you want the first letter ('R' in our example) to come off of the circle. Snap the 3DCursor to the circle (Shift_s > Cursor to Selected) and then add an Empty. Repeat this for each of the remaining letters.
Note: In some instances, the letter may not line up perfectly, ie. for one frame it is rotated not quite enough, and then at the next fame it is rotated a little too much. This can be adjusted later when the control of the letter is transferred to the Empty, by simply rotating the Empty slightly. So, it is probably better to place the Empty at the first frame where the letter isn't quite rotated enough.

10. Setting up Influence IPO Curves
Select the first letter 'R' of the Text and ensure that you are at Frame 1. In the Object Buttons window [F7] > Constraints panel, add a 'Copy Location' constraint and then in the 'Target:' input button, enter the name of the empty: 'Empty'. Adjust the Influence parameter to 0. Press the [Show] and [Key] buttons to display the Influence IPO curve in the IPO Curve Editor and add a key. Add a 'Copy Rotation' constraint, and enter 'Empty' in the 'Target:' button. Press the [Show] button to bring up the Influence IPO curve in the IPO Curve Editor. Adjust the Influence parameter to 0, and then press the [Key] button.
Advance the Frame Slider to the Frame at which you want the first letter ('R' in this case) to be transferred from the circle to the Empty. (You should see the 'Object Center' of the circle/text coincide with the location of the first Empty). At this Frame, set the influence parameter for the letter's 'Copy Rotation' constraint to the Target: Empty to 1 and press the [Key] button. In the IPO Curve editor, select the Influence curve for the constraint (the Key points should turn white when the curve is selected), and then press [t] > 'Constant'. In the IPO Curve Editor window header, press the little downwards pointing arrow to copy the Influence IPO curve to the buffer. (Note: You may need to slide the header to the right by Middle Mouse Button (MMB) click and dragging the header to be able to view the copy/paste icons, if the window is not wide enough). Left Mouse Button (LMB) click the 'Copy Location' constraint header to select the constraint and then press the Paste icon in the IPO Curve Editor header to paste the Influence curve.
One last matter to clear up. If you play the animation now, you will notice that the letter doesn't make a smooth transition from the circle to the Empty. Since the letters are parented to the circle, when it comes time to transfer the letter from the circle to the Empty; the letter is going from whatever rotation the circle was currently at, to a rotation of 0 for the Empty. To correct this, we need to copy the rotation value from the circle to the Empty at the Frame the transfer is made. So advance the Frame to the frame at which the transfer is occurring, and select the Empty, then the circle (Note: the Empty should be a dark Pink/Purplish color and the circle should be a light Pink color) and then press Ctrl_c 'Copy Attributes' > Rotation. You should see the letter detach smoothly now from the circle when you play the animation.
Note: When you are copying attributes, it is important that you perform the selection in the right order; otherwise you will copy the attributes in the opposite direction than you originally intended. An easy way to remember the order, is the fact that Blender allows you to copy attributes from one object to as many other objects as you like. The only way that this can logically be done is if the object(s) being copied to is the 'Selected' object(s) (dark Pink/Purplish color) and the object being copied from is the 'Active' object (the light Pink color object). (Since it is only possible in Blender for one object to be Active at any given time - in order to display data in the User Interface, for example).

Now we come to the repetitive, tedious part. For each letter, we need to repeat the above step. One technique that is perhaps slightly less work than doing everything from scratch, would be to copy the object constraint ( Ctrl_c Copy Attributes > 'Object Constraints' ) from the first letter to the next letter, and so on.
Important Note: When you copy the constraint from one letter to the next, the Influence IPO curves are 'multi-user' or 'shared' duplicates; meaning that you have to make them a single user by clicking on the little number icon (should be reading [2] initially) to the right of the Constraint IPO name (ie. CoIpo, CoIpo.001, etc.) in the IPO Curve Editor header . Once you have made the Influence IPO curve a single user (ie. an unique instance), you simply translate it to the right Frame for the next letter by pressing [g] ( Holding down the [Ctrl] key to move in whole Frame numbers ) for each Constraint. Another option is to use the Copy/Paste icons in the header to paste the adjusted Influence IPO curve from the 'Copy Location' constraint to the 'Copy Rotation' constraint in the IPO Curve Editor (Just make sure that the Constraint IPO is a single user first and ensure that you have the right letter and constraint selected).
Note: You may also need to press the [Show] button once in order to cause the IPO Curve Editor to update and display the Influence IPO curve.
Also, you need to do a bit of editing (changing the name of the 'Target:' for the 'Copy Location' and 'Copy Rotation' constraints ('from 'Empty' to 'Empty.001' for the second letter, for example) ). Finally, the rotation needs to be copied from the CurveCircle to each sucessive Empty for each letter, at the Frame where the transfer occurs.
Well that's all there is to it. The rest is simply adding materials, textures, lamps, setting up the camera and rendering options.
Until next time, Happy Blendering.