Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 09/17/2024 in all areas

  1. This hip was inspired by Brushstroke Tools in Blender. brushstroke_fire.zip 20 brushstrokes are included. I made them in Krita (free software). I used these presets (also free): https://krita-artists.org/t/memileo-brushes/53579 https://krita-artists.org/t/memileo-impasto-brushes/92952
    8 points
  2. Hello everyone! For the past 8 weeks I have been working on a Japanese Town House generator! This project was made for Breda University of Applied Sciences as a part of my Block A. This is my first Houdini project, so if anyone has feedback for me it would be greatly appreciated. The project was made from scratch as I did not find the built-in Labs building generator easy to build upon. The building generator allows you to change both the roof tiles, the lattices, the windows and the flags for different variances. The size of the building is determined by user placed bounding box, so the tool is able to generate an entire street from just a blockout! Here you can see a diagram of the basic logic used to generate the buildings, excluding the preview mesh generation. I have also made a short video using PDG to showcase different ways that the building generator can create distinct and unique outputs: WhiteOutSpedUp (1) (1).mp4 Here is the tool working in Houdini SpedUpHoudiniShowcase.mp4 And finally, the tool working in Unreal! ToolInUnreal.mp4 Thank you everyone for reading, if you have any questions please ask away!
    8 points
  3. Hello fellow magicians I've released my latest project Skull Beach and raised some interest regarding the method I used for the foam. I want to share a hip file with the basic principle behind this fx. Have fun with it, improve on it, and don't hesitate to share your creations! vellum_foam.hip
    7 points
  4. New USD/LOPs tutorial for anyone interested in asset authoring and composition arcs. Basically an in-depth explanation of what the component builder nodes do under the hood with some tips and tricks sprinkled in.
    6 points
  5. 5 points
  6. FMX HIVE 2022 presentation by Simon Fiedler & Bastian Schiffer
    4 points
  7. Hi, changing "Max Points" parm on attribute wrangle will be able to control speed of infection spreading. attribute_spread_v2_animated_01.hipnc
    4 points
  8. Hi @EdwinFumano, you could calculate a bunch of eikonal distances using attribute fill inside a for loop and remap them as animation: float speed = chf('speed'); float t = @Time * speed; int i = floor(t); float u = frac(t); int n = npointsgroup(0, 'start'); string att = 'dist_' + itoa(i%n); float dist = point(0, att, i@ptnum); float mask = chramp('shape', dist - u + 1.0); float fade = 1.0 - smooth(0.5, 1.0, u); f@mask = mask * fade; setdetailattrib(0, 'active_dist', att, 'set'); infection.hip
    4 points
  9. I do not think a discord is the right thing for odforce, as Marc mentioned, the info get lost easily. Even though you can search etc still is not as nice as having it in a forum.
    4 points
  10. Hi magicians, I'm finishing a tutorial about how to create hard surface helmets procedurally in Houdini, here's a previz:
    4 points
  11. Using glue constraints and meshing the constraint geometry is perfect for melted cheese! glue_constraint_cheese.hiplc
    4 points
  12. Its been a while since I posted progress in this topic. Here is the latest project that I been working on my spare time, always trying to improve my small scale pipeline. I hope you like it! Cheers!!
    4 points
  13. given two points on the long edge of the rectangle, let's say they're point 0 and 1: vector p0 = point(0, "P", 0); vector p1 = point(0, "P", 1); vector n = normalize(p0 - p1); // compute matrix that rotates the normalized edge onto +X matrix3 d = dihedral(n, {1,0,0}); // transform points with this rotation @P *= d;
    4 points
  14. I am excited to present the latest version of my modeling addon for Houdini. The core and tools have been practically rewritten from scratch, with the main focus on moving away from a separate, foreign UI and fully utilizing Houdini’s native features for tool interaction. Modeler now operates based on Houdini's radial menus, hotkeys, and shelf tools. Release video
    4 points
  15. @Ian10210123 We’re close to a solution! Plus, the first file (2D rotation) gives the same result as the simulation. I think we can now achieve this pretty easily using COP 2 in Houdini 20.5. Definitely worth a try! Just sharing some tests! I'm using something like UV coordinates in tangent space and mapping it like a texture—basically a spherical map with tiling. In DOPs, I managed to get some nice fluid-like movement going. There's always room to improve, and I just need more time to refine it, but it's getting close to the concept I'm aiming for! He also mentioned time-dependent movement in COPs, and I think this would be pretty doable in the new COPs. Just need to dial in a better smoke/fluid simulation to get the look right. Plus i forget to make gray scale and relief those or displacement but its manageable.
    4 points
  16. There are so many nice example files on this website that I am often searching for. I wanted to use this page as a link page to other posts that I find useful, hopefully you will too. This list was started years ago, so some of the solutions may be dated. Displaced UV Mapped Tubes Particles Break Fracture Glue Bonds Render Colorized Smoke With OpenGL Rop Moon DEM Data Creates Model Python Script Make A Belly Bounce Helicopter Dust Effect Conform Design To Surface Benjamin Button Intro Sequence UV Style Mapping UV Box and Multiple Projection Styles Ping Pong Frame Expression Instance vs. Copy (Instance Is Faster) Particle Bug Swarm Over Vertical and Horizontal Geometry Rolling Cube Rounded Plexus Style Effect Pyro Smoke UpRes Smoke Trails From Debris Align Object Along Path Fading Trail From Moving Point Swiss Cheese VDB To Polygons Get Rid Of Mushroom Shape In Pyro Sim A Tornado Ball Of Yarn Particles Erode Surface Unroll Paper Burrow Under Brick Road Non Overlapping Copies Build Wall Brick-By-Brick FLIP Fluid Thin Sheets Smoke Colored Like Image Volumetric Spotlight Moving Geometry Using VEX Matt's Galaxy Diego's Vortex Cloud Loopable Flag In Wind Eetu's Lab <--Must See! Wolverine's Claws (Fracture By Impact) Houdini To Clarisse OBJ Exporter Skrinkwrap One Mesh Over Another Differential Growth Over Surface Blazing Fast OpenCL Smoke Solver [PYTHON]Post Process OBJ Re-Write Upon Export Rolling Clouds Ramen Noodles Basic Fracture Extrude Match Primitive Number To Point Number Grains Activate In Chunks Fracture Wooden Planks Merge Two Geometry Via Modulus Fill Font With Fluid DNA Over Model Surface VDB Morph From One Shape To Another Bend Font Along Curve Ripple Obstacle Across 3D Surface Arnold Style Light Blocker Sphere Dripping Water (cool) Exploded View Via Name Attribute VEX Get Obj Matrix Parts eetu's inflate cloth Ice Grows Over Fire Flying Bird As Particles DEM Image To Modeled Terrain Pyro Temperature Ignition Extrude Like Blender's Bevel Profile Particles Flock To And Around Obstacles BVH Carnegie Mellon Mocap Tweaker (python script) Rolling FLIP Cube Crowd Agents Follow Paths Keep Particles On Deforming Surface Particle Beam Effect Bendy Mograph Text Font Flay Technique Curly Abstract Geometry Melt Based Upon Temperature Large Ship FLIP Wake (geo driven velocity pumps) Create Holes In Geo At Point Locations Cloth Blown Apart By Wind Cloth Based Paper Confetti Denim Stitching For Fonts Model A Raspberry Crumple Piece Of Paper Instanced Forest Floor Scene FLIP pushes FEM Object Animated Crack Colorize Maya nParticles inside an Alembic Path Grows Inside Shape Steam Train Smoke From Chimney Using Buoyancy Field On RBDs In FLIP Fluid Fracture Along A Path COP Based Comet Trail eetu's Raidal FLIP Pump Drip Down Sides A Simple Tornado Point Cloud Dual Colored Smoke Grenades Particles Generate Pyro Fuel Stick RBDs To Transforming Object Convert Noise To Lines Cloth Weighs Down Wire (with snap back) Create Up Vector For Twisting Curve (i.e. loop-d-loop) VDB Gowth Effect Space Colonization Zombie L-System Vine Growth Over Trunk FLIP Fluid Erosion Of GEO Surface Vein Growth And Space Colonization Force Only Affects Particle Inside Masked Area Water Ball External Velocity Field Changes POP particle direction Bullet-Help Small Pieces Come To A Stop Lightning Around Object Effect Lightning Lies Upon Surface Of Object Fracture Reveals Object Inside Nike Triangle Shoe Effect Smoke Upres Example Julien's 2011 Volcano Rolling Pyroclastic FLIP Fluid Shape Morph (with overshoot) Object Moves Through Snow Or Mud Scene As Python Code Ramp Scale Over Time Tiggered By Effector Lattice Deforms Volume Continuous Geometric Trail Gas Enforce Boundary Mantra 2D And 3D Velocity Pass Monte Carlo Scatter Fill A Shape Crowd Seek Goal Then Stop A Bunch Of Worms Potential Field Lines Around Postive and Negative Charges Earthquake Wall Fracture Instance Animated Geometry (multiple techniques) Flip Fluid Attracted To Geometry Shape Wrap Geo Like Wrap3 Polywire or Curve Taper Number Of Points From Second Input (VEX) Bullet Custom Deformable Metal Constraint Torn Paper Edge Deflate Cube Rotate, Orient and Alignment Examples 3D Lines From 2D Image (designy) Make Curves In VEX Avalanche Smoke Effect Instant Meshes (Auto-Retopo) Duplicate Objects With VEX Polywire Lightning VEX Rotate Instances Along Curved Geometry Dual Wind RBD Leaf Blowing Automatic UV Cubic Projection (works on most shapes) RBD Scatter Over Deforming Person Mesh FLIP Through Outer Barrier To Inner Collider (collision weights) [REDSHIFT] Ground Cover Instancing Setup [REDSHIFT] Volumetric Image Based Spotlight [REDSHIFT] VEX/VOP Noise Attribute Planet [REDSHIFT] Blood Cell Blood Vessel Blood Stream [REDSHIFT] Light Volume By Material Emission Only [REDSHIFT] Python Script Images As Planes (works for Mantra Too!) [REDSHIFT] MTL To Redshift Material [REDSHIFT] Access CHOPs In Volume Material [REDSHIFT] Mesh Light Inherits Color [REDSHIFT] Color Smoke [REDSHIFT] FBX Import Helper [REDSHIFT] Terrain Instancer Height Field By Feature Dragon Smashes Complex Fractured House (wood, bricks, plaster) Controlling Animated Instances Road Through Height Field Based Terrain Tire Tread Creator For Wheels Make A Cloth Card/Sheet Follow A NULL Eye Veins Material Matt Explains Orientation Along A Curve Mesh Based Maelstrom Vortex Spiral Emit Multiple FEM Objects Over Time Pushing FEM With Pyro Spiral Motion For Wrangle Emit Dynamic Strands Pop Grains Slope, Peak and Flat Groups For Terrains Install Carnegie Mellon University BVH Mocap Into MocapBiped1 Ramp Based Taper Line Fast Velocity Smoke Emitter Flip Fill Cup Ice Cubes Float [PYTHON]Export Houdini Particles To Blender .bphys Cache Format [PYTHON] OP UNHIDE ALL (opunhide) Collision Deform Without Solver or Simulation Mograph Lines Around Geometry Waffle Cornetto Ice Cream Cone Ice Cream Cone Top Unroll Road Or Carpet Burning Fuse Ignites Fuel or Painted Fuel Ignition Painted Fuel Combustion Small Dent Impact Deformation Particle Impact Erosion or Denting Of A Surface Helicopter Landing Smoke And Particles Radial Fracture Pieces Explode Outwards Along Normal Tangent Based Rocket Launch Rolling Smoke Field Tear/Rip FLIP (H12 still works in H16) Rain Flows Over Surface Rains Water Drip Surface Splash Smoke Solver Tips & Tricks Folding Smoke Sim VEX Generated Curve For Curling Hair Copy and Align One Shape Or Object To The Primitives Of Another Object (cool setup) A Better Pop Follow Curve Setup FEM Sea Cucumber Moves Through Barrier Fracture Cloth Smoke Confinement Setup Merge multiple .OBJ directly Into A Python Node Blood In Water Smoke Dissipates When Near Collision Object Whirlpool Mesh Surface Whirlpool Velocity Motion For FLIP Simple Bacteria Single Point Falling Dust Stream Flames Flow Outside Windows Gas Blend Density Example Localized Pyro Drag (smoke comes to a stop) Granular Sheet Ripping Post Process An Export (Post Write ROP Event) Corridor Ice Spread or Growth Set Velocity On Pieces When Glue Bonds Break Water Drops Along Surface Condensation Bottle Grains Snow or Wet Sand Starter Scene A Nice Little Dissolver Turn An Image Into Smoke Fading Ripples Grid Example Stranger Things Wall Effect Face Through Rubber Wall [PYTHON]Create Nurbs Hull Shelf Tool [PYTHON] Ramp Parameter [PYTHON] On Copy OF HDA or Node Select Outside Points Of Mesh, Honor Interior Holes Sparks Along Fuse With Smoke Umbrella Rig Melt FLIP UVs Tire Burn Out Smoke Sim Flip or Pyro Voxel Estimate Expression Motorcycle or Dirt Bike Kicks Up Sand Particles Push Points Out Of A Volume [PYTHON]Cellular Automata Cave Generator Punch Dent Impact Ripple Wrinkle VEX Rotate Packed Primitive Via Intrinsic Kohuei Nakama's Effect FLIP Fluid Inside Moving Container Particles Avoid Metaball Forces FLIP Divergence Setup FLIP Transfer Color Through Simulation To Surface Morph Between Two Static Shapes As Pyro Emits Constraint Based Car Suspension Pyro Smoke Gas Disturbs Velocity Wire Solver Random Size Self Colliding Cables Fast Cheap Simple Collision Deform CHOP Based Wobble For Animated Character Slow Motion FLIP Whaitewater Avoid Stepping In Fast Pyro Emission Fast Car Tires Smoke FLIP Fluid Fills Object Epic Share Of Softbody/Grain Setups (Must see!) Balloon, Pizza, Sail, Upres Shirt, Paint Brush Create Pop Grain Geometry On-The-Fly In A DOPs Solver Varying Length Trails VEX Based Geometry Transform Determine Volume Minimum and Maximum Values Grain Upres Example Animated pintoanimation For Cloth Sims Batch Render Folder Of OBJ files Vellum Weaving Cloth Fibers Knitting Kaleidoscopic Geometry UV Image Map To Points Or Hair Color Particles Like Trapcode Particular Flat Tank Boat Track With Whitewater Orthographic Angle Font Shadow Select Every Other Primitive or Face? Printer Spits Out Roll Of Paper Unroll Paper, Map, Plans, Scroll Simple Vellum L-System Plant Basic Cancer Cell 2D Vellum Solution Vellum Animated Zero Out Stiffness To Emulate Collapse Whitewater On Pre Deformed Wave [PYTHON] Menu Callback Change Node Color Extruded Voronoi With Scale Effector Multi Material RBD Building Fracture House Collapse Spin Vellum Cloth Whirlpool Vortex Trippy Organic Line Bend Design Logo Based Domino Layout Delete Outer Fracture Pieces, Keeping Inside Pieces UV Mapped Displaced Along Length Curly Curves Slow Particle Image Advection Nebula Saw Through VDB Like Butter Fuel Based Rocket Launch With Smoke Fuel Based Rocket Launch With Smoke [upres] Deform Pyro Along Path Bend Pyro Gas Repeat Solver With RBD Collision Raining Fuel Fire Bomb City Video Tutorial Pyro Cluster Setup (Animated Moving Fuel Source) [PYTHON] Mantra .MTL File Reader (creates new materials) Pyro Dampen By Distance FLIP Fluid Sweeps Away Crowd Ragdoll Gas Repeat Solver X-Men Mystique Feather Effect Camera Frustum Geometry Culling Vellum Extrude Shape Into Cloth Wire Web Constraint Setup Pyro Smoke Font Dissolve "Up In Smoke" Helicopter Landing With Vellum Grass and Dust or Smoke Another Thin Sheet Fluid Setup Color Rain Drops Over Surface Dual Smoke Object Wand Battle Custom GasDisturb node (easy to use) Hair Driven Grass Example File Pyro Smoke With Masked Turbulence Align High Resolution Mesh With Low Resolution RBD Simulation Streaky Portal Effect Height From Luma Cracking Glass Dome, Fracture VEX Noise Types FLIP Waterwheel Fracture Brick Wall Using UVs Vellum Stacked Torn Membranes Terrain Topographical Line Curves Prepare RBD Fracture For Unreal Alembic Export Growing Ivy Solver Fix For Intermittent FLIP Surfacing Issue Extensive RBD Fracturing Thread With HIP Files Peter Quint's Pop Streams Particle Example Fracture Geometry To Release Flip Fluid Inside Procedurally Reverse Normals Vellum Culling Voronoi Shape To Shape Transition Animated Scattering Accessing Parametric UVs On A Surface Organic Hallways/Corridors Through A Mesh Smoke Particle Dissolve Along One Axis Expanding Vellum Rings That Collide With One Another Read, Fetch, or Get SOP Attribute Inside Of DOPS Broad Splash When Object Enters Water Blendshape Crowd Example [PYTHON] Replace Packed Intrinsic Geometry From Another Source Rip/Tear Part Of Paper To Reveal And Roll Up After Effects Text Styles Cabling Mesh Surface Hanging Wires Or Cables Use Python Inside a Font Sop Brand Accurate Textures Using Karma XPU hScript asCode Microscopic Hair USD Attribute Equivalents For Preview Shader (i.e. Cd mangle) Vellum Peel Effect SOP Pyro Control Field Gas Disturbance Repair Geometry Self Intersection FLIP Follows Curve Long Winded Guide To Houdini Instancing Disable Simulations On Startup Tutorial HIP Library Use Google To Discover Attached HIP Files Useful Websites: Tokeru Houdini Houdini Vex Houdini Python Houdini Blueprints FX Thinking Rich Lord HIP Files iHoudini Qiita Ryoji Toadstorm Blog Eetu's HIP Of The Day Video Tutorials: Peter Quint Rohan Dalvi Ben Watts Design Yancy Lindquist Contained Liquids Moving Fem Thing Dent By Rigid Bodies Animating Font Profiles Swirly Trails Over Surface http://forums.odforce.net/topic/24861-atoms-video-tutorials/ http://forums.odforce.net/topic/17105-short-and-sweet-op-centric-lessons/page-5#entry127846 Entagma Johhny Farmfield Vimeo SideFX Go Procedural
    4 points
  17. Studio ??? Talk to your manager right away and give these guys a job @hannes603 @konstantin magnus if they need a job.. Find Qiita website . !Advent Houdini 2020! you have Files for Infect and very Nice tricks for making those effects and much more using same Logic . Then(TIP) When you have Full Code that Works in Houdini you can Make anything in chatgpt(reverse and investigete) Now days. Have a nice Day .
    3 points
  18. I think I have found the perfect solution. This seems 100% correct. Takes into account the camera motion as well. screen_space_velocity_2.hiplc
    3 points
  19. Here are some ideas using this on curves (if I understood correctly) shift_points_along_curve.hipnc
    3 points
  20. Maybe try with Target Forward Vector, a bit hard blend, for a smooth edge need to make something else. paint_alignment_v02.hiplc
    3 points
  21. This is pretty much the same as it always has been: Who's Online 10 Members, 0 Anonymous, 89 Guests However this is a good question, what can we do to generate more excitement on the forums? Is anyone interested in running challenges? Unfortunately I have a studio to run now, which is quite all encompassing, but we're happy to support any good ideas! M
    3 points
  22. 3 points
  23. Or without a double intersect call: vector A = point(0, "P", 66); vector B = normalize(A-v@P); vector C = v@P + B * .1;// 0.1 to avoid overshooting int prim; vector primuv; xyzdist(0, C, prim, primuv); vector surfaceP; prim_attribute(0, surfaceP, "P", prim, primuv); v@field1 = normalize(surfaceP-v@P);
    3 points
  24. I followed Mikael Pettersen's vellum water balloon tutorial. ap_mp_vellum_water_balloon_041023.hiplc
    3 points
  25. An attempt spheres_between_lines.hiplc
    3 points
  26. Any effect resolution depends on how close it is to the camera. Do your shot planning first, then add resolution as needed.
    3 points
  27. I developed this tool to make a faster and easy-to-read version of the combination of Pre-Flight Scene tool and labs archive project tool. Let's take a look of the advantage of my tool: about file viewer 1. faster loading speed than Pre-Flight Scene 2. allow to filter by node name, file name and extension 3. show absolute and relative path. 4. tell you which path is not under $HIP 5. double-click the node name and jump to the node 6. show the number of link status and the number of files with $HIP path about package 1. allow to copy Non-$HIP files to the folder where your .hip file is and replace the path to $HIP. 2. toggle of copy sequence files. Installation Create a new tool in shelf and copy the python codes. Don't be shy to give me any suggestion and feedback FileCollector.txt
    3 points
  28. Hi, you are reading point number form second input to goalpt variable but point numbers of this goal geo changing each frame. Calculating id attribute on this geo so that id value would be constant and finding point number through id in DOP will solve this problem. ParticleTarget_01.hipnc
    3 points
  29. Just ran into this same issue- if anyone else has this problem-I fixed it by going into the parameter edit menu (the gear icon)- made the parameter invisible- clicked apply- then made it visibile again- clicked apply- and I got all 3 (xyz) parameters back
    3 points
  30. without reseeding you can just delete points having a higher pointnumber than a certain value if (@ptnum > 1000){ removepoint(0, @ptnum); } i've attached a sample file with some different approaches and some sticky notes as well, i hope that is helpful you can get the velocity field out of a flip sim with an import dop fields, for one solution i fed it into a solver and for another one a setup a popsim with pop advect by volumes. both approaches use reseeding. i also tested a quick setup with reseeding turned off. hope this helps! flipvel.hipnc
    3 points
  31. sure you can also do it post solve pretty much the same way .. you only need to accumulate all particles in the solver and remove them afterwards.. otherwise id hase no corrosponding ptnum untitled.mp4 infection_with_changing_point_count_post_solve_simple_improved.hip
    2 points
  32. collision_passes_100.mp4 collision_passes_10.mp4 col_passes_vellum.hip col passes 100 vs 10 jfyi
    2 points
  33. You have a vex function called toNDC where you can use your velocity information to transform it to normalized raster coordinates. Even if it says it's only well defined in shading context it seems to work in sop as well.
    2 points
  34. Here's a little hda for creating point(s) on polylines. It is designed to work only on polylines with 2 points! If your polyline has multiple segments, it can/will give you weird unexpected results. TIP: Type "popo" in the TAB menu to find it fast. sipi-point_on_polyline-0.0.3.hda
    2 points
  35. quick flipbook gif of how the shot is looking. I'll re-animate Thanos soon enough. Also gonna be covered in lighting when Hulk hits the ground with his fist. would be nice to figure out how to get those pieces to 'splay' outwards a bit more as they fall so i dont end up with a cloud at the bottom of the shot - but i think i can figure that out using this active_age attribute now thanks for all your help on this
    2 points
  36. After a hiatus, DASH::package returns. Version 5.1 is an extensive rollout of fixes and new nodes that demonstrate composed applications of Dot and Cross Product operations: Linear Algebra, geometric relationships, rotation matrices, etc. Release: https://github.com/probiner/DASH/releases/tag/v5.1.0 Cheers
    2 points
  37. rbd_freeze_de_activate_sleep_temp_group.mp4 RBD_Active_deactivate_freeze_sleep_in_group_anim.hip the sleeping function itself is getting deactivated automatically if a collision happens or a force interacts which pushes the v and w out of the sleep threshold. however if you wanna freeze rbds temporarly you can take this setup
    2 points
  38. untitled.mp4 maybe you can just fake the part where its just rotating in the air like that. pop and noisey geo pop_surface_slider_ray_water_ball_attract_2.hip
    2 points
  39. I reviewed the code and I think I made some mistakes. The second condition, the speed difference check, I put it after the angle difference condition is verified. It works better now. What do you think? clusterbyattribute2_fix.hip
    2 points
  40. Foreach should help. limit_angle_v02.hipnc
    2 points
  41. Okay. Solved! I have to spend lots of time to figure it out your second way that gets u. (Still confused me) Anyway, Cheers! And Merry Christmas!!!
    2 points
  42. You can probably try to capture the u position of the parent prim using xyzdist() limiting to the Prim_ID you have defined. Once you have the u-parameter from the start and end point you can use the fit function (to fit them to 0-1). Match_Carve_mod.hipnc
    2 points
  43. Remapping an attribute so its maximum is 1.0: 1st point wrangle: setdetailattrib(0, 'height_max', f@height, "max"); 2nd point wrangle: f@height /= detail(0, 'height_max', 0);
    2 points
  44. Bumping this old thread in case anyone else finds themselves in a similar boat where they're drawing a blank on this technique and end up googling "Houdini noise transition". The trick is to first form your gradient using a value, in this case the x position along a grid... ...and then add noise to that value. For a deeper dive into this kind of thing, definitely check out this series of classes by Main Road Post and this brilliant page by Kiryha. Hope this helps.
    2 points
  45. I've wanted to tackle mushroom caps in pyro sims for a while. Might as well start here... Three things that contribute greatly to the mushroom caps: coarse sub-steps, temperature field and divergence field. All of these together will comb your velocity field pretty much straight out and up. Turning on the velocity visualization trails will show this very clearly. If you see vel combed straight out, you are guaranteed to get mushrooms in that area. If you are visualizing the velocity, best to adjust the visualization range by going forward a couple frames and adjusting the max value until you barely see red. That's your approximate max velocity value. Off the shelf pyro explosion on a hollow fuel source sphere at frame 6 will be about 16 Houdini units per second and the max velocity coincides with the leading edge of the divergence filed (if you turn it on for display, you'll see that). So Divergence is driving the expansion, which in turn pushes the velocity field and forms a pressure front ahead of the explosion because of the Project Non-Divergent step that assumes the gas is incompressible across the timestep, that is where where divergence is 0. I'm going to get the resize field thingy out of the way first as that is minor to the issue but necessary to understand. Resizing Fields Yes, if you have a huge explosion with massive velocities driven by a rapidly expanding divergence field, you could have velocities of 40 Houdini units per second or higher! Turning off the Gas Resize will force the entire container to evaluate which is slow but may be necessary in some rare cases, but I don't buy that. What you can do is, while watching your vel and divergence fields in the viewport, adjust the Padding parameter in the Bounds field high enough to keep ahead of the velocity front as that is where you hope for some nice disturbance, turbulence and confinement to stir around the leading edge of the explosion. or... Use several fields to help drive the resizing of the containers. Repeat: Use multiple fields to control the resizing of your sim containers. Yep, even though it says "Reference Field" and the docs say "Fluid field..", you can list as many fields in this parameter field that you want to help in the resizing. In case you didn't know. Diving in to the Resize Container DOP, there is a SOP Solver that contains the resizing logic that constructs a temporary field called "ResizeField", importing the fields (by expanded string name from the simulation object which is why vector fields work) with a ForEach SOP, each field in turn, then does a volume bound with the Volume Bounds SOP on all the fields together using the Field Cutoff parameter. Yes there is a bit of an overhead in evaluating these fields for resizing, but it is minor compared to having no resizing at all, at least for the first few frames where all the action and sub-stepping needs to happen. Default is density and why not, it's good for slower moving sims. Try using density and vel: "density vel". You need both as density will ensure that the container will at least bound your sources when they are added. Then vel will very quickly take over the resizing logic as it expands far more rapidly than any other field in the sim. Then use the Field Cutoff parameter to control the extent of the container. The default here is 0.005. This works for density as this field is really a glorified mask: either 0 or 1 and not often above 1. Once you bring the velocity field in to the mix, you need to adjust the Field Cutoff. Now that you have vel defined along side density, this Field Cutoff reads as 0.005 Houdini units per second wrt the vel field. Adjust Field Cutoff to suit. Start out at 0.01 and then go up or down. Larger values give you smaller, tighter containers. Lower values give you larger padding around the action. All depends on your sim, scale and velocities present. Just beware that if you start juicing the ambient shredding velocity with no Control Field (defaults to temperature with it's own threshold parameter so leave there) to values above the Field Cutoff threshold, your container will zip to full size and if you have Max Bounds off, you will promptly fill up your memory and after a few minutes of swapping death, Houdini will run out of memory and terminate. Just one of the things to keep in mind if you use vel as a resizing field. Not that I've personally done that... The Resolution Scale is useful to save on memory for very large simulations, which means you will be adjusting this for large simulations. The Gas Resize Field DOP creates a temporary field called ResizeBounds and the resolution scale sets this containers resolution compared to the reference fields. Remember from above that this parameter is driving the Volume Bound SOP's Bounding Value. Coarser values leads to blurred edges but that is usually a good thing here. Hope that clears things up with the container resizing thing. Try other fields for sims if they make sense but remember there is an overhead to process. For Pyro explosions, density and vel work ok. For combustion sims like fire, try density and temperature where buoyancy contributes a lot to the motion.
    2 points
×
×
  • Create New...