comparision of realcloth results to reality

Started by mafrieger, January 14, 2020, 01:47:36 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

mafrieger

comparision of realcloth results to reality

just do some testing of realcloth using it to visiualize some technical weaves (carbon).

doing so on some "difficult" geometries, I came across some interesting things of behaviour one could not observe one working with the real material in the real world.
Of course this is a special usecase, but I think one could greatly use this as edge cases to compare the visualisation quality to reality.

1) the width of the warp and weft changes when drapped. This not only happens when set to round (where this could happen in reality because of flatting because of tensions from wraping) but also when set to ribbon. In reality only the gab between the warps and wefts visibly changes.

2) there seems to be no changes of fibre positions / path when changing weave type from plain to twill.
In reality twill weave is far more "drapable" than plain weave. Using twill weave one can wrap a ball without any crimps /buckels.
Using plain weave this is not possible. With this behaviour in reality using twill weave would result to other fibre positions/pathes than using plain weave

mafrieger

#1
please find attached the geometry I used for testing

DriesV

The spacing between the warp/weft yarns and their "stretching" depends entirely on the UV coordinates of the object the RealCloth material is applied to.
RealCloth is one of the reasons we decided to add the Unwrap UV tool, so CAD users can have finer control over their models' UV coordinates than the native CAD app would ever allow for.

Dries

DriesV

Here is an example of a RealCloth material on your model after a Quick Unwrap.

Dries

mafrieger

Quote from: DriesV on January 14, 2020, 02:06:10 AM
The spacing between the warp/weft yarns and their "stretching" depends entirely on the UV coordinates of the object the RealCloth material is applied to.
Dries

that's perfectly clear and visible :)

1) is about the change of the with of the yarns instead of only changing the spacing between them to match reality even better

mafrieger

#5
Quote from: DriesV on January 14, 2020, 02:12:54 AM
Here is an example of a RealCloth material on your model after a Quick Unwrap.

Dries

thanks! Yes this is how it looks.
maybe the name of of this feature "Realcloth" is the perfect but tight use case.

It looks like put into a wool pantyhose - perfect.

When working with technical weaves like carbon or glas fibre the difference is there is no kind of "elastisity" of the fibre (nor parallel nor vertical to the fibre)  only by glide/slide of the fibres within the weave.

mafrieger

Quote from: mafrieger on January 14, 2020, 02:22:18 AM

When working with technical weaves like carbon or glas fibre the difference is there is no kind of "elastisity" of the fibre (nor parallel nor vertical to the fibre)  only by glide/slide of the fibres within the weave.

But thinking about this futher, this should be the same when working with coarse cotton weaves.

Maybe one could implement a switch "elastisity on/off" of the yarn to drive the behaviour:
- of course with some elastisity it is more robust to use
- with no elastististy it meets several cases more realistic but it's harder to use (and also to to implement I think..)

DriesV

I can see where you're coming from, but what you're suggesting would require a far more computationally expensive simulation.
I think it's fair to say this is beyond the scope of the RealCloth material.  :)

Dries

soren

In order to make the RealCloth material efficient to use a single basic pattern is tiled over the surface. It is true that this is not always a good approximation. For pieces of cloth cut from a flat segment that is softly draped it should be good for many use-cases. Since we do the shading using UV-coordinates it is prone to stretching the yarns if the UV-coordinates are not isometric which is of course not ideal either.

The alternative, to compute the behaviour of a weave over an entire surface is far more complex. It would probably also require you to specify how the surface was deformed from the original flat cloth which would be more complex to set up. There are academic papers doing this, and it is not (to the best of my knowledge) super practical to use in a production setting (or at least in a setting where you do not have a lot of idle time to spend setting it up).

We do have some ideas for improving the appearance - for example addressing the stretching of the yarns.
Søren

mafrieger

Quote from: DriesV on January 14, 2020, 05:07:23 AM
I think it's fair to say this is beyond the scope of the RealCloth material.  :)

Dries

yeah, you have made already an awesome piece of software visualize most cloth as real  :)
maybe I'm only loving the last percents of making things really standout to much....

mafrieger

#10
Søren your are absolute right. One always has to find the sweet spot regarding simplicity of usability and the needed compute power vs visual results.
I think thats the main point: rendering is all about visual and not absolutely perfect physics.
And as mentioned above: I think you find it for many many applications.

Quote from: Søren on January 14, 2020, 10:50:18 AM
...
We do have some ideas for improving the appearance - for example addressing the stretching of the yarns.

But ..of course I love to hear about the ideas to make it even better :-)
From the result-image viewers pov, the stretching of the yarns (1) should be the most important peace for going for the last percents of reality look like.
The other point (2) is noticeable during setup - but it should be possible to make the results look fine in most cases with the current state of possibilities.