Curtains - Two approaches

(of many)

CS22: Loeb W19

There are lots of ways to make curtains. Here are two.

  1. NURBS

If you want a simple way to create curtains, here it is.

Open the file from the Files to Download for Class folder

You will see some walls, a simple window and some curtain hardware (rod and tie backs). Make the curtainHardware and Walls layers References, so they are shaded but you won't select them on accident.

Create a Curve using the Pencil Tool

  • Go to Create>Curve Tools>Pencil Tool
  • In the top orthographic view, move the viewport view so you can see the curtain rod.
  • drag a shape that looks like some curtains that are half the window wide, as shown

  • Go to the front orthographic view

  • Duplicate the curve and move it up in Y
  • Duplicate it two more times, putting one curve at the place where the tie back is and one at the rod

  • Select all the curves

  • Go to Surfaces>Loft

NOTE: The Options Box for Loft should be in the default settings.


Now you can use the curve control verts to shape the curves, using the move tool or scale.

View your curtains in 3 mode to see them smoothed.

Save your work.

You can also use the scale tool to make the curtains tied back by slecting the curve and moving the pivot point before scaling.

  • If you need more detail to smooth the shape, you can Right click on the lofted surface, Select Isoparm
  • Click on one of the horizontal edges (Isoparms in NURBS)
  • drag it into place.
  • Go to Surfaces>Insert Isoparm

  • You can duplicate the curtain and move to the other side.
  • Scale in x -1 to flip it.
  • Move and Shape as needed.

using nCloth

Another way to make curtains is with nCloth.

Open the scene from the Files to Download for Class folder

Another way to make curtains is with nCloth. This can be nice if you want to have wind blowing in through the window, or some other dynamic effect.

This scene is like the last but there is a fairly hi-res curtain polygon object.

In this case, the curtain will be the nCloth object and we will constrain the translation in some of the verts to create the draping shape.

Select curtain_L and in the FX module, go to nCloth>Create nCloth

Make sure you are in your practice project and save the scene.

Creating tranform contrains

To prepare for this, make sure your timeline playback range is set to a very high nunber (between 2000 and 2500 frames)

For this, let's be sure your shelf is showing. Go to Windows>UI Elements>Shelf

In vertex mode, select the upper left four verts (two from the top row and two from the second row)

Then go to nConstraint>Transform Constraint

Right click again on the curtain object, choose vertex, and select four verts about 8 faces to the right, and hit g (to repeat the last command, which was nContraint>Transform Constraint

Keep going

Be sure you get the four verts at the left and right top edges!

Hit the Interactive Playback button on the FX shelf (mine isn't showing right now, but it was before) or go to Fields/Solvers>Interactive Playback.

You will see gravity impact the curtain but the verts with the constraint stay in place

You can stop the playback in the timeline by hitting the red stop square. Rewind to the beginning.

If it is moving super super slow, it could be your scale needs to be changed to 0.01.

Shaping the Curtain

To create the shaping, read through this, watch the demo, then try it:

  • Make sure you are in Frame 1
  • Turn on Interactive Playback
  • Select all teh dynamic Constraints from your outliner except the first one.
  • Move them over in -x as shown.
  • Keep going, selecting one less constraint each time to keep moving over the curtain and create folds.

In the Attribute Editor:

Go to the nClothShape1 node Change Stretch Resistance to a higher number, maybe 100.

You can also change the presets to something like burlap, if you'd like. If you want wind coming in from the window, you could use the nucleus1 node in the Attribute Editor and change Wind Speed to a slightly higher number, making the Direction 0 in x, 0 in y and 1.0 in z (since the window is in z)

If you like a certain shape, you can delete history.

You can move the curtain away from the wall if it is going through it. Duplicate and move it to the other side, or repeat as above.

Once you have the shape, you can still change it by moving verts around. It might help to reduce the resolution, using Mesh>Reduce to make it easier to select edges and verts to move them.