Search Forums

(Advanced Search)

Latest Threads
Invalid Skinmap in Cloth ...
Forum: Obi Cloth
Last Post: Qriva0
8 hours ago
» Replies: 6
» Views: 233
Scripting rod forces
Forum: Obi Rope
Last Post: Qriva0
9 hours ago
» Replies: 28
» Views: 7,366
Collision Rope / Cloth
Forum: Obi Cloth
Last Post: josemendez
28-10-2025, 08:50 AM
» Replies: 2
» Views: 260
Skinned Mesh Renderer beh...
Forum: Obi Fluid
Last Post: josemendez
28-10-2025, 08:03 AM
» Replies: 7
» Views: 270
Should actor massScale af...
Forum: Obi Rope
Last Post: Qriva0
27-10-2025, 05:04 PM
» Replies: 14
» Views: 1,516
Accuracy of Fixed Positio...
Forum: Obi Rope
Last Post: josemendez
22-10-2025, 08:17 AM
» Replies: 1
» Views: 352
Mixing 2D and 3D Physics ...
Forum: General
Last Post: josemendez
20-10-2025, 10:24 AM
» Replies: 1
» Views: 299
SDF interpolation
Forum: General
Last Post: josemendez
12-10-2025, 10:36 PM
» Replies: 7
» Views: 1,199
Built in renderer: fluid ...
Forum: Obi Fluid
Last Post: josemendez
10-10-2025, 09:46 AM
» Replies: 1
» Views: 307
How to get collision impu...
Forum: General
Last Post: Qriva0
09-10-2025, 02:58 PM
» Replies: 3
» Views: 517

 
  Skinned Mesh Renderer behind transparent fluid not rendering
Posted by: AnupamSingh - 27-10-2025, 01:06 PM - Forum: Obi Fluid - Replies (7)

Hi, I have a transparent fluid in front of a skinned mesh renderer but cannot see through it: it contains blends. How can I fix this? (built in pipeline). Cannot see it when see through fluid but in absence of fluid or from other viewing angles it renders fine.
Thank you.

Print this item

  Collision Rope / Cloth
Posted by: jaripam - 24-10-2025, 02:10 PM - Forum: Obi Cloth - Replies (2)

Hey,

I want to collide ropes with cloths but can't figure out how.

My setup (one example):

I go in the Obi Cloth "Intercollisions" demo scene.
I add a Obi Rope to the Solver, the settings I leave at default.
I place the rope above the cloths.

I hit play, but the rope falls through the cloths.

Obi 7.1

Thanks!

Print this item

  Invalid Skinmap in Cloth Renderer
Posted by: jaripam - 24-10-2025, 01:26 PM - Forum: Obi Cloth - Replies (6)

Hey, 

I get this error message:
Invalid skinmap in cloth renderer (Obi Tearable Cloth). Make sure the skinmap is not null and suitable for the mesh and cloth blueprint being used.

I cannot use the tearable cloth, this error also occurs in the TearableCloth demo scene.

Unity 6.2 URP
Obi Cloth 7.1 (latest version)

Thanks!

Print this item

  Accuracy of Fixed Positions such as Start or End
Posted by: twocomet - 21-10-2025, 09:18 PM - Forum: Obi Rope - Replies (1)

Hello,
I’m writing to ask about a solution for an issue I encountered while using the Obi Rope.
When I attach the rope’s start to another object, I clearly set the start point to the object’s local (0, 0, 0). However, if the object moves strongly, or if I turn the Obi Solver off and on again, the attachment point sometimes shifts away from the specified position.
Additionally, even when only the start is fixed, the update speed of the fixed position seems quite slow while the object is moving. I suspect this happens because it’s only updated in FixedUpdate, but I wonder if there’s any way to modify this behavior.
Also, when the Obi Solver is turned off and the fixed object moves slightly, I’d like the rope to reattach to the newly specified fixed position relative to the object when the solver is turned back on. Would I need to modify the Obi Particle Attachment directly to achieve this? I think there should be an internal option to choose the update method or specify fixed local position and rotation, and it should be guaranteed to work properly.
If there’s any external function or component that can update or refresh these position and offset values dynamically, please let me know.
For now, I’d be happy if the issues mentioned above could be resolved while using the system.
Thank you very much.

Print this item

  Should actor massScale affect all aspects of simulation?
Posted by: Qriva0 - 17-10-2025, 03:55 PM - Forum: Obi Rope - Replies (14)

Hi, obi actors (in my case rod) have got field with name massScale. 
In mu understanding this is multiplier for particle mass and, indeed according to code it's used to with rotational mass and standard mass when blueprint is loaded.
However expected result was that it just influences weight of the actor, so when two actors collide, then the other one is heavier, but the result is that it affects a lot of things, for example compliances does not work in the same way, or collision with static colliders is alos different (but it could be side offect of compliance).
In theory that make sense because compliance is actually just added to weight.

Example from constraint:

Code:
float3 dlambda = (omega.value.xyz - compliances * lambdas[i]) / (compliances + new float3(w1 + w2 + BurstMath.epsilon));

In any case, is that expected result? Should mass scale affect everything in this way? If yes, then what is affected except constraint? (I get completely different lambdas)
It seems it influences collision with static colliders too and also velocity applied to body, but shouldn't velocity be mass indepentent? (I add velocity with spring to controll rod movement)

Print this item

  Mixing 2D and 3D Physics results in Obi MissingReferenceException:
Posted by: this_guy - 17-10-2025, 03:44 PM - Forum: General - Replies (1)

The Problem

After upgrading to Obi Cloth 7.1, my project suddenly produced the error

"MissingReferenceException: The object of type 'ObiRigidbody2D' has been destroyed but you are still trying to access it. Your script should either check if it is null or you should not destroy the object."

This error was happening everywhere and on every frame!


The Solution

My project mixes 2D and 3D physics on purpose. The cause of the error was this snippet of gameobject hierarchy

> Rigidbody 2D
  > Box Collider 2D
  ...
  > Box Collider (i.e. a 3D collider)
    Obi Collider (i.e. the 3D version of ObiCollider

Notice the 2D Unity Rigidbody mixed with the 3D Unity Box Collider and 3D Obi Collider. 

The fix is to insert a 3D Unity Rigidbody below the 2D Unity Rigidbody like

> Rigidbody 2D
  > Box Collider 2D
  ...

  > Rigidbody (i.e. Unity's 3D Rigidbody component) 
    Box Collider (i.e. a 3D collider)
    Obi Collider (i.e. the 3D version of ObiCollider

I also marked the (3D) Rigidbody as "Is Kinematic" so that the 2D Box Collider and the 3D Box Collider would behave as if they are part of the same Rigidbody (which is the behavior I'm looking for).


Explanation

In the editor, Obi thought that everything was fine with the original hierarchy. ObiCollider was happy because there was a 3D Unity Collider on the same gameobject that the ObiCollider was attached to. And at runtime, just as the online documentation says, Obi "look[ed] for the first Rigidbody component up its hierarchy and attach[ed] an ObiRigidbody component to it." Since the first Rigidbody component Obi encountered was the Rigidbody2D, Obi added an ObiRigidbody2D component to the hierarchy like this

> Rigidbody 2D 
  Obi Rigidbody 2D

  > Box Collider2D
  ...
  > Box Collider (i.e. a 3D collider)
    Obi Collider (i.e. the 3D version of ObiCollider



But then Obi threw the above MissingReferenceException. 

I traced the Obi code a bit. The error is thrown from ObiRigidbody2D.CacheVelocities() where it turns out that this is null!! I didn't know that was possible Sonrisa . I think it has something to do with parallelization. One thread deleted the ObiRigidbody2D (I'm not exactly sure where in the code the deletion happens), but there was still a reference to the obiRigidbody2D in memory that is able to be called??

At any rate, by removing more and more of the gameobjects in my scene I eventually whittled the object hierarchy down to the above original tree and noticed the mixing of 2D and 3D components and then remembered that it was an ObiRigidbody2D that was being deleted and throwing the error. On a whim, I modified the hierarchy to be:

> Rigidbody 2D
  > Box Collider 2D
  ...

  > Rigidbody (i.e. Unity's 3D Rigidbody component) 
    Box Collider (i.e. a 3D collider)
    Obi Collider (i.e. the 3D version of ObiCollider

At runtime, Obi now adds an ObiRigidbody(2D) to both the upper and the lower gameobject. But I guess that's just what is supposed to happen(?)

> Rigidbody2D
  ObiRigidBody2D
  > Box Collider 2D
  ...

  > Rigidbody (i.e. Unity's 3D Rigidbody component) 
    ObiRigidbody (i.e. the 3D version of ObiRigidbody)
    Box Collider (i.e. a 3D collider)
    Obi Collider (i.e. the 3D version of ObiCollider

But most importantly... All the errors go away!

Print this item

  Built in renderer: fluid texture missing
Posted by: AnupamSingh - 10-10-2025, 09:42 AM - Forum: Obi Fluid - Replies (1)

Hi, I am using Obi Fluid 7.1 in built in pipeline. The textures come fine in scene view but not in game view. Obi Fluid Built In Renderer Feature' component is added to camera. How can i fixed this? Thanks!

Print this item

  How to get collision impulse properly
Posted by: Qriva0 - 09-10-2025, 01:34 PM - Forum: General - Replies (3)

I read collision normal impulse, it's said that unit is newtons x time x time, however I am unable to get timestep independent force.
I tried to divide that force by substep time squared or timestep squared, but the value I get is not similar - I would expect to get very similar force whatever the substep count is 4 or 8.
The goal is to detect if I push against something with force greater than X.

Also is tangent impulse never set? Or it's set only for particles or mesh colliders (I use SDF)?

Print this item

  SDF interpolation
Posted by: Qriva0 - 07-10-2025, 01:09 PM - Forum: General - Replies (7)

Hi, I wonder what would be a good way to modify distance field during runtime.
In my case there are several distance fields, we can treat them as animation keyframes to make this example simple -I want to interpolate between them over time and use it for collision.
The problem with ASDF is those trees have got different number of nodes and it's not trivial to generate new interpolated SDF. What would be good way to tackle this problem?

The best way would be to generate SDF for every update and just swap current nodes in distance field (note I use burst backend), I guess another option is to just sample both an interpolate result, but I would need to modify obi sagnificantly.

Furthermore main question is if such a collision is going to work properly when it comes to simulations itself, I did test with hard swapping colliders and without interpolation it jumps, because of depenetration, so I am not even sure if this would work for normal timesteps (50-60).

Print this item

  Constrain two rods into each other
Posted by: Qriva0 - 26-09-2025, 04:12 PM - Forum: Obi Rope - Replies (3)

I would like to constrain rod by another one and align them to each other.
The way how I want this to work could be compared to putting one rod into another one, like into pipe.

   

I managed to write some script that maps particles from first rod to target position on another second rod (based on displacement), but this method fails to create stable alignment.
That script uses end of simulation to run constraint for both rods on each other. Position is casted and delta is based on nearest particle weights, but I guess because I don't mix orientations it fails to keep shape properly or it's caused by the fact it runs after simulation, but I hope I am wrong. Current result is some kind of broke, because outside of constraint particles "break" into their prefered direction, it's more like teleportation of common part, than physical constraint.

   

My question is - what things I need to take into account to make it work (even if not perfect), and is it actually possible at all without modification of Obi itself?
I also tried to pin particles of inner rod by setting invMass to 0, it kind of works better, but the problem is that it's one sided and first rod does not influence second one.
I wish there was way to kind of "blend" shapes of both rods into each other and make forces to work properly.

Print this item