Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won


Everything posted by Pazuzu

  1. Random link of interest

    Nice TensorFlow + Houdini Clues!! https://qiita.com/takavfx/items/f27cd76604e902199c9d
  2. Particle advection

    Hi, You have many options, one of the them is to just post-sample the smoke density to adjust your particles, for example using the density sampled data to mod you pscale, color or alpha; Or you can sample dynamically the smoke density at the advection stage to for example trigger a custom age to decay your particle attributes. its all up your needs! I hope this helps you! Cheers, Alejandro
  3. Particles along surface

    This method uses the function you want to learn about it! And the nice thing is that is very simple to implement. Of course you need also to implement the goal using forces or modifying directly the position to attract to the surface plus this, and because we are saving the delta, all points will always stick to the rest sampled position. Cheers! Alejandro particles_on surface_aeb.hiplc
  4. Happy 10th Birthday Od[force]

    Congratulations!!! The best Odd forum!
  5. WIP - ok++'s softbodies RnD + .hip files

    Thank you very much for those amazing files!!!
  6. Pyro/smoke fast collider

    If you want better collision behavior, you have two options. By default the smoke/pyro solver uses the Multigrid projection method with just one iteration; This method is very fast but not good to deal with collisions, so try to increase the iterations, that can help a little bit. The second option is to change the projection method to PCG, its slower than multigrid, but gives a much better collision behavior! You can find this option on the Advance/Projection tabs in the solver. I hope this helps you! Alejandro
  7. FLIP smorganic/sheeter effect?

    Hi Michael! The implementation is very different. My technique is more a bunch of hacks than a "Physical Based Solution", mainly to deal with the FLIP/PIC limitations for small scale sims, like packing, volume loss, etc. Another main difference is that mine is particle based (I use also fields, but the forces are apply at particle level), the new ST that comes with H16 is volume based, it behaves very nicely, but if you need very small details you need to increase volume res and also timesteps, loosing the main benefits of the FLIP/PIC method, the speed. I hope that this answer your question! Cheers! Alejandro
  8. Server downtime

    Thank you very much Marc! The forum looks awesome!!
  9. Pyro Clustering Tutorial

    Yes, I usually, flatten everything using vdb, and for the velocity fields, just use a max operation, you will have at the end a vdb combine for every field class in a for each loop.
  10. You're Welcome! Regards speed of computing the fields outside DOPs, is almost the same for both methods; For method (a) to be way faster, you should compute everything in SOPs as with method (b), the main difference is the velocity computation, but is not that bad regards speed. Cheers! Alejandro
  11. (a) This method uses volume based and point based collisions (collision detection). The results are much better at the cost of speed in some cases with huge colliders; Regards velocity this method has 3 modes to automatically compute your collision velocity, "Rigid", "Point" and "Volume". (Look at the Gas Build Collision Mask DOP node for more info) (b) This method uses the standard pic approach to take into account colliders into the system as sdf representations; But at particle level the collision is just a test to see if a particle is inside, if is it, it will take it closer to the isocontour of the collision sdf. For the collision velocity you must compute it yourself. Both are very useful methods. For example when you have large scale sims, the (a) can be a pain of slow with high rez collisions, because the solver has to recompute the collisionmask even if you sample the collision volume from sops, and that can take a lot of time. With (b) method there is no need to compute the collisionmask out of a collision relationship, so it will be faster but you can loose some nice collision behavior, it will be more basic in few words. Cheers! Alejandro
  12. Solver SOP and substeps

    I think doing this is not correct @Cd.x *= decay_val * @TimeInc; Do the math and you will have almost no value to work with; Its better that you subtract and apply a maximum or a clamp after the decay.
  13. Pyro | Multiple Sources with Unique Microsolvers?

    Hey Alvaro, Here is a bit over-complicated setup using a vector field to define the id masks, but you can use also scalar fields directly. In this setup I'm using the id masks ( aka source A, sourceB ) to affect dissipation and turbulence for each source, please look into those "shapers" in the pyro solver. I hope this helps you! Cheers! Alejandro multi.pyro.v1a.hiplc
  14. Pyro | Multiple Sources with Unique Microsolvers?

    You can use an id mask, so this mask should be advected / transported exactly the same as density, this way you can use it to mask whatever filter/effect you want.
  15. You are using a custom expression in the group parameter of the delete sop to filter each piece; So you must edit that expression using spare inputs for the dependencies to work correctly in a compile block. Cheers, Alejandro
  16. Hey, For this to work, you need to fix the expression dependencies in the group parameter for the delete SOP with spare inputs for the compile block to work correctly Cheers, Alejandro
  17. Copy Debris Mesh to Pop

    Hey Alvaro! You need to reset each piece xform first before the copy! Cheers Alejandro copy.fragments.to.particles.v2_FIX.hiplc
  18. Affector matrix with packed

    Nice to hear that!! Cheers! Alejandro
  19. Affector matrix with packed

    Hey Michel! Is this what you are looking for? Cheers!! Alejandro colli_ig_fail_1.hip
  20. Flip fluid collapsing in on itself, how can I prevent this?

    Unfortunately that's one of the limitations of the FLIP method, the volume loss. As Andrew said a particle separation can help to cont-rarest the volume loss on the system. You can try also to apply some drag forces as soon as the fluid start to settle with some speed or pressure conditions, but that can kill a bit the nice momentum. For this kind of FX I really miss SPH, but its so slow; So in my case I come around to this problem using a mix between PBD and FLIP/PIC in my microtension tools, this way the volume loss is less noticeable, but still not as good as the SPH method, I really hope that SESI update some of the SPH microsolvers some day!. I hope that this helps you! Cheers! Alejandro
  21. Hi, Here is an approach to accumulate scatter using a for block, I know that is a bit cumbersome, but maybe there is a much better way. Cheers! Alejandro scatterAcum.hip
  22. gasbuildrelationshipmask microsolver

    Yes, its just a static mask, because the field is overridden on every timestep as the relationship is active, but you can use that mask to source into a dynamic field (Density, Divergence, Temperature, Fuel, etc). Cheers! Alejandro
  23. Surface tension and viscosity

    If you want to find even more details of the amazing surfacepressure implementation in the FLIP solver, look at the second edition of the "Fluid Simulation For Computer Graphics" book!! Is amazing!!! Cheers! Alejandro
  24. gasbuildrelationshipmask microsolver

    The Smoke object is just the container of data (In DOPs is very important that you have a container where all the data will be for DOPs to process) that contains all the necessary fields that the smoke/pyro solver will use to make the sim evolve by the DOPs engine. In the file you will find two main colors to identify the relationship type, there are two in this case, a source relationship (green) and a sink relationship (red). So all the colored nodes makes each relationship works, for example for the source one, you need a merge DOP that will define the type or relationship as a source, then you need the object to generate the mask from (sphere) and finally the microsolver that will generate the mask field for your relationship (gasbuildrelationship__source). Regards the "reference field density", is a parameter of the node to generate the mask as a "fog" field, by default the node creates SDF representations. Cheers! Alejandro
  25. gasbuildrelationshipmask microsolver

    This microsolver helps you to define a field mask using standard DOPs relationships (using the merge DOP for example). You can define for example a source object mask to emit fuel or density using just relationships, so if you have many objects and connect those besides the smoke solver with a merge using source relationship mode, the gasbuildrelationshipmask will create a field representing the objects as a fog or SDF representation. Attached is an example file (one hip is better that a thousand words ) Cheers Alejandro gasbuildrelationshipmask.hip