See How Cloth Simulation Was Done in This Assassin's Creed Eclipse Fan-Made Project

Duong Nguyen has shared with us their latest fan-made project, Assassin's Creed: Eclipse, and explained in detail the creation process behind beautifully crafted cloth simulation.

Introduction

Hi everyone, I'm Duong Nguyen, a Vietnamese person (full Vietnamese name is Nguyễn Đức Dương). Currently, I'm working at Sparta VFX studio as Lead Compositor. It's also the first official VFX studio of which I have been a member since 2019. Besides, I'm a VFX self-learner, making progress toward challenging myself to become a CG Generalist specializing in Compositing, Lighting, and CFX Simulation. So far, I have participated in a significant number of projects, including Film, Cinematic Trailer, MV, and TVC.

About personal work, I also have some typical ones that I'm really happy to share, such as "Vegeta Super Saiyan" (2022) and "Assassin's Creed: Eclipse" (2023). My biggest dream is to work in reputable studios in the world, giving me chances to join in amazing projects with other outstanding artists. Here you can check my demo reels to get a better understanding of what I have worked on.

How Assassin's Creed Series Inspired the Eclipse Project

When I was a child, I played Assassin's Creed on my mobile. I could not recall its exact name, but I remember that I really loved the protagonist because he looked so cool and mysterious. He, in the familiar costume with the hood over his head, always made me feel excited. Honestly, as I grew up, I didn't have much time to play games, but my love for Assassinэs Creed was not dead.

Annually, I eagerly await the new trailer to see my beloved character in a new story. Besides the cool appearance of the Assassin, the epic landscapes in wide shots also captivate me. I'm someone who is really passionate about epic movie scenes. These things have inspired me a lot to have an idea about creating my own Assassin.

My favorite frames in AC trailers

After a long time of self-practicing as a CG Artist, I felt that I needed to push my skills of Compositing, Lighting, and CFX Simulation (my strongest skills) to a new level. Particularly, I cared firstly about the CFX (referring to Cloth Simulation in this case) as it would precede the other two phases.

To significantly develop this skill, I needed to choose a character with a multi-layered and intricate costume. Besides, he was required to perform a complex animation sequence at a fast pace. This sequence had to contain the action of rolling on the ground because it strictly required a smooth interaction among the multi-layered costume, the ground, and the character's body. Also, I wanted the cloth to play with an environmental force (wind) to make it look as dynamic as possible. All of these challenges immediately bring Assassin's Creed to my mind. As a result, I decided to choose Assassin's Creed as the target for my personal project.

Modeling, Texturing of the Character & Outfit

With the initial goal of elevating my above main skills, I decided not to spend too much time on modeling and texturing. Therefore, I purchased a costume pack (it also included a basic body mesh) by Evgeniia Petrova on ArtStation – after hours of deliberation among many options. 
I don't know why Evgeniia has deleted this from her store, so now we cannot view it on the web anymore. However, I have still credited her in my original upload on YouTube.

After downloading, I made some topology adjustments in Marvelous Designer and exported it. Then, I fixed all the cloth self-intersections in Houdini. At first, I intended to use the texture maps provided by the author. However, later on, I decided to create my own look for my hero. Hence, I did all the texturing and look development with some seamless maps and noise ones.

A comparison between Evgeniia's version and mine

In terms of tools, I used Houdini for Cloth Improvement & Simulation, Maya for Scene Assembly and Lighting, Arnold for Rendering, and Nuke for Compositing.

Cloth Simulation

For cloth simulation, I utilize the Vellum system in Houdini. Actually, I have mainly used built-in tools and features provided by Houdini. For additional things, I recommend getting SideFX Labs tools to improve your working efficiency sometimes. I love the Labs UV Visualize, Labs Fast Remesh, and Labs File Cache the most. However, do not over-use third-party tools, even these above Labs tools because they cannot work stably all the time and may cause unexpected problems.

About the simulation process, let's take my Assassin's Creed project as an example to explain.
Step one is "Building and retargeting the animation sequence": Firstly, I go through all mocaps in the mocap libraries to select ones that meet my idea. I'm not paid to advertise, but I have to admit that MoCap Online is a fantastic mocap resource. If you want to create personal projects but don't know how to animate, I recommend checking it out. Of course, you can also make use of Mixamo, which is also an amazing library, and it's free. When I have all I want, I import them into Houdini and blend them to build the final animation sequence. Next, I retarget this animation to my rigged character with the help of Rig Match Pose, Map Points, Full Body IK, and Bone Deform.

Retarget animation nodes

Retarget animation result

Step two is "Fix body and cloth existing intersections". Self-intersections of body or clothes from previous phases (animation, cloth design) are unavoidable. For cloth, some could be procedurally fixed by painting a @mask attribute and smoothing these areas, while the others require manual work, it depends on the case.

Fortunately, we can handle the body issues procedurally. There are some methods for this, but for my Eclipse project, I have chosen my favorite one. With VEX in Houdini, I can use the volume sample function as the condition to detect the intersections and push them out of each other.

Fixing cloth intersections

Fixing body intersections

Step three is "Simulation – Testing all the parameters to find the best result". It's time to test what you have in mind. This step requires both patience and critical thinking. Critical thinking for finding all possible solutions and patience for keeping testing them all day.

To prepare for a good simulation, I have to anticipate if certain areas would require more careful handling, such as the collar, wrist, shoulder, etc. If so, perform an "attribute paint" with a clear name. It really helps later on.

The next step is cloth configuration for simulation. A top vellum constraint node (constraint type: Cloth) is always necessary for cloth simulation. A quick tip is to create it by pressing the 'Tab' button and typing "Vellum Configure Cloth". All the parameters are ideally set for a good start, instead of wasting time on doing unnecessary things. The cloth configuration node must be connected with the Vellum Solver one to get ready.

I initially start with 5 substeps and 100 constraint iterations. Then, I do the RnD as many times as possible. Each failed turn helps me to determine which parameter should be tweaked and whether or not an additional constraint is needed. I continue this process all day until I achieve the most realistic result possible.

One of my cloth configuration after many times of testing

Final simulation

Conclusion & Advice

First of all, you should watch all the Vellum master classes on YouTube before pursuing any advanced courses. Many artists think that free tutorials are not as helpful as purchased courses. However, I think it's a misunderstanding because these YouTube tutorials are so informative and helpful. After finishing them, you can surely have a good understanding of fundamental concepts related to Vellum Houdini. And the rest thing, not less importantly, is to keep testing after testing (I will explain this more specifically in the second and third points). It is a matter of learning the fundamentals and practicing.

Secondly, a common question is: "Are there any available settings for cloth simulation?" There are no universal presets for Vellum Cloth, each new project will have to change the settings. You must understand that Vellum is a particle-based simulation, and it depends on the topology of the cloth. However, you can create a cheat sheet with illustrated videos depicting the typical characteristics of common cloth types. We could apply that throughout various projects.

The next question is: "How do we fill in that cheat sheet?" You need real-life references! YouTube, Vimeo, Bilibili, etc. are always good sources for finding references. Sometimes, it's difficult to get the desirable references from them. However, it's a common story, don't worry! The simple solution now is that you can get the clothes from your wardrobe or your friends' ones, which have similar fabric to the ones you intend to simulate. Then, wear it and perform various actions, observe yourself in a mirror, and record it with your smartphone/camera for storage and further analyze the characteristics of that fabric. Now, you can have a good base for the beginning.

Thirdly, how to start well with Vellum Simulation? As I've mentioned, there is no universal setting for all cases. After you know how your desired cloth should look, strive to achieve it! You can initially start with 4 substeps and 100 constraint iterations, and go higher if it's not enough. Do the RnD as many times as possible, until you get the result that you think is the most realistic. My advice is really simple: Do not over-config them and experiment more with small pieces of cloth.

Interview conducted by Gloria Levine

Duong Nguyen, Lead Compositor

Keep reading

You may find these articles interesting

Join discussion

Comments 0

    You might also like

    We need your consent

    We use cookies on this website to make your browsing experience better. By using the site you agree to our use of cookies.Learn more