Loopable flag


flag render

how to make a loopable cloth simulation using 3ds max

1. Simulation

Make a hi-res 2:1 plane, and add some geometry details for the seams.

plane settings

Choose cloth settings for a whole flag (e.g. silk or satin).

cloth settings

Make two cloth groups – one for a cloth preservation near a flagstaff (with a small soft selection), and another for a heavier cloth at the seams imitation.

flagstaff group

Change the seams group cloth settings to a more rigid (e.g. burlap or rubber).

seams group

Set up the gravity and a wind with the turbulence. Animate the wind’s direction and strength. For a better turbulence settings control I made a simple particle system and bind it to the wind space warp.

wind settings and particles

We are ready to run the simulation. You can also play around time scale to make the flag looking magnificent.

time and simulation

2. Point cache

When simulation is over – it’s time to make a point cache from it.

Apply the point cache modifier over the cloth.

Save the cache to the HDD and put the files to the network folder for a distributed render or backburner (For some reason exporting directly to the network folder doesn’t seem to be working).

point cache

Now get rid of the cloth modifier from the stack for a file size economy.

Make a copy of cached flag and choose a pair of the most epic simulation parts for a future loop using a playback type – playback graph.

point cache curves

To get a proper loop, the playback graph frame number of the first flag copy in the first frame needs to be equal to the playback graph frame number of the second flag copy in the last frame.

3. Morphing

As I noticed, simple morphing is not enough for a proper looping of the cloth anmation, so for the more natural cloth motion use the “wipe” morphing transition described below.

volume select

Apply the Vol.Select modifier to the first copy of the flag under the point cache. Animate modifier’s gizmo motion in the wind direction. It should come over to the flag with a huge selection softness.

Put the morpher modifier over the pointcache and choose the second flag’s copy as a morph target.


Turn on the automatically reload targets switch for an animated result.

4. Wrinkles

As seen on the reference videos there are small wrinkles appears around a seams which are looking good, however we still don’t get them so far.

Simulate the thin cloth stripe with fixed top vertices (selected every second vertex). Add some wind with small strength and huge turbulence.

wrinkles production

Render the simulated stripe with self illuminated gradient material applied across and get the wrinkles displacement map.

Assemble looped construction from the rendered stripes and put it to the map slot in the displacement modifier over couple of turmosmooth iterations.

5. Texturing and render

Make the diffuse, bump and opacity textures from the cloth photos in Photoshop.

Make a vray2sided material with a vray material inside. Put the maps to the corresponded vray material slots.


Set up the lighting and render.


35 Responses to “Loopable flag”

  1. very good all tutos

  2. 2 Cutter Johnston

    My man. Question? So I am working on the cloth tut @Home and after the first frame the entire simulation disappears. @School I was able to view the simulation. Might you have any idea what settings have changed? Sorry for this mundane question. Cutter

  3. 3 vitsly

    2 Cutter Johnston:

    check out the scene’s units and scale before simulation

    try to increase simulation steps, or cm/unit value

    check out the cloth geometry before simulation. is there an intersecting faces or non welded vertices

  4. 4 toby

    Hi Vitsly!

    Great work, you share in your tutorial. My question is on how you’ve modeled the flags’ seams? Is there any chance to share your modeling process on this, or even your finished 3ds max file?
    Keep up your good work.

    Best regards,

  5. 5 vitsly

    Hi, Toby!

    Thanks %)

    The flag seams were made with Editable Poly base functions.

    First, I selected edges, where seams will be. Then Chamfered them a little, and selected resulting “ring” of perpendicular edges.

    Then i Chemfered selected edges again. That’s it %)

    Regards, Vitsly.

  6. 6 Pete

    So can you elaborate on this statement:

    “To get a proper loop, the playback graph frame number of the first flag copy in the first frame needs to be equal to the playback graph frame number of the second flag copy in the last frame.”

    I have the morph working and the volume select, but it still doesn’t seem to loop, and I think that it is this statement that I am messing up. Or do you simply mean that if you use a playback range of 300 frames for the Flag, then the FlagMorph also needs to have a playback range of 300.

    And if that is all, then what am I messing up on the loop part of it? Agh!
    Thank you for your time and consideration,


    • 7 Phil

      I have exactly the same problem as Pete, it seems the Morpher doesnt get the soft selection…
      Any suggestions

  7. 8 André

    I would love to know a little more about how you controlled the wind’s turbulence using a particle system!


  8. 9 Roger

    Great tutorials you got here, Vitsly!
    Thank you for sharing your knowledge with us.

    Could you please tell us in more detail how to create the wrinkle displacement map?
    Wind, turbulence and fixed vertices parts are clear. But how did you manage to make the lowers part of the plane to be flat and not moving?

    Thank you in advance.


    • 10 vitsly

      2 Roger

      Hi, thanks Roger!

      Note the modifier stack at the right part of the picture with Wrinkles planes.

      The plane’s points are cached with Point Cache modifier, and then Point Cache applied only to soft-selected vertices at the top of the plane.

      So we have wrinkles at the top and flat plane at the bottom.

      That’s it.

      • 11 Roger


        Pardon me for a silly question but how to apply Point Cache modifier only to soft-selected vertices?
        Firstly, I applied Poly Select modifier, secondly I used soft selection. While soft selection was active I applied Point Cache modifier but it applied to the whole plane and not only to the soft-selected vertices.


      • 12 vitsly

        There is a checker named “Apply to Whole Object” in Playback Options in the Point Cache modifier. Turning it On will help.

      • 13 vitsly

        Sorry. Turning it OFF will help :)

      • 14 Roger


        Thank you very much! It worked!
        I really appreciate your help.

        P.S. Should we be expecting any new tutorial soon? :)

        Cheers, mate.


  9. 15 egbert

    I get stuck here……

    “To get a proper loop, the playback graph frame number of the first flag copy in the first frame needs to be equal to the playback graph frame number of the second flag copy in the last frame.”

    Any chance this could be explained in more detail ?..


  10. 17 egbert

    thanks vitsly, I came back to have another go at this effect and I have it !! :)
    actually It was YOUR trackview shot that fixed my confusion.

    Many thanks for a great effect

  11. 18 Jolen

    Can I use this way (Point cache + morph) to let tree motion loopable?
    Because it’s used Noise rotation controller to make animation.

  12. 20 Sabandija

    Can you ellaborate a bit more on the small wrinkles?
    I dont get how you exactly did it and thats the part wich puts lot of realism in it. Thanks in advance!

  13. 21 Aleksandar

    Can you put here the .max file?

  14. 22 Anonymous

    When I apply the Point Cache mod, it inverts the normals on my model. I had to apply the normals mod to correct the error. Then when I copied the object I copied “nothing” or the copied object is invisible in the viewport. Only when I clicked off the point cash on the copied object, it would show up inverted and upside down – and of course the recorded frames did not play because the Point Cache mod is turned off.

    I just love these little catch-22s 3ds Max makes. FML -.-

  15. 23 SC

    I can get my flag to either play the point cache animation correctly or only the morphing animation with the volume select. When I get the morph to work the vertices only stay still before the volume select hits in. Any ideas? Im going crazy already, don’t understand what could be the solution. Thanks for a very elegant solution to the cloth morphing problem, just would need to get it to work! :)

  16. Very nice and intelligent solution for looping.
    Thank you for sharing.

  17. 25 Anonymous

    I really have trouble making the small wrinkles. How do I apply a displacement texture on a certain material ID.. I really don’t get the method with which you displace the small wrinkles..

  18. Just brilliant. Very smart.

  19. It’s very easy to find out any topic on web as compared to textbooks, as I found this paragraph at this website.

  20. Fantastic post however I was wanting to know if you could write a litte more on this subject?
    I’d be very thankful if you could elaborate a little bit further. Bless you!

  21. Hello, this weekend is nice in favor of me, for the reason that
    this occasion i am reading this great educational post here at my residence.

  22. Hi there colleagues, good post and nice arguments commented here, I am really enjoying by these.

  23. Greate post. Keep posting such kind of information on your blog.

    Im really impressed by your site.
    Hello there, You’ve performed an excellent job. I will certainly digg it and in my opinion suggest to my friends.

    I’m sure they will be benefited from this website.

  24. 32 Jens

    I’ve used this tutorial and had a lot of help from a while ago, but now it seems the images has gone missing. Anywhere I can find this full tutorial including images?

  25. whoah this weblog is fantastic i love studying your articles.
    Stay up the good work! You understand, lots of individuals are looking round for
    this info, you could aid them greatly.

  1. 1 3Dean: Loopable Flag tutorial using Cloth in 3ds Max | 3ds Max Store
  2. 2 3Dean: Loopable Flag tutorial using Cloth in 3ds Max | Motion Media Blog

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: