Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Pipeline that bends
#1
Hi!

For a visualization project for marine operations I'm trying to use your asset to create certain effects. 
I'm trying to create the following scenario:
- Ive got a long steel pipeline 100m+ that lays on a beach. (for now modeled as a cylinder with nothing fancy)
- The pipeline should form to the beach (it curves up) 
- On the water side the pipeline is connected to an object that will pull the pipe into the water.
- The pipeline should follow and somewhat deform. Its a steel pipeline that can slightly bend  (ive attached a picture that perhaps can visualize what im aiming for).

Ive been trying to do this with SoftBody but I cant seem to get it to work properly. I feel like i'm missing something major since the particles look very different from all the examples i see online. (see picture attached). Has this to do with the model itself or the settings in ObiSoftBody?

I would appreciate it if you could point me in the right direction with this! Sonrisa

Thanks in advance. 

Kind regards, 

Patrick


Attached Files Thumbnail(s)
           
Reply
#2
(16-06-2025, 01:34 PM)5G_Zendmast Wrote: Hi!

For a visualization project for marine operations I'm trying to use your asset to create certain effects. 
I'm trying to create the following scenario:
- Ive got a long steel pipeline 100m+ that lays on a beach. (for now modeled as a cylinder with nothing fancy)
- The pipeline should form to the beach (it curves up) 
- On the water side the pipeline is connected to an object that will pull the pipe into the water.
- The pipeline should follow and somewhat deform. Its a steel pipeline that can slightly bend  (ive attached a picture that perhaps can visualize what im aiming for).

Ive been trying to do this with SoftBody but I cant seem to get it to work properly. I feel like i'm missing something major since the particles look very different from all the examples i see online. (see picture attached). Has this to do with the model itself or the settings in ObiSoftBody?

I would appreciate it if you could point me in the right direction with this! Sonrisa

Thanks in advance. 

Kind regards, 

Patrick
It looks to me you can use Obi Rod to achieve this.
Reply
#3
(16-06-2025, 01:34 PM)5G_Zendmast Wrote: - Ive got a long steel pipeline 100m+ that lays on a beach. (for now modeled as a cylinder with nothing fancy)

[...]
Ive been trying to do this with SoftBody but I cant seem to get it to work properly.

Hi Patrick,

ObiSoftbody is quite likely not the right tool for this. The reason is it's designed to simulate volumetric objects that are roughly the same size along all axis. The way it generates a particle-based representation of the object is it first voxelizes it, that is, turn it into small blocks called voxels. Then it generates one particle per voxel, and connects it to particles in the neighbor voxels.

The size of each voxels is determined using the longest axis of the object's bounding box, which in your case is at least x100 longer than the other 2 axis. This is causing the softbody to be composed of a single, long row of voxels - with one particle in each one.

You could use vertex-based surface sampling instead of voxel-based, in the blueprint settings. This would yield roughly one particle per vertex, which is probably closer to the result you wanted?

Still, I feel like ObiRope is a much better tool for this task. Specifically, its ObiRod component. It is explicitly designed to deal with tubes, rods, cables, and generally long and thin objects.

Let me know if you wish to refund your ObiSoftbody purchase for this reason.

kind regards
Reply
#4
Hi, 

Thanks for your quick reply, much appreciated!
Refund is not necessary but thanks for the offer, previously SoftBody did work for flexible 12m rubber hoses and i thought it could also work for a long pipeline.
We've also got a license for ObiRope so I will try to use this asset instead, I will most likely revisit this thread if I cant seem to figure it out haha. 

Thanks again! Sonrisa
Reply
#5
(16-06-2025, 02:17 PM)5G_Zendmast Wrote: Refund is not necessary but thanks for the offer, previously SoftBody did work for flexible 12m rubber hoses and i thought it could also work for a long pipeline.

The method used by ObiSoftbody to generate particles from a mesh will work for reasonable width/height/depth ratios, but it's not well suited for very long and thin objects.

You could also try modifying the blueprint generation method so that it calculates voxel size using the shortest axis, or the average of all axis, instead of the longest one when voxelizing the mesh.

Let me know if you need any help with this!
Reply
#6
So i've made a start and tried a few things but I cant get it to work properly yet. 
I wanted to share my current set-up and see if we can iterate on it! Sonrisa


So i created the following:
- Obi Solver + ObiRod
- Created blueprint
- Thickness to 0.8m (diameter of the pipe)
- Resolution 0.4 
- Keep initial shape ticked off (as I want the pipe to be stretched once its pulled into the water and then freely move)
- Substeps to 16 to make it more rigid
- I created a spline along the beach
- For each point in the Path Editor I've set the Rotational Mass to 1 
- In ObiRod Component I've ticked Surface-based collisions
- The beach/seabed models have an ObiCollider component 

On the water side of the pipe I created a simple cube that acts as the connection point. 
On the ObiRod object I added a Particle Attachment with Target the cube and the particle group the end point of the spline (names match).
Attachtment type is set to static and Constraint Orientation is set to true.

I created a simple animation where the cube slowly moves into the water and pulls the pipe into the water aswell. 
Since the pipe wont float I tried to mimic this by putting a plane slightly below the water and disabling the mesh renderer so when the pipe is pulled into the water its half submerged (which is what it should look like)

But theres this curve in the pipe that I can't seem to get less (see one of the attachments).
Another thing i noticed is that the section at the beginning is very gittery and jumps, is this because the pipe is on a slope and its trying to "slide down" but cant move because of the connection point?

How would you approach this problem with what we are trying to achieve?

I've attached a few screenshots that might make some things clear, if you need any other information let me know! 

Thanks in advance! Sonrisa


Attached Files Thumbnail(s)
       
Reply
#7
Hi!

(17-06-2025, 12:02 PM)5G_Zendmast Wrote: In ObiRod Component I've ticked Surface-based collisions
[...]
But theres this curve in the pipe that I can't seem to get less (see one of the attachments).
[...]
Another thing i noticed is that the section at the beginning is very gittery and jumps, is this because the pipe is on a slope and its trying to "slide down" but cant move because of the connection point?

You've likely attached the end of the pipe inside of or slightly intersecting a collider. As a result, the pipe tries to get out of the collider but it can't since it is attached to it, so it bends upwards - which is the direction most likely to get it outside of the collider.
Jittering/jumps happen simply because its physically impossible to simultaneously be inside a collider (which is what the attachment wants) and outside of it (which is what collision detection wants), so it alternates between being inside and outside.

This situation along with the solution (set up proper collision filters to avoid the end of the pipe to collide) is explained in the manual, see "attachments inside colliders":
https://obi.virtualmethodstudio.com/manu...ments.html

Note that also slightly moving the attachment point so that the pipe does not intersect the collider would also work as it circumvents the issue entirely, as long as it's ok to adjust the attachment point in your case.


(17-06-2025, 12:02 PM)5G_Zendmast Wrote: Since the pipe wont float I tried to mimic this by putting a plane slightly below the water and disabling the mesh renderer so when the pipe is pulled into the water its half submerged (which is what it should look like)

Sounds a bit hacky to me, imho force zones would be a better solution. A directional zone that applies an upwards force to the rope when submerged would do the trick. You can use the zone's falloff to get more force the deeper the rope is submerged, resulting in proper buoyancy simulation. You also get other goodies for free, like damping when inside the water.

let me know if you need further help,

kind regards
Reply
#8
Hi Jose, 

Thanks for your reply.

The gittery/jumping was indeed the collider, thanks!

Force fields sound very intimidating Lengua haha.
But I think I got something that already looks like a good start with a Directional Force of 2 the pipeline stays somewhat half submerged which looks nice!
The only thing that still looks a bit weird is the attachment point, is there a way to get the rod to be more straight instead of this obvious bump? (see attached image, its exaggerated) 

Thanks in advance!


Attached Files Thumbnail(s)
   
Reply
#9
(17-06-2025, 01:19 PM)5G_Zendmast Wrote: The only thing that still looks a bit weird is the attachment point, is there a way to get the rod to be more straight instead of this obvious bump? (see attached image, its exaggerated) 

Thanks in advance!
I assume you're talking about make the mesh more smooth , not making the rod behave like the red line. If that's the case, you may take a look at the Obi path smoother component, there is a smoothing setting that may help.
Reply
#10
(17-06-2025, 01:19 PM)5G_Zendmast Wrote: Force fields sound very intimidating Lengua haha.
But I think I got something that already looks like a good start with a Directional Force of 2 the pipeline stays somewhat half submerged which looks nice!
The only thing that still looks a bit weird is the attachment point, is there a way to get the rod to be more straight instead of this obvious bump? (see attached image, its exaggerated) 

Well, it seems to be attached to a point that's higher than its neutral buoyancy point (the point at which it neither sinks or floats), so it will inevitably bend. Either lower the attachment point (if there's a collider there, you'll need to use filters to deactivate collisions against it or you'll go back to having issues with the attachment!) or increase the force so that the rod floats higher.

If your attachment has "constrain orientation" enabled, you may want to disable it so that the rod can rotate downwards. This will turn the ~ shaped curve to a more of a slight catenary curve.

Also note that reducing the rotational mass of the pipe will make it easier to bend, so the curve will be shorter and reach flatness closer to the attachment point.
Reply