Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Help  Obi Rope Contraint Settings buggy
#1
Hi there!

I have a problem with my ObiRope Settings! 

This is my Setup: I have three levels. I added my character prefab to each level. This Prefab has an Obi Solver plus Rope attached to it. The Obi Solver itself is not a prefab, but the parent object. Also, in each level, they have the same Blueprint asset. I have a TestScene, where I first set up the whole Character prefab. Then i copied the Prefab into the other scenes.

This is what I want to do: For each Level I want my character to have different Tear Resistance and Stretching Compliance, the rest of the rope settings should be exactly the same. 

Exclamación This is my problem: In my Levels, the rope doesn't adopt the changed settings that I just made. It always stays the same length. Or it has settings from another level.  

What I tried to do: I tried to create a new blueprint in the separate levels, but also then, the rope took settings from a different level. I unpacked the prefab, so the Obi solver is not a prefab anymore. Still the same issue. In my testscene though, I have a script where i can change the settings on key press and this perfectly works.

So my main question is, how can i have the same rope across multiple scenes and then change only 2 variables?

I would be really happy about some help and maybe someone could explain to me, how blueprints actually work and what information they safe.
Thanks you in advance! Corazón

Shirley55
Reply
#2
(23-05-2026, 05:49 PM)Shirley55 Wrote: Hi there!

I have a problem with my ObiRope Settings! 

This is my Setup: I have three levels. I added my character prefab to each level. This Prefab has an Obi Solver plus Rope attached to it. The Obi Solver itself is not a prefab, but the parent object. Also, in each level, they have the same Blueprint asset. I have a TestScene, where I first set up the whole Character prefab. Then i copied the Prefab into the other scenes.

This is what I want to do: For each Level I want my character to have different Tear Resistance and Stretching Compliance, the rest of the rope settings should be exactly the same. 

Exclamación This is my problem: In my Levels, the rope doesn't adopt the changed settings that I just made. It always stays the same length. Or it has settings from another level.  

What I tried to do: I tried to create a new blueprint in the separate levels, but also then, the rope took settings from a different level. I unpacked the prefab, so the Obi solver is not a prefab anymore. Still the same issue. In my testscene though, I have a script where i can change the settings on key press and this perfectly works.

So my main question is, how can i have the same rope across multiple scenes and then change only 2 variables?

I would be really happy about some help and maybe someone could explain to me, how blueprints actually work and what information they safe.
Thanks you in advance! Corazón

Shirley55
Sounds like Unity events issue. Just change the variable value of the Prefab before creating the instace of the Prefab. The Obi Solver will do its work in onEnable or some events of the instance of the Prefab,which should not be happen earlier than your change.
Reply
#3
(23-05-2026, 05:49 PM)Shirley55 Wrote: Hi there!

I have a problem with my ObiRope Settings! 

This is my Setup: I have three levels. I added my character prefab to each level. This Prefab has an Obi Solver plus Rope attached to it. The Obi Solver itself is not a prefab, but the parent object. Also, in each level, they have the same Blueprint asset. I have a TestScene, where I first set up the whole Character prefab. Then i copied the Prefab into the other scenes.

Exclamación This is my problem: In my Levels, the rope doesn't adopt the changed settings that I just made. It always stays the same length. Or it has settings from another level.  

Lenght and shape are stored in the blueprint. Blueprints are assets (just like textures, audio clips or animations in Unity) so sharing the same blueprint for multiple ropes across levels means you essentially have the same rope in all levels, and modifying any of the blueprint parameters will affect all ropes. See:
https://obi.virtualmethodstudio.com/manu...setup.html

Quote:When editing a path, you're modifying the rope's blueprint. Modifications will be applied to all ropes/rods sharing the same blueprint. This can speed up the workflow a lot, but can also destroy previous work if you're not careful! If you want to use an existing blueprint as a base to create a new one, duplicate it.


(23-05-2026, 05:49 PM)Shirley55 Wrote: What I tried to do: I tried to create a new blueprint in the separate levels, but also then, the rope took settings from a different level. I unpacked the prefab, so the Obi solver is not a prefab anymore. Still the same issue. In my testscene though, I have a script where i can change the settings on key press and this perfectly works.


(23-05-2026, 05:49 PM)Shirley55 Wrote: So my main question is, how can i have the same rope across multiple scenes and then change only 2 variables?

Depends on what those 2 variables are. If you're modifying the ObiRope component, as long as you have different ObiRopes it will work. If you're modifying the blueprint, then you'll need multiple blueprints. You mentioned rope length (blueprint), tear resistance (rope component) and constraint compliance (rope component), so they're stored differently.

(23-05-2026, 05:49 PM)Shirley55 Wrote: I would be really happy about some help and maybe someone could explain to me, how blueprints actually work and what information they safe.

Blueprints are assets, so they behave like any other asset file in Unity. Components can have references to them, but if multiple components reference the same blueprint, they'll share the data stored in the blueprint.

Blueprints store all initial per-particle data: particle count and positions (so they define the initial shape and length of the rope), particle mass, particle radius, particle color, and so on.

Properties that belong to the rope as a whole (how compliant it is, how well it bends, its resistance to tearing, etc) are stored per-rope in the ObiRope component.

And finally, properties that apply to the entire simulation (gravity, sleep threshold, simulation quality, etc) are stored in the ObiSolver component. Hope that makes sense!

kind regards,
Reply