Curved text with Lattice

I always seem to run in to trouble using a curve modifier on text objects. So, I tried the following test. I used a lattice as a deform modifier for the text and then used a bezier circle as a curve modifier on the lattice. This seems to give me more control over the text. Here I was able to make the text twist as it curved around the circle.


Here is a wire of the setup:


And if anyone cares here is a simple mov file of the text spinning:
http://uploader.polorix.net//files/841/SpinTwist.mov

Very cool technique. :yes: Thanks for sharing it. :smiley: Posted in Selected Modeling Threads.

Glad you find it useful. If the Blend will help anyone here it is: http://uploader.polorix.net//files/841/twist%20spin.blend

DichotomyMatt ,

I tried your techniques, but I can not get it to work.

Open Blender. 2.46 RC1
Create font object.
Create Lattice object.
Add modifier to Font to connect lattice to font.
Add slices to the lattice to give it more mesh desnsity for bending.
Create a Bezier Curve (note this is different from your example where you use a closed curve in the form of a circle.)
Add a curve modifier to the lattice.

Ok with the above setup, I have the font bound to the lattice and the lattice bound to the curve. When I drag the postion of the lattice a round, it is indeed bound to the curve, but the font does not remain within the lattice.

This does look like a solution to deformable editable text on a curve, but it still is not there.

Can any one try the above setup and tell me what I am doing wrong?

Thanks!

@Atom: Make sure the Text object is completely within the lattice, parent the text to the lattice, make sure the Text has the lattice as a modifier and it should work. The one thing that gets tricky is making sure the text is in the lattice. move it out of the lattice and strange things happen. If you still have trouble let me know. I can create a simpler (ie not twisted) blend file for this.

Matt,

I am revisiting this technique again because I feel it can be a great work around for animated bendable text on a path. But I still can not get it to work.

I am using Blender 2.45.15

MY PROCESS:
New scene, I delete the cube.
I create a font object in the top viewport and type some text. I extrude the text and bevel the text by clicking the right arrow once for each field.

I create a Lattice object and put it in edit mode. I position the verticies of the lattice so the bounding box of this cube surrounds the text. I exit edit mode for the lattice. I press F9 to bring up the editing section for the lattice. I type 24 for the U parameter and I see subdivisions appear within my lattice.

I select the font object and press the N-Key while the mouse is over a 3D viewport to bring up the numbers box. I type “Lattice” as the parent of the font. I add a Lattice modifier to the font and type the name of the LAttice object into the OB field.

NOTE: At this point, the process messes up! I see the font jump out of the lattice and only part of it remains inside the lattice. Also the part that remains in the lattice is stretched incredibly large.

So I continue on and create a Bezier Curve object.

I select the lattice and add a “Curve” modifier to the lattice. I type the word “Curve” in the OB field and the lattice jumps to a new position and is now being deformed by the curve.

Part of my font object is being deformed, but hardly the way I would like.

Once again, I would like to know what in the process have I done wrong?

I set

Attachments


Ok, here is a better workflow.

New Scene completely empty, not even default cube. ASsumes the 3D view is in the top view.

Create a new lattice.

Create a new font object. Go into edit mode and type your caption or message. Click the extrude arrow to give it some height and click the bevel arrow so the text will pick up some glint when viewed from an angle. Click Center New to recenter the text in the viewport origin. The text should be centered in the cube even if parts of it are outside the cube.

Turn on the scale tool so you can size the text independently in all 3 axis. Scrunch the text so it fits inside the cube area of the lattice. It will look wierd/funny but go ahead and do it. (See attached image).

Press the N-Key to bring up the numbers dialog box for the font object. Type “Lattice” in the parent field of the numbers dialog.

Click Add Modifier to add a lattice modifier to the font object. Type the word “Lattice” in the OB field of the modifier.

Select the lattice object and scale the cube out until the original text message scale is restored. This is an eyeball process, but you could also adjust to an imported background image if needs were critical.

With the Lattice object still selected and on the F9 screen. Type in 24 for the U parameter and 4 for the V and W parameters. Adjust these parameters as needed. You can also go into edit mode of the lattice and select verticies to align them on the boundaraies of letters in the text message so it will only bend between letters in the message. (I did not do this and it still works fine).

Create a Bezier Curve object and scale it up a bit until it is the length of the copy in the font object.

Select the lattice object and add a curve modifier. Type in the name of the curve into the OB field of the modifier.

You will see the lattice object take the shape of the curve, but the font will remain un affected. This seems to be a bug in Blender itself. All you have to do at this time is to select the move tool and scrub the lattice along the X-Axis. The text will jump back into the lattice and be fully deformable.

Also, because we have not converted the font object to a mesh, the font object is full editable. Note, severe copy changes may require that the initial alignment to the lattice be performed again, but basic editing of bevel and small copy edits should do fine.

Attachments




Atom: Well I am glad you are figuring it out. The strange thing is you could be much less precise in 2.45 and things would work just as I laid it out originally. However, as you found that is not the case in 2.46. Thanks for all the work you put in to my random idea. It would appear my fatal flaw was, that I was always trying to fit the lattice to the text instead of fitting the Text to the lattice.