Hi, all. I wanted to follow-up on a topic we shared in our most recent physics roadmap update – the deprecation of Unity Cloth:
“As part of streamlining our physics workflows, we are considering the deprecation of Unity Cloth in a future version of Unity. If your studio/company is using Cloth, please let us know in the comments so we can get in touch about your experience with the feature.”
– Physics development status and next milestones May 2024
I wanted to resurface this to make sure it gets the visibility and discussion it needs, and so that you all have a chance to provide feedback. We’d love to hear from more of you about your experience with the feature. In particular, we’d like to know:
Is Unity Cloth helpful for your projects?
Do you use custom or Asset Store solutions for cloth instead of Unity Cloth?
Would the absence of Unity Cloth negatively impact your creations in Unity?
We want to make sure we’re focused on building the right features for your physics needs, your feedback helps greatly with this. Thanks in advance!
Hello!
I just want to share I’m excited for the removal of Unity’s default cloth, as it caused me much pain to work with prior
I’ve attempted to use it multiple times over the years. It always came as lackluster and inconvenient to use. The inability to paint the cloth weights with a prepared texture for example, made authoring the cloth far harder on dense meshes.
I’ve been alternating between various spring bone type solutions. “Dynamic Bone” and “Magica Cloth”(2) have become staples for replacing this behavior. That said, There’s still a lot that’s inconvenient to author and test out - Particularly in cases where you want to mimic cloth vs cloth collision, not to mention skinned meshes. (e.g. scarf does not penetrate cape)
For my own case, the answer is a firm ‘no’, with an added ‘good riddance!’ (with respect to everyone who worked on it).
To throw a fun memory, the first post I ever made on Unity’s forum was in regards to the cloth component not letting me author correctly, because I had an FBX from blender that imported as scale 0.01 and rotation x -90. When trying to edit cloth control points, the authoring bounding box would go sideways and change size, it drove me quite mad… and sent me on a whole journey to eliminate bad imports from unity. (At least personally!)
Thank you for cleaning up Unity! I hope to see all the new stuff soon too!
Yes, i use magica cloth currently. I used to use ObiCloth, but magica is much better for characters, more versatile, and more performant (no issues on mobile!).
I have never once used Cloth or noticed it being used by others in any project I was involved in over the past 10 years.
I did buy Obi Cloth and experimented with it for a while. Either I was unaware that Unity had cloth or it was obviously not going to support the use case - I needed the cloth to interact with other physics objects. I think it was the latter that made me ignore it but not 100% sure. The goal (literally and figuratively) was to create a goal net.
Yes, my long term project is a naval simulation in the age of sail. The sails are using Unity Cloth for the visuals (forces on the ship’s rigid body is my own simulation). Additionally the ship’s flags & ensigns. Below you can see Unity Cloth is a core visual element, covering a big part of the screen. A cloth simulation provides a more realistic result than simpler solutions which I tried (i.e. skinned mesh renderer + blendshapes)
No, I started with Unity Cloth and already developed my workflow for this solution. I had the impression, most asset store solutions are more focused on features and workflow for clothing (not my use case)
Yes, for sure. I need to have an alternative, a sailing simulation needs some realistic sails and flags to keep the immersion. If I have to use another solution, I will need to invest time to adapt to the new solution a) the simulation code interacting with sails and flags and b) the ship models (currently 20 different ship models)
This is time that will be taken away from work in features and polishing.
I followed the link to the roadmap. I understand the intention is to stop offering a cloth simulation and rely on the developers using an asset store solution or developing their own custom solution. Is my understanding right?
Thanks for asking for feedback I appreciate when users are asked about certain important decisions.
Yes and imo it was pretty easy to use i like it. I used it on some low poly projects with friends and i was happy with the result i also used it on a personal test of HDRP and tbh imo looks good with good performance on a low-mid end laptop, it was easy to use and the documentation is also good, idk if you have the time to watch a video on youtube but you can see the results here: https://youtu.be/CmftjaFPmaQ
Well of course… we don’t want to lose a feature if there is not an official good alternative of course (and not something that feels like an injected beta feature like the new water system imo)
Yes, although in a very basic manner since the results are mediocre at best. It is easy to use but it would take some improvements on selecting nodes (see 3dsmax brush selection) and maybe use a weight texture or a native vertex painting solution in Unity that would be useful outside cloth too.
Yes. Mainly spring bone type solutions. Magica is the best imo, but I also like Dynamic Bones. But for my assets in the store, I use the native Cloth.
Yes. That would be a problem for many assets in the store and our customers.
Having a native cloth solution is a must for every serious creation tool. Do not remove it. Make it better. Or buy Magica Cloth and make it native
Yes, it is essential for my project, so it would be great to have an official alternative, because I don’t want to depend on asset store for essential features. Also I need it to work properly on mobile platforms. And the current Unity cloth system works well on mobile.
Yes, I use it and it’s always done exactly what I needed it to, especially for things like flags and window curtains where the player will interact with it. I’d really rather not have to learn something else unless there is an extremely good reason for deprecating it on your end.
Is the maintenance for keeping it uodated high or something? If it’s not broke, don’t fix it. People can always use a custom option if they don’t like it, just like they can do with just about any other functionality.
If anybody is interested in seeing an optimized implementation of the current cloth system, I have a cloth physics example in this asset:
If somebody is not familiar with the current cloth system and want to explore a practical usage/example, let me know I can give you give a free voucher. First come, first serve. PM me as to not clutter this thread please.
I humbly ask you to consider looking at my implementation before throwing the whole thing in the bin. I ask this most genuinely because if the existing cloth system is deprecated, that’s going create at least a month of unpaid work for my massive in-house building interiors library. I respect the opinions of others, but that would be pretty demoralizing to do all that work when it currently works pretty well for 90% of use cases.
I do think there are some cool potential uses of entities for cloth physics:
thousands of banners / flags carried by soldiers in a medieval army (also their capes and clothes). This could useful for not just gaming, but also film/tv.
fashion design industry applications with catalogues of thousands of clothing or parts. Could also be used for ultra detailed small games or point of interest buildings like clothing stores, dry cleaners, modeling agencies, etc.
Large throne room or banquet hall scenes with thousands of cloth parts in extreme detail like every single napkin, chair cover, drape, table cloth, and tapestries are interactable. This would be a really smooth next-gen level of polish.
To be fair, some if not most of these things, can be optimized with the right approach using the current system though with things like skinned mesh combining, setActive triggers of the camera layer, per layer camera culling and in the largest scale worlds, additive scene loading and unloading…mostly with very simple boilerplate Unity API code.
Edit: Additional uses of cloth include hair, ropes, and chains.
I’m a happy user of Magica Cloth 2. Dropped Unity Cloth long time ago (like 10 years). It was very bad at that time and it’s even worse compared to current standards.
As I said in the other thread, we don’t use it because we tried and it wasn’t good enough, we haven’t used third party assets, and we wouldn’t be affected.
What we found when we were trying to work with it was that if it was attached to anything moved to the player, it would very quickly end up just glitching through stuff and generally look broken often enough that the overall impression of our game would be worse with it in than without it. We considered the time it would take to make good cloth sim to not give enough bang for the buck time-investment wise, and it was better to just do prebaked cloth sim when authoring animations.
That being said, if there was a good cloth system that was easy enough to use that we ended up with decent looking results without that much work, then that’d add a lot of value to the engine. So if you’re willing to put in the work required for things to look good most of the time (which would mean not just solid tech, but also actually writing good tutorials and having good samples at different production quality levels), then that’s probably better than just killing it off entirely.
But if the choices are either “leave it as-is, half broken” or “delete it”, then I think deleting it would free people up to go for a good asset store package instead of wasting time on a half broken system.
Do you know if your customers are actually leaving the cloth components in when they use those assets? We regularly strip out a bunch of fancy systems from assets packs, since they might have a large overhead that we don’t need for background assets. A cloth system on some curtains would be one of the first things we’d strip.
Of course, there will be people who use it and those who find it useless. Additionally, many will be surprised when it is deprecated without seeing this topic.
Instead of deprecating it, I would suggest replacing it with a modern version that is simple yet effective, like the Paint for Windows. Nothing ambitious but does the job.