| Latest Threads |
Fluid tunnels through Obi...
Forum: Obi Fluid
Last Post: isenberg
10-08-2026, 04:46 PM
» Replies: 3
» Views: 147
|
GetInstanceID obsolete, c...
Forum: General
Last Post: josemendez
04-08-2026, 08:48 AM
» Replies: 3
» Views: 415
|
Wade - A Fly Fishing simu...
Forum: Made with Obi
Last Post: wangqing
03-08-2026, 02:53 PM
» Replies: 2
» Views: 851
|
How to make crane wire be...
Forum: Obi Rope
Last Post: wangqing
03-08-2026, 02:46 PM
» Replies: 5
» Views: 3,343
|
Non-uniform particle dist...
Forum: Obi Rope
Last Post: wangqing
03-08-2026, 04:48 AM
» Replies: 12
» Views: 8,337
|
Stable Cosserat Rods
Forum: Obi Rope
Last Post: Qriva0
28-07-2026, 09:16 AM
» Replies: 2
» Views: 245
|
BurstColliderWorld makes ...
Forum: General
Last Post: Qriva0
27-07-2026, 02:52 PM
» Replies: 0
» Views: 125
|
Adjust position offsets i...
Forum: Obi Rope
Last Post: josemendez
08-07-2026, 08:06 PM
» Replies: 1
» Views: 337
|
Obi 8: what's coming up
Forum: Announcements
Last Post: Qriva0
26-06-2026, 09:23 AM
» Replies: 13
» Views: 7,010
|
Integrating Soft Bodies w...
Forum: Obi Softbody
Last Post: josemendez
25-06-2026, 08:22 AM
» Replies: 2
» Views: 923
|
|
|
RegenerateRestPositions strange code |
|
Posted by: Teolog - 08-04-2019, 12:02 PM - Forum: Obi Rope
- Replies (3)
|
 |
Here original code from ObiRope
public override void RegenerateRestPositions(){
var distanceBatch = DistanceConstraints.GetFirstBatch();
if (distanceBatch.ConstraintCount > 0)
{
// Iterate trough all distance constraints in order:
int particle = -1;
int lastParticle = -1;
float accumulatedDistance = 0;
for (int i = 0; i < distanceBatch.ConstraintCount; ++i)
{
if (i == 0)
{
lastParticle = particle = distanceBatch.springIndices[i * 2];
restPositions[particle] = new Vector4(0, 0, 0, 1);
}
accumulatedDistance += Mathf.Min(interParticleDistance, principalRadii[particle][0],principalRadii[lastParticle][0]);
particle = distanceBatch.springIndices[i * 2 + 1];
restPositions[particle] = Vector3.right * accumulatedDistance;
restPositions[particle][3] = 1; // activate rest position
}
}
PushDataToSolver(ParticleData.REST_POSITIONS);
}
First: this code generate (distanceBatch.ConstraintCount-1) float[3] arrays while Mathf.Min function, this makes unity garbage collector crazy.
Second: lastParticle newer updated in cycle, this result in accumulatedDistance sum of distances from rope start to current point, not from previous to current point.
So finally accumulatedDistance contains not total rope length but (distanceBatch.ConstraintCount-1)*ropeLength/2.
Are you sure that is right, because this is strange.
This is my implementation
public override void RegenerateRestPositions(){
ObiDistanceConstraintBatch distanceBatch = DistanceConstraints.GetFirstBatch();
if (distanceBatch.ConstraintCount > 0)
{
Vector3 right=Vector3.right;
// Iterate trough all distance constraints in order:
int lastParticle = distanceBatch.springIndices[0];
float accumulatedDistance = 0;
restPositions[0] = new Vector4(0, 0, 0, 1);
for (int i = 0; i < distanceBatch.ConstraintCount; ++i)
{
int particle = distanceBatch.springIndices[i * 2 + 1];
accumulatedDistance += Mathf.Min(interParticleDistance, Math.Min(principalRadii[particle][0],principalRadii[lastParticle][0]));
var ditanceoffset = right * accumulatedDistance;
restPositions[particle] =new Vector4(ditanceoffset.x,ditanceoffset.y,ditanceoffset.z,1);
lastParticle = particle;
}
PushDataToSolver(ParticleData.REST_POSITIONS);
}
}
|
|
|
| Using with 2017.4.15f1 possible? |
|
Posted by: thegreenhell - 05-04-2019, 01:28 AM - Forum: Obi Softbody
- Replies (1)
|
 |
My question is pretty simple. Is it possible to make this asset work with 2017.4.15f1? This is the version of Unity currently in use by the program I'd like to use the plugin for. If possible, I'd be more than happy to make a purchase. Otherwise, my search to replace the plugin I currently use (Dynamic Bone) will continue. Thank you for your time.
-GreenHell
|
|
|
| collision of things |
|
Posted by: Richard - 04-04-2019, 02:53 PM - Forum: Obi Cloth
- Replies (1)
|
 |
I tried to crash the sphere to obi cloth and change the shape. Is it not enough set up? I used add force for crashing but it does not change shape of obi cloth.
|
|
|
|