Hi All,
I am working on improving Unity’s cloth system and as part of this would like to gather people’s thoughts on cloth authoring workflow and features.
As part of Cloth Improvements requirements capture, I have looked at nine different authoring packages, and they all tend to fall in one of two groups:
1. Basic cloth authoring and tweaking given a pre made cloth mesh.
as seen in APEX, Modo, Maya, Syflex, Shroud, Havok
- Cloth is created using a given triangle mesh, that is rigged with animation bones.
- Cloth constraint values are set and tweaked by painting them onto the mesh with a brush.
We should begin our cloth improvements by implementing a brush based approach like this.With the added ability to paint on the cloth whilst it is being simulated in the editor view.
Quick, easy to use and generally all that is needed for a lot of cloth scenarios.
We should include:
- Plenty of examples of usage.
- Tutorials.
- Documentation.
- Testing.
Whilst early adopters are using this and giving us feedback we can look at the internal side of cloth and work on:
- LOD’ing.
- Self collision.
- Cloth-cloth collision.
- Adding additional collider types.
- Generating colliders from a mechanim avatar.
2. Advanced, garment making style approach.
as seen in 3ds Max, Marvellous Designer, Optitex
- Taken from packages used to design real clothing, a sophisticated “Garment making” approach that allows users to assemble clothing from smaller pieces that are “stitched” together.
- Using a series of custom user interface tools, often with lots of extra helpers to make the process as simple as possible. ( Marvellous Designer is the state of the art for this approach )
- Much more sophisticated than the first approach, probably overkill for a lot of cases, particularly for low end platforms.
However as time goes on and technology becomes more powerful, this will ultimately be the way people author cloth.
This could be a long term improvement to the cloth that we will need some new runtime tech for welding/stitching verts.
We can work out exactly what we require editor/runtime wise as we implement the first set of improvements.
Initial requirements capture/task breakdown.
UI/Workflow improvements
- Brush based constraint painting. ( I have started looking at the terrain editing tools for this, as they already have the brush like tech we need )
- Live cloth tweaking in editor.
- Combine these into a free asset store package for early adopters, or create a custom build, to be decided. Evaluate the best option.
- Create plenty of examples of usage.
- Create tutorials.
- Documentation ( remove old out of date docs and write new ones ).
- Testing ( make sure we have the right testing framework for cloth )
Runtime tech side improvements
- LOD’ing.
- Self collision.
- Cloth-cloth collision.
- Adding additional collider types.
- Generating colliders from a mechanim avatar.
Garment making tech
- Garment making UI.
- Garment making Runtime - stitching/welding tech.
- Plenty of examples of usage.
- Create tutorials.
- Documentation.
- Testing.
Please let me know what you think about this, thanks!

