Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Help  Scale Issue
#1
Hi, I'm a bit new to Obi Cloth (I'm using Obi Rope since long time so I'm familiar with basic Obi components).

I'm facing a problem of scale. If Game Object which Obi Cloth is attached is scaled down to 0.5,0.5,0.5 then it creates a problem in simulation.

At scale 1,1,1 in Unity Transform I get correct simulation when it falls down like image below
[Image: A.png]


At scale 0.5,0.5,0.5 in Unity Transform I get this strange incorrect simulation when it falls down like image below
[Image: B.png]


I tried changing the scale in BluePrint but It doesn't effect, the object is occupies same amount of space.
Reply
#2
(22-08-2024, 09:09 AM)vrtraining Wrote: I tried changing the scale in BluePrint but It doesn't effect, the object is occupies same amount of space.

Hi!

Make sure you re-generate the blueprint after setting the scale value. Changes made to blueprint parameters won't take any effect until you generate the blueprint, this is akin to baking a lightmap: changes to lighting settings won't have any effect unless you rebake the light map.

Also keep in mind that the blueprint's scale determines the size of the cloth. The transform's scale should be left to 1, and the blueprint's scale used instead. This is because affine transforms in general (and scale in particular) only work with rigid objects, not deformable ones. So the scale of the object should be set when generating the cloth data (when it's still rigid), same as it happens with Unity's built in cloth. The only difference is that Unity re-generates its cloth data every time you press play, while in Obi it is generated in-editor and stored in an asset which is far more efficient.

Also related to scale: keep in mind that you can scale the simulation space by scaling the ObiSolver's transform. This will rigidly transform the entire simulation, which is very useful when you have eg. multiple sizes of the same character cloth. This allows you to reuse the same blueprint at different scales.

kind regards
Reply
#3
(22-08-2024, 09:47 AM)josemendez Wrote: Hi!

Make sure you re-generate the blueprint after setting the scale value. Changes made to blueprint parameters won't take any effect until you generate the blueprint, this is akin to baking a lightmap: changes to lighting settings won't have any effect unless you rebake the light map.

Also keep in mind that the blueprint's scale determines the size of the cloth. The transform's scale should be left to 1, and the blueprint's scale used instead. This is because affine transforms in general (and scale in particular) only work with rigid objects, not deformable ones. So the scale of the object should be set when generating the cloth data (when it's still rigid), same as it happens with Unity's built in cloth. The only difference is that Unity re-generates its cloth data every time you press play, while in Obi it is generated in-editor and stored in an asset which is far more efficient.

Also related to scale: keep in mind that you can scale the simulation space by scaling the ObiSolver's transform. This will rigidly transform the entire simulation, which is very useful when you have eg. multiple sizes of the same character cloth. This allows you to reuse the same blueprint at different scales.

kind regards

Thanks for response. When I hit regenerate after scaling nothing happens, it remains same size. I tried recreating everything after regenerating (Obi Cloth, Solver etc.) but scale still remains the same.
Reply
#4
(23-08-2024, 06:11 AM)vrtraining Wrote: Thanks for response. When I hit regenerate after scaling nothing happens, it remains same size. I tried recreating everything after regenerating (Obi Cloth, Solver etc.) but scale still remains the same.

Hi,

I'm unable to reproduce the behavior you describe, changing the scale of a blueprint and then regenerating it does change the size of all cloth objects using it.

Keep in mind we are talking about the scale of the blueprint, not the scale of the transform. The object transform's scale value should be 1 for the reasons explained in the previous message.

let me know if you need further help with this,

kind regards
Reply