1) the DOP import SOP pulls in the data that already exists in your DOP network. In the node, you specify which DOP object you wish to copy the data from and what data you want to copy. For example, if I was pulling my FLIP fluid particles in from a DOP simulation. In the DOP import node, I would specify that I want to get information from the flip fluid object (by default this is usually named “fluidfluidobject1”), and the data that I want to copy, which is Geometry. Geometry in this case being the name in DOPs for the FLIP fluid particles.
The DOP import just pulls information from the DOP network, so if you advance a timestep and the DOP network hasn't cooked, the DOP import will cause that DOP network to cookm unless you have disabled simulations.
2) The simplest way to pull SOP geometry into DOPs is with the SOPgeometry node. This node asks that you specify the path to the SOP you want to import. You can use this data to calculate forces, masks, scalar/vector fields, etc.
If you want to do something as specific as having each DOP object follow a different point on a sphere, you can use a SOP solver. The SOP solver create a SOP network inside of your DOP network that is evaluated at each time step. This lets you use SOP nodes to influence your DOP simulation during the solve.
inside the SOP solver, you have just a regular SOP network. By default it puts down several DOP imports that bring in your DOP simulation information. These are the same nodes that you put down at the normal SOP level, the only difference is that they are evaluated at every timestep and the output is then piped back into the simulation. So you could have your animated sphere inside your SOP solver (or bring it in with an object merge), and you could set the velocity of your RBD points to point towards a specific point on the sphere.
Alternatively, you could use a VOP force DOP node (which allows you to use all of the awesome VOP nodes you'd have in a VOP SOP) to create forces in DOPs. You could have create a force that brings in the appropriate point on the sphere and then creates a force towards that point.
Found 10 posts.
Search results Show results as topic list.
Technical Discussion » Network flow. SOPs - DOPs.
- travisharkleroad
- 10 posts
- Offline
Houdini Indie and Apprentice » cookie SOP prefacturing geo
- travisharkleroad
- 10 posts
- Offline
Hello,
it isn't super clear what you want to do in this file. I'm assuming that you want to create some sort of fractured geometry that is similar to the shape of the ground geometry.
Using the cookie sop to do this is inadvisable for two reasons: 1)You're only going to get one piece that is either the union or intersection of the two geometries and 2) your ground plane is just a flat plane; the cookie SOP can't determine what is “inside” or “outside” of the intersection of two geometries when one of them is just a flat plane. If you make the ground plane a 3 dimensional shape, then you can use the cookie SOP, but it still wouldn't give you “fractured” geometry.
The easiest way to get fractured geometry is to use the voronoi fracture SOP, which takes geometry (the wall in your case) and points to use to create fracture pieces. The seed points determine where you get more fracture pieces, meaning that if you have a lot of seed points in one spot, you will get a lot of small fractured pieces there.
If you take a look at the HIP file I've attached, I used a sphere to place a bunch of points right above your ground plane. I then use those points as the seed points for the voronoi fracture SOP. This produces a lot of small pieces only above the ground.
You can then take this into DOPs and simulate the wall breaking apart, but that requires some further set-up.
it isn't super clear what you want to do in this file. I'm assuming that you want to create some sort of fractured geometry that is similar to the shape of the ground geometry.
Using the cookie sop to do this is inadvisable for two reasons: 1)You're only going to get one piece that is either the union or intersection of the two geometries and 2) your ground plane is just a flat plane; the cookie SOP can't determine what is “inside” or “outside” of the intersection of two geometries when one of them is just a flat plane. If you make the ground plane a 3 dimensional shape, then you can use the cookie SOP, but it still wouldn't give you “fractured” geometry.
The easiest way to get fractured geometry is to use the voronoi fracture SOP, which takes geometry (the wall in your case) and points to use to create fracture pieces. The seed points determine where you get more fracture pieces, meaning that if you have a lot of seed points in one spot, you will get a lot of small fractured pieces there.
If you take a look at the HIP file I've attached, I used a sphere to place a bunch of points right above your ground plane. I then use those points as the seed points for the voronoi fracture SOP. This produces a lot of small pieces only above the ground.
You can then take this into DOPs and simulate the wall breaking apart, but that requires some further set-up.
Houdini Indie and Apprentice » FLIP fluid question
- travisharkleroad
- 10 posts
- Offline
You aren't supposed to add the velocity to the source FLIP points, that only gives them an initial velocity. You want to add the velocity attribute to another object and then bring that into DOPs using the SOP geometry node. That insures that they will be given a constant swirling force.
The way that you have your field force node set up, it's not really doing anything because you're not giving it any information to use to generate the force. You don't have anything going into the green input on the right side of the node.
The FLIP source and force that swirls the particles are two separate objects. I've attached an example HIP with some stickies. Hopefully that clears things up.
Also, I enabled viscosity in my examples to keep the fluid together.
The way that you have your field force node set up, it's not really doing anything because you're not giving it any information to use to generate the force. You don't have anything going into the green input on the right side of the node.
The FLIP source and force that swirls the particles are two separate objects. I've attached an example HIP with some stickies. Hopefully that clears things up.
Also, I enabled viscosity in my examples to keep the fluid together.
Houdini Indie and Apprentice » FLIP fluid question
- travisharkleroad
- 10 posts
- Offline
If you want to view your velocity point attribute in the viewport, you'll need to create a custom marker.
The way you do that is by moving your cursor over the viewport and pressing the “d” key. That brings up your viewport display options. Under the markers tab there is a section at the bottom called “custom”. If you click on the “new vector display option” in the corner, that will allow you to create a new custom vector visualization.
When the new window pops up, you specify which point attribute you want to visualize. In this case, you want to see the point attribute “v”, so just put v in all of the fields.
the only one that really matters is “attribute”, but keeping them all the same is an easy way to keep track of what you're visualizing.
As far as the VOP SOP goes, you should just need to set the angle of rotation (in my case I used 200) and the axis about which to rotate. I've attached a simple example file that illustrates how I used the quaternion to rotate that velocity vector about the y-axis.
The way you do that is by moving your cursor over the viewport and pressing the “d” key. That brings up your viewport display options. Under the markers tab there is a section at the bottom called “custom”. If you click on the “new vector display option” in the corner, that will allow you to create a new custom vector visualization.
When the new window pops up, you specify which point attribute you want to visualize. In this case, you want to see the point attribute “v”, so just put v in all of the fields.
the only one that really matters is “attribute”, but keeping them all the same is an easy way to keep track of what you're visualizing.
As far as the VOP SOP goes, you should just need to set the angle of rotation (in my case I used 200) and the axis about which to rotate. I've attached a simple example file that illustrates how I used the quaternion to rotate that velocity vector about the y-axis.
Houdini Indie and Apprentice » FLIP fluid question
- travisharkleroad
- 10 posts
- Offline
hello, thanks for coming to the class.
The PointSOP and the VopSOP are actually two separate methods to get the same effect. You do either or, not both.
The point SOP method basically just creates a vector from the position in input 1 or the position coming into input 2. So if you rotate the box coming into input, the vectors the point to those rotated points form a swirling pattern. The problem with this is the vectors on the edges of the geometry are longer than the vectors near the origin. That would mean the the force swirling the fluid would be stronger at the edges.
The VOP SOP creates a bunch of vector attributes on your points, and all the vectors are the same length. The quaternion (and quaternion multiply) rotates all of those vectors about the Y axis. (You can rotate about any arbitrary vector, but in that example I specified 0 1 0). This approach is nice because there is a uniform swirling force throughout the fluid.
Does that make sense?
The PointSOP and the VopSOP are actually two separate methods to get the same effect. You do either or, not both.
The point SOP method basically just creates a vector from the position in input 1 or the position coming into input 2. So if you rotate the box coming into input, the vectors the point to those rotated points form a swirling pattern. The problem with this is the vectors on the edges of the geometry are longer than the vectors near the origin. That would mean the the force swirling the fluid would be stronger at the edges.
The VOP SOP creates a bunch of vector attributes on your points, and all the vectors are the same length. The quaternion (and quaternion multiply) rotates all of those vectors about the Y axis. (You can rotate about any arbitrary vector, but in that example I specified 0 1 0). This approach is nice because there is a uniform swirling force throughout the fluid.
Does that make sense?
Houdini Indie and Apprentice » Mantra Error -1073741819
- travisharkleroad
- 10 posts
- Offline
I am also experiencing this error, using Houdini Master Education.
EDIT:
I discovered what was causing my error: animated FBX + sprite POP.
I'm not sure if that's relevant to your project, but when I switched from the animated FBX to a bgeo sequence, that fixed my render error.
I would still like to know what the error code refers to, for future reference.
EDIT:
I discovered what was causing my error: animated FBX + sprite POP.
I'm not sure if that's relevant to your project, but when I switched from the animated FBX to a bgeo sequence, that fixed my render error.
I would still like to know what the error code refers to, for future reference.
Technical Discussion » Point Cloud missing custom point attribute?
- travisharkleroad
- 10 posts
- Offline
problem solved!
For anyone interested: the solution that ended up working was to use a File node, writing out a sequence of bgeo files, rather than .pc files.
Then, using the PointCloudOpen node, I just referenced the cached out bgeo sequence and used a PointCloudFilter node.
Still don't know why the other attributes weren't showing up in the .pc file, but .bgeo works just fine.
-travis
For anyone interested: the solution that ended up working was to use a File node, writing out a sequence of bgeo files, rather than .pc files.
Then, using the PointCloudOpen node, I just referenced the cached out bgeo sequence and used a PointCloudFilter node.
Still don't know why the other attributes weren't showing up in the .pc file, but .bgeo works just fine.
-travis
Technical Discussion » Point Cloud missing custom point attribute?
- travisharkleroad
- 10 posts
- Offline
Hey Everybody,
I have a geometry with a custom point attribute “name” (created by a voronoi fracture SOP). I want to write out a point cloud file of my geometry, but when I read the .pc file back in, the “name” attribute is missing.
I've looked at the pcwrite node in VOPs, but it only takes two input channels, and I'm going to need at least three (P, v, and “name”).
Any ideas how I can write out three channels to a point cloud file?
I have a geometry with a custom point attribute “name” (created by a voronoi fracture SOP). I want to write out a point cloud file of my geometry, but when I read the .pc file back in, the “name” attribute is missing.
I've looked at the pcwrite node in VOPs, but it only takes two input channels, and I'm going to need at least three (P, v, and “name”).
Any ideas how I can write out three channels to a point cloud file?
Technical Discussion » Override FLIP particle velocity with RBD velocity
- travisharkleroad
- 10 posts
- Offline
zdimaria
Also, not that it matters much but this cuts out the need for those fetch and apply data dops. You can just point the dopimport to the rbd object and grab its Geometry data. You really dont need 2 copies of the same data in your network, especially when that data gets large.
Awesome! Thanks for your help. I knew that there had to be a simple way to do it.
Can't believe I didn't think of it, considering the default data coming into the SOP solver is coming in through a DOP Import node, duh!
Thanks again!
Technical Discussion » Override FLIP particle velocity with RBD velocity
- travisharkleroad
- 10 posts
- Offline
Hey everybody!
I'm trying to figure out how to use a SOP solver to override the velocity attribute of my FLIP particles. I know how to do this in general (plug a sop solver into the post-solve of the FLIP solver ).
The problem that I'm having is that I want to take the RBD geometry data from a fractured RBD object in the DOP network and bring it into the SOP solver as well. In the parameters of the SOP solver though, you have to specify the name of the data set you're acting on .
How can I import the flipfluidobject1's geometry as well as the RBD_geom data that I am fetching from my RBD object?
Any DOP experts out there, I would really appreciate any help you could offer. Thanks!
-Travis
I'm trying to figure out how to use a SOP solver to override the velocity attribute of my FLIP particles. I know how to do this in general (plug a sop solver into the post-solve of the FLIP solver ).
The problem that I'm having is that I want to take the RBD geometry data from a fractured RBD object in the DOP network and bring it into the SOP solver as well. In the parameters of the SOP solver though, you have to specify the name of the data set you're acting on .
How can I import the flipfluidobject1's geometry as well as the RBD_geom data that I am fetching from my RBD object?
Any DOP experts out there, I would really appreciate any help you could offer. Thanks!
-Travis
-
- Quick Links