Image generated with AI
nCloth in Maya: Cloth, Collisions and Caches Step by Step
Diego Cortés
Author
Fabric is not modelled: it is simulated. nCloth turns your mesh into a particle network that falls, collides and wrinkles on its own. This is cloth simulation in Maya end to end: build it, collide it, pick the preset and cache it.
What nCloth Is and How Cloth Simulation in Maya Works
A Network of Particles, Links and Cross Links
Every vertex is a particle, every edge a link that keeps the distance, and every quad face adds two cross links that hold the angles and prevent shear. Key detail: they are only generated on quad meshes. Triangulate before converting and the stretch comes out skewed, with no fix afterwards. You can turn them off with Add Cross Links on the nClothShape.
Input Mesh, Output Mesh and the Nucleus Solver
When you create the nCloth, the original mesh is hidden and becomes the input mesh, which you keep to edit topology. What you see is the output mesh, and that is the mesh you keyframe if you animate cloth by hand; its internal resolution is controlled with Quad Split and Mesh > Smooth softens it. nCloth does not simulate on its own: the nucleus node does, holding the forces, the ground plane and the timing and scale attributes. Every object in the system shares them.
Creating Your First nCloth, Step by Step
Local or World Space Output
In Create nCloth Options comes the first decision. Local keeps input and output under the same transform and the original mesh follows the result: the most predictable behaviour and the default you want. World lets only the output simulate, with its own transform, which is what you want when exporting the cache. The nCloth node stores the properties and the nucleus the forces.
Scene Units and Scale: The Number One Mistake
The solver reads scene units as metres. Work in centimetres with a 180-unit character and for nCloth it is 180 metres tall: the cloth falls in slow motion and passes through everything. The fix is lowering the nucleus Space Scale (1 unit = 1 cm is 0.01). Time Scale at 2 runs at double speed and the cloth feels heavier.
The Nucleus Solver in Detail
Gravity starts at 9.8 and 0 turns it off. Air Density is 1, and higher values make the cloth behave as if underwater. Wind Speed runs from 0 to 1, and the Ground Plane gives collision without geometry (Plane Friction 0.1: 0 is glass, 1 is asphalt). Under Solver Attributes, Substeps 3 and Max Collision Iterations 4. Skip frames and Maya warns "frame change too large": the answer is caching, not raising Frame Jump Limit.
Collisions: Keeping the Cloth Off the Body
Passive Colliders with nRigid
Select the mesh that must stop the cloth and use nCloth > Create Passive Collider: an nRigid node is born on the same solver. That mesh does not simulate, but it takes part in collisions. If all you need is a floor, Use Plane gives it with no geometry.
Thickness, Collision Flag and Self Collide
Thickness is the radius of the collision volumes (0 approaches silk, 1 approaches felt), and the key point is that collisions happen in those volumes, not on the surface. Collision Flag offers Vertex, Edge or Face, and Face is the most accurate. Self Collide with Self Collision Flag stops the cloth passing through itself.
Collision Layers and Collide Strength
Collision Layer on the nClothShape and Collision Layer Range on the nucleus order the garments: passive skin on 0, shirt on 1, jacket on 2 with range 1 makes the shirt push the jacket and not the other way round. Passives only collide with their own layer or with higher-numbered layers. Collide Strength runs from 1 to 0 and can be painted per vertex; for pieces that must not interact there are Disable Collisions and Exclude Collide Pairs.
Dynamic Properties: How Each Fabric Feels
The Ones You Touch 90% of the Time
Low Stretch Resistance is lycra and high is burlap. Low Compression Resistance wrinkles like crinoline and at 0 the cloth acts like elastic that shrinks. High Bend Resistance is rigid and low is the tablecloth draping off the table edge. Shear Resistance is left at 0: cross links already prevent shear and computing it costs time.
Rigidity, Input Mesh Attract and Shells
For semi-rigid shells you have Rigidity (1 is a rigid body) and Deform Resistance, which Use Polygon Shells applies per shell on a combined mesh. Input Mesh Attract measures how strongly the cloth returns to its input mesh shape and helps direct the simulation when deformers are involved: with Input Mesh Method on Lock, vertices painted with 1 stay pinned and compute no forces or self collision, which saves time on dense meshes.
Maya's Fabric Table: Real Preset Values
The nClothShape presets are not magic: they are attribute values. In Stretch / Compression / Bend / Mass / Damp / Friction order:
| Preset | Stretch | Compression | Bend | Mass | Damp | Friction |
|---|---|---|---|---|---|---|
| Silk | 60 | 10 | 0.05 | 0.05 | 0.2 | 0.05 |
| Chiffon | 40 | 20 | 0.2 | 0.15 | 2.0 | 0.9 |
| T-Shirt Cotton | 35 | 10 | 0.1 | 0.6 | 0.8 | 0.3 |
| Loose Thick-knit | 30 | 5 | 0.5 | 0.8 | 1.0 | 1.0 |
| Heavy Denim | 50 | 20 | 0.4 | 2.0 | 0.8 | 0.8 |
| Burlap | 40 | 40 | 3.0 | 1.5 | 4.0 | 2.0 |
| Thick Leather | 50 | 50 | 10 | 3.0 | 8.0 | 0.6 |
| Chain-mail | 50 | 2 | 0.01 | 10 | 0.05 | 0.3 |
Apply them by holding the click on Presets: Replace, Replace All Selected or Blend, which interpolates between your values and the preset.
nConstraint: Pinning Cloth Where You Want It
Transform Constraint holds components in place or moves them and creates a locator you can animate or parent to the passive. Point to Surface stitches components to a surface: the trouser waist to the character's hips. Component to Component is the button that closes the shirt, joining two vertices with Constraint Method = Rubber Band. Tearable Surface makes cloth breakable: with Bend Resistance above 0.2 it shatters into pieces instead of tearing, and it changes the output topology.
Property Maps: Painting Stiffness Where You Need It
With nCloth > Paint Vertex Properties and Paint Texture Properties you define areas with different behaviour. The key rule: the painted value multiplies the attribute, it does not add to it. Painting Input Attract at 1 on the collar makes that area rigid, and 0.2 on the cuffs makes them hang while keeping their shape.
nCache: Simulate Once, Reuse Forever
The simulation is computed during playback, and that is the problem: caching is what makes cloth work viable. With nCache > Create New Cache > nObject you pick the Cacheable Attributes and Maya writes the vertex transformation data to disk, so playback and rendering stop recalculating. The MEL route diskCache is not undoable, and if you use Bend Solver = Flip Tracking with cache append, include Dynamic State.
Common Problems and How to Fix Them
Cloth passes through the body: raise Thickness, try Collision Flag = Face, enable Trapped Check and check that nCloth and passives share the same flag. For isolated contact points, Push Out and Crossover Push.
Popping on the first frame: Maya reduces relative Collision Thickness so nothing overlaps at the start, and that adds invisible friction. Model the parts without overlap and, if something remains, use Resolve Interpenetration.
Too stretchy or too stiff: check the resistances before adding samples. Sort Stretch Links with Evaluation Order = Sequential cuts stretching without touching resistances.
Jitter or slow simulation: Bend Solver = High Quality keeps a history of crossings and prevents flipping the surface inside out. If the shot drags on, simulate with a proxy mesh and use the output as a wrap deformer for the detailed mesh.
Beyond Clothing: Seaweed, Flags and "Liquids"
There are pressurised presets (beach ball, air bag, water balloon) and a "liquids" table (water volume, honey, lava) with Stretch and Compression near zero, cloth that behaves like fluid. On the platform you have two examples: the curated video Tutorial Algas Ncloth - Simulación en Maya takes nCloth to the sea floor, and Create a Flag using nCloth in Maya 2019 is the classic flag with wind and constraints.
Conclusion
The checklist that prevents 90% of the pain: clean quad mesh, Create nCloth with Local or World decided, Space Scale reviewed, passives with Thickness and Self Collide dialled in, a fabric preset, constraints where the garment must be held, and cache before rendering. If you come from Blender, the Cloth modifier solves the same thing with different logic. For the rest of the pipeline: UV mapping in Maya, character rigging, rendering an image sequence and Bifrost in Maya. And to learn by watching, the Maya category and a search for nCloth tutorials.