27-11-2025, 06:04 AM (This post was last modified: 27-11-2025, 07:05 AM by Tomski.)
Hi
I am working on a project using obi rope, I am trying to setup 2 start/end close to each other points to attach rope with an angle to a pin, I use tangled rope example and documentation as reference.
I am observing very random behaviour of the Attachment functionality. i.e. For basic rope with 2 start and 2 end points all works fine, but SOMETIMES randomly adding new middle point(s) breaks the setup, one or both of the attachment points stops working completely, and I am having hard time fixing it. I tried everything I can thing of:
- reassign particle group
- rename and reassign particle group
- reposition start/end points slighlty
- change resolution in blueprint
When testing even with simple 1 end point, the particle attachment will not work (attach).
What can cause such behaviour ? I spend a lot of time trying to figure this one out :/
Also side note:
In unity 2022.3.55 after a while of editing ropes usually 5 -10 mins, my inspector gets stuck and I am unable to select anything anymore in the scene, and only way to fix it is editor restart. I am quite sure this is causes byt Obi as have two other projects on same unity and never observed this.
Also I am having errors when editing rope, or entering play mode while edit mode is active.
Lastly there seems to be an issue with cursor/rope reel example in tangled rope example scene, if these two components are enabled the rope will jitter permanently quite a lot. Very noticeable in editor and even more so on mobile. What is causing this? are there any other examples to reel the rope that work ?
Any ideas how to solve this issues?
Is there any preffered unity version to use ? I am starting new project so it's viable to update.
27-11-2025, 08:00 AM (This post was last modified: 27-11-2025, 09:06 AM by josemendez.)
(27-11-2025, 06:04 AM)Tomski Wrote: Hi
I am working on a project using obi rope, I am trying to setup 2 start/end close to each other points to attach rope with an angle to a pin, I use tangled rope example and documentation as reference.
I am observing very random behaviour of the Attachment functionality. i.e. For basic rope with 2 start and 2 end points all works fine, but SOMETIMES randomly adding new middle point(s) breaks the setup, one or both of the attachment points stops working completely, and I am having hard time fixing it. I tried everything I can thing of:
- reassign particle group
- rename and reassign particle group
- reposition start/end points slighlty
- change resolution in blueprint
When testing even with simple 1 end point, the particle attachment will not work (attach).
What can cause such behaviour ? I spend a lot of time trying to figure this one out :/
Hi!
We're unable to reproduce this, at least not the way you describe it. In some situations, attachments can stop working if the particles they were referencing cease to exist (because, for instance, the rope has has its length reduced at runtime). In this case, an error message is logged to the console. It looks like this:
Quote:"The particle group < m_ParticleGroup.name> references a particle that does not exist in the actor <m_Actor.name >"
The solution is simple: select a new particle group for the attachment. This can sometimes be confusing if the offending group happens to have the same name as a valid particle group.
Assuming this is not what you're experiencing, it would help for us to know the following:
- Are your attachments static or dynamic? internally, these work in completely different ways.
- Are you modifying attachments and/or rope blueprints programmatically at runtime?
(27-11-2025, 06:04 AM)Tomski Wrote: In unity 2022.3.55 after a while of editing ropes usually 5 -10 mins, my inspector gets stuck and I am unable to select anything anymore in the scene, and only way to fix it is editor restart. I am quite sure this is causes byt Obi as have two other projects on same unity and never observed this.
Never heard of similar behavior before, to be honest. We've had third-party projects involving days of complex rope editing but never experienced anything like this. Editor-wise, we're using Unity's API to create interactable gizmos in the scene view, nothing out of the usual that could freeze the entire inspector/scene. Would help knowing a bit more about your workflow while editing ropes, or maybe some steps to reproduce this even if they're just semi-reliable.
(27-11-2025, 06:04 AM)Tomski Wrote: Also I am having errors when editing rope, or entering play mode while edit mode is active.
Could you elaborate? Are these errors as in "strange"/undesired behavior, or error messages in the console? If so, it would help knowing the content of these errors.
(27-11-2025, 06:04 AM)Tomski Wrote: Lastly there seems to be an issue with cursor/rope reel example in tangled rope example scene, if these two components are enabled the rope will jitter permanently quite a lot. Very noticeable in editor and even more so on mobile. What is causing this? are there any other examples to reel the rope that work ?
I'm unable to reproduce this either. With both components enabled in the ropes (they both are enabled by default) there should be absolutely *zero* jitter, both in-editor and in builds, neither at rest or while manipulating the end pegs. Tried multiple Unity versions (2022.3.33, 2022.3.55, 6000.0.27) and target platforms (windows, mac, android). Here's a video of the behavior you should get:
Have you made any changes to the scene? For instance, certain combinations of reel parameters can lead to jittering by causing the rope to reel in and immediately out in quick sucession, oscillating between target lengths.
Would it be possible for you to share a video of this jittering behavior you describe?
28-11-2025, 08:04 AM (This post was last modified: 28-11-2025, 08:24 AM by Tomski.)
Hello,
Thank you for prompt and extensive answer, let me try to address some of the issues.
"We're unable to reproduce this, at least not the way you describe it."
I did found the reason and way to fix it, after editing rope : adding or removing points, the list on particle attachment component at some point will stop refreshing i.e. it will continue showing deleted points, and thus specifically after removing points, the "end" and "end2" points selected from the list don't exist anymore in the blueprint, and thus attachment will not work, but it throws no errors. I can fix it by selecting earlier particle groups by trial end error until getting desired effect. Removing and re-adding attachment component will not privide correct list. I.e. Attched you will find a screenshot of my setup and notice multiple "ghost" particle groups, is there a way to force that list to refresh?. I use dynamic attachments with setup copied from the example scene. And I am not modifying anything programatically. Rope from the screenshot have only 5 selectable parcile groups/ point start, start2, mid, end, end2, I verified no duplicates by trying to remove each one of them. So in that case in drop down I select midpoint which is equivalent to point nr 5 - last in rope blueprint
"Never heard of similar behavior before, to be honest." I have tried opening the project in 3 different unity versions one mentioned before, 6000.1.8 and 2021.3.45 I observe the issue in all of them. I am on macBook pro M2 ultra. The behaviour I observe is as if my current selection was locked. Early cmd+s will fix it for a while, but a some point only editor restart helps. I am not doing anything out of ordinary, but I do duplicate rope asset first, then duplicate the blueprint and after assigning it to the new rope I continue editing from there. I set my attachment object (equivalent to attachment peg) as childs of Obi rope object.
Could you elaborate? Are these errors as in "strange"/undesired behavior, or error messages in the console? Sorry for ambiguous description, yes those are error in the console i.e.
Code:
Failed loading overlay "Obi Path Editor"!
System.ArgumentException: Value does not fall within the expected range.
at Obi.ObiPathEditor+PathEditorOverlay.CreatePanelContent () [0x00005] in [Redacted]/Assets/Obi/Editor/RopeAndRod/ObiPathEditor.cs:23
at UnityEditor.Overlays.Overlay.CreateContent (UnityEditor.Overlays.Layout requestedLayout) [0x00071] in /Users/bokken/build/output/unity/unity/Editor/Mono/Overlays/Overlay.cs:619
UnityEditor.DockArea:OnEnable () (at /Users/bokken/build/output/unity/unity/Editor/Mono/GUI/DockArea.cs:173)
I'm unable to reproduce this either. I am getting the jitter on the unmodified TangledRope example scene, on play without even touching anything, here link to screen recording from iPhone 16 Pro Max:
28-11-2025, 09:28 AM (This post was last modified: 28-11-2025, 09:51 AM by josemendez.)
(28-11-2025, 08:04 AM)Tomski Wrote: I did found the reason and way to fix it, after editing rope : adding or removing points, the list on particle attachment component at some point will stop refreshing i.e. it will continue showing deleted points, and thus specifically after removing points, the "end" and "end2" points selected from the list don't exist anymore in the blueprint, and thus attachment will not work, but it throws no errors. I can fix it by selecting earlier particle groups by trial end error until getting desired effect. Removing and re-adding attachment component will not privide correct list. I.e. Attched you will find a screenshot of my setup and notice multiple "ghost" particle groups, is there a way to force that list to refresh?.
Hi!
The list of particle groups shown by the attachment in the UI is continuously refreshed - it just lists all subassets found in the rope blueprint asset (just like sprites are subassets of a texture, for instance). Refreshing the list of subassets itself is up to Unity's AssetDatabase.
So I suspect the problem is not attachments at all, but that subassets aren't getting properly serialized/saved in your blueprint for some reason. Whenever a new control point is added to the rope path, a new subasset is created using ObiActorBlueprint.InsertNewParticleGroup(). When a control point is destroyed, ObiActorBlueprint.RemoveParticleGroupAt() is called.
Could you go to your rope blueprint asset in the project and check that the blueprint lists exactly the same amount of subassets as control points are in the rope path, and that they have the same names?:
If that's not the case, we know for sure the problem is subasset serialization and we can dig deeper in that direction.
(28-11-2025, 08:04 AM)Tomski Wrote: "Never heard of similar behavior before, to be honest." I have tried opening the project in 3 different unity versions one mentioned before, 6000.1.8 and 2021.3.45 I observe the issue in all of them. I am on macBook pro M2 ultra. The behaviour I observe is as if my current selection was locked. Early cmd+s will fix it for a while, but a some point only editor restart helps. I am not doing anything out of ordinary, but I do duplicate rope asset first, then duplicate the blueprint and after assigning it to the new rope I continue editing from there. I set my attachment object (equivalent to attachment peg) as childs of Obi rope object.
Just so that I get a clear picture of the issue: during this "locking", are you able to select other objects in the scene and they become highlighted but the contents of the inspector window don't change, or is it as if clicking doesn't do anything *at all*, as if the editor had frozen?
If it's the former, have you checked that your inspector isn't actually locked? (small padlock icon in the top right corner)
If it's the latter, do you get any errors on the console before/during locking? If there's a problem with control points and particle groups getting out of sync - as I suspect from your description of the issue above- this could lead to runtime issues and potential editor hangs.
(28-11-2025, 08:04 AM)Tomski Wrote:
Code:
Failed loading overlay "Obi Path Editor"!
System.ArgumentException: Value does not fall within the expected range.
at Obi.ObiPathEditor+PathEditorOverlay.CreatePanelContent () [0x00005] in [Redacted]/Assets/Obi/Editor/RopeAndRod/ObiPathEditor.cs:23
at UnityEditor.Overlays.Overlay.CreateContent (UnityEditor.Overlays.Layout requestedLayout) [0x00071] in /Users/bokken/build/output/unity/unity/Editor/Mono/Overlays/Overlay.cs:619
UnityEditor.DockArea:OnEnable () (at /Users/bokken/build/output/unity/unity/Editor/Mono/GUI/DockArea.cs:173)
This looks like an internal error from Unity's overlay window system, which Obi uses. Should not be significant, since the overlay will be loaded again next time but will investigate it nonetheless since it's the first time I've received a similar report.
(28-11-2025, 08:04 AM)Tomski Wrote: I'm unable to reproduce this either. I am getting the jitter on the unmodified TangledRope example scene, on play without even touching anything, here link to screen recording from iPhone 16 Pro Max:
Just tried deploying to an iPhone X and an iPhone 14 Pro (don't own a 16) but could not reproduce this. Is this reproducible for you in the editor as well? If so, what are your project's Time settings? (ProjectSettings->Time->Fixed timestep and timescale, specifically)
(28-11-2025, 08:04 AM)Tomski Wrote: Is there a way for me to get access to previous releases of Obi rope to try?
Yes, you can write to support(at)virtualmethodstudio.com and request previous versions. Note that versions 5.x and 6.x are significantly different to Obi 7 in regards to architecture and capabilities, but rope blueprints/attachments/particle groups work in the exact same way (they haven't been modified in a long time).
Just tried deploying to an iPhone X and an iPhone 14 Pro (don't own a 16) but could not reproduce this. Is this reproducible for you in the editor as well? If so, what are your project's Time settings? (ProjectSettings->Time->Fixed timestep and timescale, specifically)
The issue from the video is on a completely new project (I made one to be sure I didn't break anything), so my values are default from 2022.3.55, Same issue happens on different computer with M5 pro.
Could you go to your rope blueprint asset in the project and check that the blueprint lists exactly the same amount of subassets as control points are in the rope path, and that they have the same names?:
Asset for one problematic rope has 1 extra point, I tried to delete/add poinst, which seems to work fine, but that one extra point will remain (I can not delete points below 2, while asset shows 3) . Not sure if related, but when adding/deleting points in that specific rope I am getting lots of these errors:
Code:
NullReferenceException: Object reference not set to an instance of an object
Obi.ObiRopeCursorEditor.DrawGizmos (Obi.ObiRopeCursor cursor, UnityEditor.GizmoType gizmoType) (at Assets/Obi/Editor/RopeAndRod/ObiRopeCursorEditor.cs:76)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&) (at /Users/bokken/build/output/unity/unity/Modules/IMGUI/GUIUtility.cs:203)
01-12-2025, 09:52 AM (This post was last modified: 01-12-2025, 10:02 AM by josemendez.)
(01-12-2025, 09:09 AM)Tomski Wrote: Just tried deploying to an iPhone X and an iPhone 14 Pro (don't own a 16) but could not reproduce this. Is this reproducible for you in the editor as well? If so, what are your project's Time settings? (ProjectSettings->Time->Fixed timestep and timescale, specifically)
The issue from the video is on a completely new project (I made one to be sure I didn't break anything), so my values are default from 2022.3.55, Same issue happens on different computer with M5 pro.
I'm still unable to reproduce this. I've tried multiple computers using Unity 2022.3.55 (both Windows and Mac) to no avail, tried deploying to iOS and Android (iPhone X, iPhone 14 Pro and Galaxy 10), the scene has no visible jitter.
Is this jitter present in any other scenes, or is it just on this one specific scene?
Would it be possible for you to send this project (even if it's a completely new one) to support(at)virtualmethodstudio.com so that I can take a closer look at it?
(01-12-2025, 09:09 AM)Tomski Wrote: Asset for one problematic rope has 1 extra point, I tried to delete/add poinst, which seems to work fine, but that one extra point will remain (I can not delete points below 2, while asset shows 3)
The problem is that the extra subasset should not be there to begin with, this indicates a serialization issue of some sort. I've been unable to get this to happen (spurious extra subassets) by adding/removing control points, copying the asset, copying subassets, etc. so it would be helpful to know how that extra subasset got there.
If you get this to happen again in either the same rope or a new one, it would be helpful if you could identify the last thing you did that led to an extra subasset to appear (or not go away when deleting the corresponding control point).
(01-12-2025, 09:09 AM)Tomski Wrote: (I can not delete points below 2, while asset shows 3)
The minimum amount of points a rope can have are 2 (start and end), but in that case the asset should also contain 2 subassets, not 3.
(01-12-2025, 09:09 AM)Tomski Wrote: Not sure if related, but when adding/deleting points in that specific rope I am getting lots of these errors:
All scripts assume the amount of subassets in the blueprint and the amount of control points are the exact same. Behavior is essentially undefined when these don't match.