Jump to content

jimeng20

Members
  • Content count

    36
  • Donations

    0.00 CAD 
  • Joined

  • Last visited

Community Reputation

7 Neutral

About jimeng20

  • Rank
    Peon

Contact Methods

  • Website URL
    https://www.jiemengfx.com/

Personal Information

  • Name
    Jie Meng Snek
  • Location
    Los Angeles

Recent Profile Visitors

570 profile views
  1. pyro smoke issue

    Looks like a sdf cut, do you have any collision field in your set up by any chance? For smoke all you need is density and vel. What's your initial lowres value and upres value ? - sometimes if you upres too much the voxel will be shattered and has artifact then looks all weird. And I know the upres technique is a way to approach for high quality volume, but, to be honest I try not to rely on it. I will just use standard smoke solver and tweak the division size instead of cache out lowres and use upres solver. Hope this would help.
  2. FLIP substeps for fast moving boat

    I would trail the collision geo and convert into sdf in the sop, cache out and you can either use it as a proxy volume in the static object or, you can create colliison and collisionvel and use in the dop as collision fields. If you are going to try the collision/collisionvel, make sure you wire the volume source to your THIRD INPUT of the flipsolver instead of the forth. Basically, only rely on the substep in the solver is very expensive, the dop is trying to figuring out the sub-frame information during the sim, and apparently, you can prepare the sub-frame info in the sop, cache out, and dop just need to read it in. It will be much faster if you have trailed your collision animation 1/5 increment and put substep 2 in solver than try to calculate sub-frame while siming with 10 substeps. Hope this would help.
  3. FLIP substeps for fast moving boat

    Hi there, Just curious what do you mean the Solver has access to the sub-frame collision geometry? Have you tried to use a trail sop to trail your animation yet? If not, I would try to create all the sub-frame animation as much as possible before completely relying on solver's substep. Based on the speed, put down a timeblend and then set something like Trail Length 10, Trail Increment 0.1, then convert it to sdf. Hope this would help.
  4. Hi there, If you are using static object WITHOUT proxy volume, the solver will create sdf every frame if your object is animated or deformed. But if you create the sdf outside of the dopnet, the dop will just read in whatever sdf from sop level and calculate it i.e. gasenforceboundary microsolver, or using proxy volumes in static object. You can cache out your collision sdf so the dop will just read in the disk file. Also here is some information about collision from sidefx: Hope this would help.
  5. the question about pc open (solved)

    Also volume is not like points or prims, you can not just directly use spreadsheet to check the information in spread sheet. If you really need to check the P information, I would suggest create a vector field name it Position, then store the P into Position and I would scatter the points to sample the Position field by using volumesamplev.
  6. Pop orient from source geo each frame

    Hi there, I would do a frame record in the solver, basically set up a trigger attribute initializes from 0, and in certain condition turn to 1(in your case let's say if(@P.y>5)). And also record which frame it trigger, and name it something like trigger_frame. And no matter you are using rbd or pop, you can manipulate your force/vel/pos when @Frame >= trigger_frame. You can do this separate in another solver sop or you can directly record in the current dopnet. This is normally how I would do something like character walking then shattering, basically if @Frame >= trigger_frame, the pieces will falling or exploding etc, if not then copy the intrinsic from the animation. Here are some info about how to setup trigger attribute and record the trigger_frame. Maybe there is a better way to do it, but I hope this would help.
  7. FLIP- fluid going thru collision geometry

    Hi there, I don't know how you prepare your collision geo, I would also try create collision sdf and collisionvel then bring into dop instead of using the static object. I would trail the collision geo to fill the gap between the frames, compute velocity , convert to sdf and create velocity field to use as a collisionvel. Then use source volume to bring it in and wire into flipsolver THE THIRD INPUT(if you wire into the fourth input as usual source volume, you will get no affect) The good thing about collision field and collisionvel is that you can modify the scale of your collision velocity to affect the flip, also you can prepare your own sdf in the sop level(if you don't use proxy volume, the static object will create sdf every frame). Hope this would help.
  8. (displacement) splitted edges

    Hi there, Have you try fuse sop? Also are those two individual geometry?
  9. Hi there, Also I think there are some info that I found can help you to better understand quaternions/orient and matrices. http://www.tokeru.com/cgwiki/index.php?title=JoyOfVex17 Hope this would help.
  10. Only mesh flip particles that are closest together?

    Hi there, I'm sure there are a lot of different ways to do that, I will probably use point cloud to found out the how many points in the searching area. For example int pts[] = pcfind(0, "P", @P, 0.1, 10); if(len(pts) < 10){ removepoint(0,@ptnum); } So if there are less 10 points find in 0.1 meter area, blast the particles. Then you can mesh the remaining. Hope this would help.
  11. invert matrix VOP with more than 2 packed object

    Hi there, First, instead of doing a parameter for prim_number, connect the global primnum into both primitive_intrinsic vop "prim" parameter. Because you want to grab the individual primitive number for both packed geo at the same time. Second, in you setattrib, you need to connect the global primnum into i1, again, you need to define which primitive number to set the intrinsic, so it knows to set intrinsic to the corespondent packed geo. I tested and also added another packed geo and it should work, but unfortunately I can't upload the file since my work place doesn't allow to. Hope this will help.
  12. Hi there, I would use the intersect vex function, so create a wrangle and wire the tube in second input, and you can write something like: vector pos; vector uvw; int prim = intersect(1, @P, @N, pos, uvw); f@length = distance(@P, pos); @P = lerp(pos, @P, chf("mix")); So the original position is first input, and intersect vex function will take that position and emit ray to your target tube, and of cause the ray direction is the normal, and it will create the hit position and hit uv. So the hit position, which is "pos" in the code is the target intersected P that based on your normal direction. So compute the distance of @P and pos is the length you want. Also you can mix the original P and intersect P to see the blending movement. Hope this would help.
  13. Particles Density based on Volume

    Hi there, First you don't need to connect the primnum to your volumegradientfile vop, that is for which primitive volume you wanna sample, let's say you have two volumes named density and heat, 0 will be density and 1 will be the heat. Second, you should connect your volume to your second input, cause you want to sample the gradient from the volume right? You can't sample the gradient from the points. Third, you can't just bind in the density in a point/prim/vertex/detail vop, you need to do that in a volumevop or you can sample the density from the second input volume using volumesample vop. Volume doesn't work like points and primitive, we can't directly grab the density/gradient/surface or any other fields we created in volume and assume it's gonna work, so we need to use the volumesample to sample the density, surface etc and use volumegradient to sample the gradient from a volume. I know it's a bit hard to understand so I found more information here: Also cgwiki has a great topic for understanding volumes, how to modify and sample, how to create field etc. http://www.tokeru.com/cgwiki/index.php?title=HoudiniVolumes Hope this would help.
  14. Particles Density based on Volume

    Hi there, I don't think you can directly bind out or create an attribute from a volumeVop, and the attribute you created in this way won't show in the spreadsheet as a "volume attributes". I would suggest do a volume gradient sample with scattered points in a point wrangle or vop. Something like: v@grad = volumegradient(1,"density",@P); Hope this would help.
  15. scatter on thin geometry

    Hi there, Correct me if I'm wrong but I don't think scatter will have ability to check the point normal direction if it's pointing toward the inside of your geometry. But you can isolate the faces that the normal direction is pointing outward then scatter points only on those faces. One way I would do is convert your geometry to sdf and to check if the surface normal direction aligns to the negated volume gradient by using dot product, if it doesn't align, delete those faces. Also I would just isolate the part that have problem I.e. isolate the fins and solve the normal issue and scatter points based on what I mentioned then merge back with the rest. Unfortunately I can't make example file now since I'm at work, but I hope this will help.
×