Hi,
I have a shape with rigidboy attached to it. Rope is holding this shape. You can see the rope is stretching and pulling the shape all over the place. How to avoid the stretchiness and keep the shape stable ? https://drive.google.com/file/d/1fLpU5D_...sp=sharing
Hi,
I've attached video reference here of what happened while trying to cut the rope.
I've used RopeSweepCut. Its working in the sample scene. But If I use the same script for my Rope which is created dynamically at runtime, it not working.
When I swipe to cut, I can see the line renderer and on release, there's a shake happening in rope but its not actually cutting the rope.
I added log inside the below function. Log printed as expected but cut doesn't work
private void ScreenSpaceCut(Vector2 lineStart, Vector2 lineEnd)
{
// keep track of whether the rope was cut or not.
bool cut = false;
// iterate over all elements and test them for intersection with the line:
for (int i = 0; i < rope.elements.Count; ++i)
{
// project the both ends of the element to screen space.
Vector3 screenPos1 = cam.WorldToScreenPoint(rope.solver.positions[rope.elements[i].particle1]);
Vector3 screenPos2 = cam.WorldToScreenPoint(rope.solver.positions[rope.elements[i].particle2]);
// test if there's an intersection:
if (SegmentSegmentIntersection(screenPos1, screenPos2, lineStart, lineEnd, out float r, out float s))
{
cut = true;
rope.Tear(rope.elements[i]);
Debug.Log("cut");
}
}
// If the rope was cut at any point, rebuilt constraints:
if (cut) rope.RebuildConstraintsFromElements();
}
When trying to generate a blueprint on any mesh (read/write checkbox is enabled in import settings) I always get an Null ref error:
NullReferenceException: Object reference not set to an instance of an object
Obi.ObiActorBlueprintEditor.Refresh () (at Assets/Obi/Editor/Common/Blueprints/ObiActorBlueprintEditor.cs:416)
Obi.ObiActorBlueprintEditor.Generate () (at Assets/Obi/Editor/Common/Blueprints/ObiActorBlueprintEditor.cs:143)
I'm using Unity 2022.3.32f1, a new empty 3D project (built-in render pipeline) and the Obi Fluid 7.0rc Unity Package. Everything seems to be set up and working correctly (Burst compiler etc.) but all of the fluids in the sample scenes are pink:
I've had a look through the components & project resources but can't see anything that's obviously wrong?
Does anyone have any idea as to what's causing this? Thanks.
I'm using Unity 2022.3.32f1 and a new empty 3D project (built-in render pipeline). I import Obi Fluid 6.5.4 using the project manager and get the following update warnings:
I have to choose 'yes' to stop this warning being shown repeatedly.
At this stage, Obi Fluid and the sample scenes seem to work ok, however Force Zones do not work (e.g. in the 'SimpleFluid' demo scene).
If I select a gameobject with an Obi Solver component, I can see the "The Burst backend depends on the following packages: " warning. I install the Mathematics, Collections and Jobs packages (using 'Add packages by git URL...' for com.unity.jobs) - Burst seems to already be in the package list:
Upon adding the Collections package, I get the following persistent error and I can't enter play mode anymore:
Code:
Assets/Obi/Scripts/Common/Backends/Burst/DataStructures/NativeMultilevelGrid.cs(74,46): error CS1061: 'UnsafeList<K>' does not contain a definition for 'length' and no accessible extension method 'length' accepting a first argument of type 'UnsafeList<K>' could be found (are you missing a using directive or an assembly reference?)
Are there updated installation instructions or what is the correct sequence for setting up the package properly? Thanks
Currently we wanted to make use of obi fluid in our VR application to came to a block when finding/realizing the following:
Does it support VR (Virtual Reality)?
Cloth, Rope and Softbodies support VR. For Obi Fluid, VR is only supported in the built-in pipeline, and it's necessary to use separate cameras for each eye since the renderer does not support single-pass stereo rendering.
Will there be support for this in an URP setup (not the built-in pipeline) with single pass/multiview? We want to simulate non transparent fluids.
Hi,
I've added pins on both ends of the rope. I want to know whether I've used the right implementation to move the rope end points. I've created configurable joints on the rope end point node and dragging it using rigidbody MovePosition. I can't use force here as I want the end point knob to move along with my finger. Though I've applied max limit on the knob distance how far player can drag, it still break physics sometimes when I drag fast. Is there any possibility to avoid happening ?
Also, sometimes I see weird behavior after completing cursor.ChangeLength. You can see one or two rope particles at random location still alive in the scene.
Hi,
I've attached pin at both end of the rope. I want to unpin it from one of the ends.
I've tried the below code but nothing seems to be working. Its always pinned even after running the below code.
I've attached reference screenshot of what I am trying to do.
Created 2 ropes and pinned them on the board. I want to unpin one end of the rope and pull the rope to the other knob using obiropecursor. (ChangeLength function).
Using ObiRopeCursor is the right approach here ?
Code:
var pinConstraints = rope.GetConstraintsByType(Oni.ConstraintType.Pin) as ObiConstraints<ObiPinConstraintsBatch>;
int batches = pinConstraints.batches.Count;
for (int j = 0; j < batches; j++)
{
int count = pinConstraints.batches[j].constraintCount;
Debug.Log("count : " + count);
for (int i = 0; i < count; i++)
{
pinConstraints.batches[j].RemoveConstraint(i);
pinConstraints.batches[j].RemoveFromSolver(null);
}
pinConstraints.RemoveBatch(pinConstraints.batches[j]);
}
pinConstraints.RemoveFromSolver();
To test if cursor changeLength is working I manually disabled one of the pinned gameobject and tried the below code. ChangeLength function is also not working as expected.
Its pulling the rope only to some extent. After that rope got stiff and straightened. Attached screenshot.
Is it possible to create a game similar to Twisted Tangled Game published by Rollic Games.
I've tried and successfully created a few levels with just 2 to 3 ropes constructed twisted using a spline tool and created rope at runtime by generating blueprints.
But the problem is Obi started to slow down when I introduced the 4th rope. Even with just 4 ropes twisted and collided, It totally stopped working even in high end devices. In that rollic game, it's not slowing down even with 40 to 50 ropes. We don't see any performance lag with either 5 or 50 ropes. How's that done ?
I tried the Ultimate rope tool, which lacks collision strength and a few other limitations too. Failed!
Then I tried creating my own rope using Dreamtek tuberenderer. Not even close to the Ultimate rope tool. Failed!.
Then tried Rope MiniKit, that's the worst of them all. No support for rope-rope collision.
So I wonder what's the possibility of at least coming close to that game ?