Houdini 12 Examples
Example forExample name
Active ValueLoad | Launch

.../examples/nodes/dop/activevalue/AnimatedActiveState.cmd

This example shows how to use the Active Value DOP to animate the Active state of an object. When an object is not active (it is passive), it is not simulated. To keyframe both the active state of an object and its motion while passive, use the RBD Keyframe Active DOP.

Active ValueLoad | Launch

.../examples/nodes/dop/activevalue/AutoFreezeRBD.otl

This example shows a system for automatically detecting when RBD objects achieve a rest state and then turning off their active status. This will freeze them in place reducing computation time and jitter.

AffectorLoad | Launch

.../examples/nodes/dop/affector/SimpleAffector.cmd

This example shows how to use the Affector DOP to set up a variety of affector relationships between a set of RBD Objects. It also shows how these different affector relationships affect the simulation.

Anchor: Align AxisLoad | Launch

.../examples/nodes/dop/anchoralignaxis/LookAt.otl

This example shows how to build a Look At Constraint which keeps a teapot pointed at a bouncing ball. It shows how to build constraints out of anchors and constraint relationships.

Apply RelationshipLoad | Launch

.../examples/nodes/dop/applyrel/ApplyRelationship.otl

This example shows how you can use the Apply Relationship DOP to add pin constraints to wire objects.

Apply RelationshipLoad | Launch

.../examples/nodes/dop/applyrel/BridgeCollapse.otl

This example shows how to use the Apply Relationship DOP to propagate constraints automatically and create an RBD simulation of a collapsing bridge.

Apply RelationshipLoad | Launch

.../examples/nodes/dop/applyrel/ConstrainedTeapots.otl

This example demonstrates how the Apply Relationship DOP can be used to create multiple constraints with the RBD Pin Constraint node.

Apply RelationshipLoad | Launch

.../examples/nodes/dop/applyrel/MutualConstraints.otl

This example demonstrates how to build mutual constraints between two DOP objects using the Apply Relationship node.

Blend SolverLoad | Launch

.../examples/nodes/dop/blendsolver/SimpleBlend.otl

This example demonstrates how to use the Blend Solver. In this case the Blend Solver is used to blend between an RBD solution and a keyframed solution.

Buoyancy ForceLoad | Launch

.../examples/nodes/dop/buoyancyforce/BuoyancyForce.otl

This example shows how to extract a surface field from another object to use as a buoyancy force source.

Cloth SolverLoad | Launch

.../examples/nodes/dop/clothsolver/AnimatedClothPatch.otl

This example shows how a piece of cloth that is pinned on four corners. These corners are constrained to the animated geometry.

Cloth SolverLoad | Launch

.../examples/nodes/dop/clothsolver/BendCloth.otl

This cloth example demonstrates how the stiffness of your cloth object can be defined by using the strong or weak bend parameters.

Cloth SolverLoad | Launch

.../examples/nodes/dop/clothsolver/BendDamping.otl

This cloth example demonstrates the use of the Damping parameter to control how quickly a cloth object will come to its rest position.

Cloth SolverLoad | Launch

.../examples/nodes/dop/clothsolver/BlanketBall.otl

This cloth example shows you how to simulate a ball bouncing on a blanket pinned at all four corners.

Cloth SolverLoad | Launch

.../examples/nodes/dop/clothsolver/ClothAttachedDynamic.otl

This example shows a piece of cloth attached to a dynamics point on a rigid object.

Cloth SolverLoad | Launch

.../examples/nodes/dop/clothsolver/ClothFriction.otl

This cloth example demonstrates the Friction parameter on the Physical properties of a cloth object.

Cloth SolverLoad | Launch

.../examples/nodes/dop/clothsolver/Denting.otl

This cloth example demonstrates how you can make your model into a cloth object to simulate a denting effect.

Cloth SolverLoad | Launch

.../examples/nodes/dop/clothsolver/DragCloth.otl

This example shows how adding Normal and Tanget Drag to a cloth object can influence its behaviour.

Cloth SolverLoad | Launch

.../examples/nodes/dop/clothsolver/PinnedClothWind.otl

This example shows how a piece of cloth that is pinned on two corners is affected by wind and gravity.

Cloth SolverLoad | Launch

.../examples/nodes/dop/clothsolver/SphereClothCollision.otl

This example shows a piece of cloth colliding with a static object.

Copy ObjectsLoad | Launch

.../examples/nodes/dop/copyobject/AutoFracturing.otl

This example shows how to use the Copy Object DOP, in conjunction with a Multi Solver, to automatically break an RBD object in half whenever it impacts another object.

Copy ObjectsLoad | Launch

.../examples/nodes/dop/copyobject/SimpleCopy.otl

This example demonstrates the use of the Copy Objects DOP. A single RBD Object is copied 100 times, and assigned a random initial velocity, and a position based on some grid geometry. These 100 spheres are then dropped onto a ground plane.

Drag ForceLoad | Launch

.../examples/nodes/dop/drag/TypesOfDrag.cmd

This sample illustrates three different ways to apply drag on an rbd object: by dragging the linear velocity, by dragging the angular velocity, or by directly changing the angular velocity.

Fan ForceLoad | Launch

.../examples/nodes/dop/fan/SimpleFan.otl

This example uses a piece of cloth to visualize the force generated by a Fan Force DOP.

Field ForceLoad | Launch

.../examples/nodes/dop/fieldforce/FieldForceSmoke.otl

Extracts the velocity field from a smoke simulation to use as a wind force on a POP simulation.

Field ForceLoad | Launch

.../examples/nodes/dop/fieldforce/FromRBD.otl

This example demonstrates how to use another active RBD Object as the source for the Field Force DOP. Two balls bounce inside a cube, one of the balls is set to repel the other according to force values stored on its geometry.

Field ForceLoad | Launch

.../examples/nodes/dop/fieldforce/SimpleField.otl

This example demonstrates the use of the Field Force DOP. A group of RBD Objects are passed through a field which at first pulls the together, and then pulls them apart as they advance through the field.

Field ForceLoad | Launch

.../examples/nodes/dop/fieldforce/fieldforce.otl

This example demonstrates the use of the Field Force DOP. It shows how to use a particle system to blow around smoke.

FileLoad | Launch

.../examples/nodes/dop/file/CacheToDisk.otl

This example shows how to use the File DOP to cache a simulation to disk and read it back in.

FLIP SolverLoad | Launch

.../examples/nodes/dop/flipsolver/DensityViscosity.otl

This example demonstrates two fluids with different densities and viscosities interacting with a solid object.

FLIP SolverLoad | Launch

.../examples/nodes/dop/flipsolver/FlipColorMix.otl

This example demonstrates the use of the Flip Solver to mix the colors of a red fluid with a blue fluid to form a purple fluid.

FLIP SolverLoad | Launch

.../examples/nodes/dop/flipsolver/FlipFluidWire.otl

This example demonstrates the use of the Flip Solver and the Fluid Force DOP. The Fluid Force DOP is used to apply a drag force on a wire object according to the motions of a flip fluid. The drag force is only applied at locations where fluid exists in the fluid object.

FLIP SolverLoad | Launch

.../examples/nodes/dop/flipsolver/VariableViscosity.otl

This example demonstrates interaction between three fluids of varying viscosity and a moving collision object.

Fluid ForceLoad | Launch

.../examples/nodes/dop/fluidforce/FluidWireInteraction.otl

This example demonstrates the use of the Fluid Force DOP. The Fluid Force DOP is used to apply a drag force on a wire object according to the motions of a fluid object. The drag force is only applied at locations where fluid exist in the fluid object.

Fluid ObjectLoad | Launch

.../examples/nodes/dop/fluidobject/BallInTank.otl

This example shows an RBD ball being thrown into a tank of liquid.

Fluid ObjectLoad | Launch

.../examples/nodes/dop/fluidobject/FillGlass.otl

Fills an RBD container with fluid that enters the simulation by being sourced from another RBD object.

Fluid ObjectLoad | Launch

.../examples/nodes/dop/fluidobject/FluidFeedback.otl

This example shows a ball falling into a tank with feedback. This couples the RBD simulation with the Fluid simulation, causing the ball to float rather than sink.

Fluid ObjectLoad | Launch

.../examples/nodes/dop/fluidobject/PaintedGrog.otl

This example creates a torus of paint which is dropped on the Grog character. The Grog character is then colored according to the paint that hits him. This also shows how to have additional color information tied to a fluid simulation.

Fluid ObjectLoad | Launch

.../examples/nodes/dop/fluidobject/RestartFluid.otl

This example shows how to extract part of a fluid simulation and use it to start up a new fluid simulation, possibly with different resolution, location, or size.

Fluid ObjectLoad | Launch

.../examples/nodes/dop/fluidobject/RiverBed.otl

A simple river bed has a fluid source and fluid sink set up so that liquid rushes down the river.

Fluid ObjectLoad | Launch

.../examples/nodes/dop/fluidobject/SourceAndSink.otl

An example of a two dimensional fluid sim. A source adds liquid to a curvy container and a sink at the bottom of the container prevents it from filling up.

Fluid ObjectLoad | Launch

.../examples/nodes/dop/fluidobject/VariableDrag.otl

This example shows how to vary the drag in a fluid simulation. It provides examples of using a specified field to be a high drag zone, of automatically applying drag only to the fluid surface, and of applying negative drag to an area to make the fluid more volatile.

Gas CalculateLoad | Launch

.../examples/nodes/dop/gascalculate/HotBox.otl

This example shows how to take any object with it’s volume representation and add it to the temperature field. You can change the temperature of the object in two ways: by adjusting the volume density value or by adjusting the Gas Calculate microsolver DOP’s source’s Pre-Multiply field.

Gas DiffuseLoad | Launch

.../examples/nodes/dop/gasdiffuse/DiffuseSmoke.otl

This example demonstrates how to diffuse the density of a smoke simulation using the Gas Diffuse DOP.

Gas Embed FluidLoad | Launch

.../examples/nodes/dop/gasembedfluid/CombinedSmoke.otl

In this example, two smoke volumes are merged together using a Gas Embed Fluid DOP and some feathering to help provide a smoother transition between the volumes.

Gas Net Fetch DataLoad | Launch

.../examples/nodes/dop/gasnetfetchdata/dopexample_gasnetfetchdata.otl

This example demonstrates the use of Gas Net Fetch Data to have two separate dop simulations exchange data.

Gas Particle To FieldLoad | Launch

.../examples/nodes/dop/gasparticletofield/TimelessGas.otl

This example demonstrates the use of gasParticleToField in Timeless mode.

Gas Surface TensionLoad | Launch

.../examples/nodes/dop/gassurfacetension/TeapotUnderTension.otl

This example creates a teapot shaped blob of liquid. It then uses surface tension forces to smooth the blob into a sphere.

Gas Up ResLoad | Launch

.../examples/nodes/dop/gasupres/UpresRetime.otl

This example demonstrates how the Up Res Solver can now be used to re-time an existing simulation. The benefit of this is that one can simply change the speed without affecting the look of the sim. On the up-res solver there is a tab called Time. The Time tab offers various controls to change the simulation’s speed.

Load | Launch

.../examples/nodes/dop/grassDeforms/grass.otl

This example simulates grass being pushed down by an RBD object. Fur Objects are used to represent the blades of grass and Wire Objects are used to simulate the motion. When a single Fur Object is used to represent the grass, neighbouring blades of grass will have similar motion. Additional objects with different stiffness values can be used to make the motion less uniform. When “Complex Mode” is enabled, two objects are used to represent the grass. The stiffness of each set of curves can be controlled by adjusting the “Angular Spring Constant” and “Linear Spring Constant” parameters on the corresponding Wire Objects.

Magnet ForceLoad | Launch

.../examples/nodes/dop/magnetforce/MagnetMetaballs.otl

This example demonstrates how to use the Magnet Force node on a group of metaballs to force the fragments of an object outwards at the moment of impact.

Magnet ForceLoad | Launch

.../examples/nodes/dop/magnetforce/SimpleMagnets.otl

This example demonstrates how the magnetforce DOP can be used with a pair of metaballs (one positive and one negative) to attract/repulse an RBD sphere.

Mask FieldLoad | Launch

.../examples/nodes/dop/mask/MaskedField.cmd

A Uniform Force is applied to a number of RBD Objects to demonstrate how the Mask Field can be used to define a region where the force will be applied.

Multiple SolverLoad | Launch

.../examples/nodes/dop/multisolver/SimpleMultiple.otl

This examples demonstrates how to use a Multiple Solver. In this example, the motion of an object is controlled by an RBD Solver while the geometry is modified by a SOP Solver.

Particle Fluid EmitterLoad | Launch

.../examples/nodes/dop/particlefluidemitter/DrainExample.otl

This example demonstrates the use of Stream Emission in a Particle Fluid Emitter. A stream of particles is emitted in to a bowl. This example also demonstrates how to combine emitters and Particle Fluid Sinks in the same simulation, since the fluid is allowed to drain out of the bowl, where it is removed by a sink.

Particle Fluid EmitterLoad | Launch

.../examples/nodes/dop/particlefluidemitter/VolumeSource.otl

This example demonstrates the use of a volume emitter to fill a container with fluid. The volume of the inside of a tank is specified as volume emission geometry, and particles are emitted randomly at points inside of this geometry for a specified number of frames.

Particle Fluid ObjectLoad | Launch

.../examples/nodes/dop/particlefluidobject/../particlefluidsolver/Buoyancy.otl

This example demonstrates how to couple the Particle Fluid with an RBD object so they both affect each other. The result is a buoyant sphere.

Particle Fluid ObjectLoad | Launch

.../examples/nodes/dop/particlefluidobject/../particlefluidsolver/GrogSplash.otl

This example demonstrates two Grogs being converted into particle fluids and merged into the same particle fluid solver. They are given initial velocities that lead to their inevitable collision.

Particle Fluid ObjectLoad | Launch

.../examples/nodes/dop/particlefluidobject/../particlefluidsolver/PopFlow.otl

This example demonstrates how to integrate a POP network with a particle fluid simulation, granting one the Total Artistic Control of POPs with the fluid dynamics of the particle fluid simulator.

Particle Fluid ObjectLoad | Launch

.../examples/nodes/dop/particlefluidobject/../particlefluidsolver/PressureExample.otl

This is a simple example demonstrating pressure-driven flow with no viscosity. This example also demonstrates the use of a constantly emitting source of particle fluid as well as how to surface the fluid using the Particle Fluid Surface SOP.

Particle Fluid ObjectLoad | Launch

.../examples/nodes/dop/particlefluidobject/../particlefluidsolver/ViscoelasticExample.otl

This example demonstrates the use of viscous and elastic forces in a particle-based fluid to generate viscoelastic fluid behaviour. The result is a fluid-like object that tends to resist deformation and retain its shape.

Particle Fluid ObjectLoad | Launch

.../examples/nodes/dop/particlefluidobject/../particlefluidsolver/ViscousFlow.otl

This example demonstrates highly viscous fluid flow using particle-based fluids. Fluids of this form could be used to simulate slowly-flowing fluids such as lava or mud.

Particle Fluid ObjectLoad | Launch

.../examples/nodes/dop/particlefluidobject/../particlefluidsolver/WorkflowExample.otl

This somewhat complicated example is meant to demonstrate a simple workflow for simulating, storing, surfacing and rendering a particle fluid simulation. Three geometry nodes in the example are named Step 1, Step 2 and Step 3 according to the order in which they are to be used. They write out particle geometry to disk, read the geometry in and surface it, and read the surfaced geometry from disk, respectively. The example also has shaders and a camera built in so that it can be easily rendered.

The fluid animated in this scene models a highly-elastic gelatin-like blob of fluid.

Particle Fluid SinkLoad | Launch

.../examples/nodes/dop/particlefluidsink/../particlefluidemitter/DrainExample.otl

This is another example to demonstrate how to use Particle Fluid Sinks in a simulation. This also demonstrates how to properly combine Particle Fluid Emitters with sinks in a simulation.

Particle Fluid SinkLoad | Launch

.../examples/nodes/dop/particlefluidsink/TankDrain.otl

This simple example demonstrates how to use a sink to drain particles from a simulation. A tank full of fluid with a hole in the bottom is set up. A sink is placed beneath the tank so that particles flowing out of the tank are removed from the simulation.

Particle Fluid SolverLoad | Launch

.../examples/nodes/dop/particlefluidsolver/Buoyancy.otl

This example demonstrates how to couple the Particle Fluid with an RBD object so they both affect each other. The result is a buoyant sphere.

Particle Fluid SolverLoad | Launch

.../examples/nodes/dop/particlefluidsolver/FluidGlass.otl

This example demonstrates how to get a smooth fluid stream to pour into a glass.

Particle Fluid SolverLoad | Launch

.../examples/nodes/dop/particlefluidsolver/GrogSplash.otl

This example demonstrates two Grogs being converted into particle fluids and merged into the same particle fluid solver. They are given initial velocities that lead to their inevitable collision.

Particle Fluid SolverLoad | Launch

.../examples/nodes/dop/particlefluidsolver/ParticlesAndCloth.otl

This example demonstrates how to have a particle system slide on contact with a live cloth simulation and then turn into a particle fluid when the particles leave the cloth.

Particle Fluid SolverLoad | Launch

.../examples/nodes/dop/particlefluidsolver/PopFlow.otl

This example demonstrates how to integrate a POP network with a particle fluid simulation, granting one the Total Artistic Control of POPs with the fluid dynamics of the particle fluid simulator.

Particle Fluid SolverLoad | Launch

.../examples/nodes/dop/particlefluidsolver/PressureExample.otl

This is a simple example demonstrating pressure-driven flow with no viscosity. This example also demonstrates the use of a constantly emitting source of particle fluid as well as how to surface the fluid using the Particle Fluid Surface SOP.

Particle Fluid SolverLoad | Launch

.../examples/nodes/dop/particlefluidsolver/ViscoelasticExample.otl

This example demonstrates the use of viscous and elastic forces in a particle-based fluid to generate viscoelastic fluid behaviour. The result is a fluid-like object that tends to resist deformation and retain its shape.

Particle Fluid SolverLoad | Launch

.../examples/nodes/dop/particlefluidsolver/ViscousFlow.otl

This example demonstrates highly viscous fluid flow using particle-based fluids. Fluids of this form could be used to simulate slowly-flowing fluids such as lava or mud.

Particle Fluid SolverLoad | Launch

.../examples/nodes/dop/particlefluidsolver/WorkflowExample.otl

This somewhat complicated example is meant to demonstrate a simple workflow for simulating, storing, surfacing and rendering a particle fluid simulation. Three geometry nodes in the example are named Step 1, Step 2 and Step 3 according to the order in which they are to be used. They write out particle geometry to disk, read the geometry in and surface it, and read the surfaced geometry from disk, respectively. The example also has shaders and a camera built in so that it can be easily rendered.

The fluid animated in this scene models a highly-elastic gelatin-like blob of fluid.

POP SolverLoad | Launch

.../examples/nodes/dop/popsolver/MatchShape.otl

This is an example of using the POP Solver with its Shape Matching capabilities. A POP Object is created from a polygonal teapot, and the POP Solver then applies forces to maintain this shape as the particles fall on a ground plane and are squished by an RBD Object.

Pyro SolverLoad | Launch

.../examples/nodes/dop/pyrosolver/BillowyTurbine.otl

This example uses the Pyro Solver and a Smoke Object which emits billowy smoke up through a turbine (an RBD Object). The blades of the turbine are created procedurally using Copy, Circle, and Align SOPs.

RBD Angular Spring ConstraintLoad | Launch

.../examples/nodes/dop/rbdangularspringconstraint/DampedHinge.otl

This example shows how to use the RBD Angular Spring Constraint to create a damped hinge.

RBD Angular Spring ConstraintLoad | Launch

.../examples/nodes/dop/rbdangularspringconstraint/SimpleRotationalConstraint.otl

This example demonstrates the use of an RBD Angular Spring Constraint.

RBD Auto FreezeLoad | Launch

.../examples/nodes/dop/rbdautofreeze/Stack.otl

Teapots are dropped every ten frames onto a ground plane. The RBD AutoFreeze DOP is used to detect and freeze the teapots that have come to rest, stabilizing and speeding up the simulation.

RBD Fractured ObjectLoad | Launch

.../examples/nodes/dop/rbdfracturedobject/StackedBricks.cmd

This example shows how to create a large number of RBD objects from a single SOP. It also shows how a velocity point attribute can be used to set the initial motion for the objects.

RBD Glue ObjectLoad | Launch

.../examples/nodes/dop/rbdglueobject/BlendSolverWithRBDGlue.otl

This example shows how to grab animated key frame data from an RBD Glue object and blend it into a simulation of a cube fragmenting into multiple pieces on impact.

RBD Glue ObjectLoad | Launch

.../examples/nodes/dop/rbdglueobject/BreakingRock.otl

This is an example of how to use the RBD Glue Object node to create an RBD object that automatically breaks apart on collision. It also demonstrates one technique for breaking a model into pieces appropriate for this sort of simulation.

RBD Glue ObjectLoad | Launch

.../examples/nodes/dop/rbdglueobject/ChoreographedBreakup.cmd

This example shows how one can control the break up of any glued object through the use of the RBD State node.

A torus, composed of spheres, is glued together. An additional sweep plane is defined. Any sphere which ends up on the wrong side of the sweep plane is broken off the torus and left to bounce on its own. This lets the break up of the torus to be controlled over many frames.

RBD Glue ObjectLoad | Launch

.../examples/nodes/dop/rbdglueobject/ChoreographedTubeBreakup.otl

This example shows how one can control the break up of any glued object through the use of the RBD State node.

In this version of the choreographed breakup example, a moving plane is used to choreograph the breakup of a fractured tube. As the plane passes each piece, it is allowed to break off from the rest of the tube.

RBD Glue ObjectLoad | Launch

.../examples/nodes/dop/rbdglueobject/ShatterGlass.cmd

This example uses an RBD projectile to shatter a piece of glass. The glass is made up of simple trangular shards glued together.

This example also demonstrates a situation where using volume based collision detection would not work, and so the objects are treated as infinitely thin surfaces when performing collision detection.

RBD Hinge ConstraintLoad | Launch

.../examples/nodes/dop/rbdhingeconstraint/Pendulum.otl

This example shows how to use the RBD Hinge Constraint to create a hinge joint between an RBD Object and a world space position or other RBD object.

RBD Keyframe ActiveLoad | Launch

.../examples/nodes/dop/rbdkeyactive/SimpleKeyActive.otl

This example uses the RBD Keyframe Active node to switch from a keyframed animation to an RBD Solver, and back to keyframed animation. This same animation could be created using a Switch Solver or Blend Solver, but this approach is simpler if the only requirement is switching from keyframed to simulated motion for a few RBD Objects.

RBD ObjectLoad | Launch

.../examples/nodes/dop/rbdobject/DeformingRBD.otl

This example demonstrates a rigid body dynamics simulation involving deforming geometry. A wobbling torus is dropped onto a ground plane.

RBD ObjectLoad | Launch

.../examples/nodes/dop/rbdobject/SimpleRBD.otl

This example demonstrates a simple rigid body dynamics simulation using the RBD Object DOP. A single sphere is dropped onto a ground plane.

RBD Pin ConstraintLoad | Launch

.../examples/nodes/dop/rbdpinconstraint/Chain.otl

This sample creates a chain of RBD objects connected to each other using constraints.

RBD Pin ConstraintLoad | Launch

.../examples/nodes/dop/rbdpinconstraint/Chainlinks.otl

In this chain simulation, the individual chain links react to one another in an RBD sim.

RBD Pin ConstraintLoad | Launch

.../examples/nodes/dop/rbdpinconstraint/Pendulum.cmd

This example shows how to use the RBD Pin Constraint to pin RBD Objects to world space positions or other RBD objects.

RBD Point ObjectLoad | Launch

.../examples/nodes/dop/rbdpointobject/popswithrbdcollision.otl

Shows an RBD Simulation being attatched to a POP simulation to provide RBD style collisions to POPs.

RBD SolverLoad | Launch

.../examples/nodes/dop/rbdsolver/DegreesOfFreedom.cmd

This example demonstrates the use of the Constraint Type parameter on the RBD Constraint node. This parameter controls the number of degrees of freedom the constrained object has.

RBD SolverLoad | Launch

.../examples/nodes/dop/rbdsolver/PaddleWheel.cmd

This example combines a number of elements and features of RBD to create a simulation of a paddle wheel being hit by a large number of falling objects.

This example demonstrates features such as resolving penetrations, gluing simple objects together to create more complex objects, grouping of objects, and constraints.

RBD Spring ConstraintLoad | Launch

.../examples/nodes/dop/rbdspringconstraint/Weights.otl

This example shows how to use the RBD Spring Constraint to create springs that will break once a threshold force or length is exceeded.

RBD StateLoad | Launch

.../examples/nodes/dop/rbdstate/InheritVelocity.otl

This example demonstrates the use of the RBD State node to inherit velocity from movement and collision with other objects in a glued RBD fracture simulation.

RBD VisualizationLoad | Launch

.../examples/nodes/dop/rbdvisualization/Simple.otl

This example demonstrates a simple rigid body dynamics simulation using the RBD Object DOP. A single sphere is dropped onto a ground plane. It adds in an RBD Visualization DOP to show the impact forces that are applied as a result of the collision.

Reference Frame ForceLoad | Launch

.../examples/nodes/dop/referenceframeforce/ReferenceFrameForce.otl

An RBD vase filled with water performs the water simulation in the vase’s reference frame.

Ripple SolverLoad | Launch

.../examples/nodes/dop/ripplesolver/RippleGrid.otl

This example demonstrates how to use the Ripple Solver and Ripple Object nodes. Bulge SOPs are used to deform a grid to create initial geometry and rest geometry for the Ripple Object which is then piped into the Ripple Solver.

Script SolverLoad | Launch

.../examples/nodes/dop/scriptsolver/Freeze.otl

This example uses the Script Solver to remove objects from the simulation once they fall below a certain threshold velocity. This technique can be used to speed up simulations that are known to settle down to a static arrangement.

Script SolverLoad | Launch

.../examples/nodes/dop/scriptsolver/SumImpacts.otl

This example uses the Script Solver and SOP Solver to change the color of RBD objects based on the total impact energy applied to the object at each timestep.

Smoke ObjectLoad | Launch

.../examples/nodes/dop/smokeobject/2dfluid.otl

Demonstrates exporting a 2d fluid into COPs where it can be saved to disk as a sequence of image files to then be used as texture maps, displacement maps, etc.

Smoke ObjectLoad | Launch

.../examples/nodes/dop/smokeobject/DelayedSmokeHandoff.otl

This example shows a way to turn an RBD into smoke a certain number of frames after the RBD object has hit something.

Smoke ObjectLoad | Launch

.../examples/nodes/dop/smokeobject/OpenCL.otl

Demonstrates a simple Open CL accelerated smoke sim that can be used as a starting point for building optimized GPU accelerated smoke sims. See the Use OpenCL parameter on the Smoke solver.

For fastest speeds, the system needs to minimize copying to and from the video card. This example demonstrates several methods for minimizing copying.

  • Turns off DOPs caching. Caching requires copying all the fields every frame. Useful if you want to scrub and inspect random fields, not if you want maximum speed.

  • Only imports density to SOPs. This means copying only one field from the GPU to CPU each frame.

  • Saves to disk in background. This gives you the best throughput.

  • Uses a plain Smoke solver.

  • Displaying the simulated output in the viewport requires a GPU → CPU → GPU round trip, but this is required in general to support simulating on a card other than your display card.

    Smoke ObjectLoad | Launch

    .../examples/nodes/dop/smokeobject/RBDtoSmokeHandoff.otl

    This example shows a way to turn an RBD object into smoke. It uses multiple different colored smoke fields inside the same smoke object.

    Smoke ObjectLoad | Launch

    .../examples/nodes/dop/smokeobject/RestField.otl

    Demonstrates attaching a rest field to a smoke simulation to allow rendered textures to stick to the smoke.

    Smoke ObjectLoad | Launch

    .../examples/nodes/dop/smokeobject/SourceVorticlesAndCollision.otl

    This example demonstrates a simple smoke system using a source, keyframed RBD collision objects, and vorticles.

    Smoke ObjectLoad | Launch

    .../examples/nodes/dop/smokeobject/TwoColourFire.otl

    Two different colors of flame are present inside the same fire box. The purple flame is the standard fire, but the green flame is run by a separate type of green fuel added to the scene.

    Smoke ObjectLoad | Launch

    .../examples/nodes/dop/smokeobject/rbdsmokesource.otl

    A ghostly tetrahedron bounces around a box, its presense shown by its continuous emission of smoke.

    SOP SolverLoad | Launch

    .../examples/nodes/dop/sopsolver/DentingWithPops.cmd

    This example combines a number of important DOPs concepts.

  • First, it uses both POP Solver and RBD Solver objects interacting with each other in a bidiretional manner. The RBD object affects the particles, and the particles affect the RBD object.

  • Second, the RBD object atually uses a multi-solver to combine an RBD Solver with a SOP Solver. The RBD Solver controls the motion of the overall object, while the SOP Solver performs the denting of the geometry.

  • Third, the SOP Solver extracts impact information from the RBD Solver to perform the denting. It extracts this information using DOP expression functions.

  • The end result is a simulation of a torus that is bombarded by a stream of particles. The particles bounce off the torus, and also cause the torus to move. In addition, each particle collision causes a slight denting of the torus.

    SOP SolverLoad | Launch

    .../examples/nodes/dop/sopsolver/VisualizeImpacts.otl

    An example that shows how you can visualize impact data in an RBD simulation by using a SOP Solver to add custom guide geometry to the RBD Objects.

    This example has three toruses falling on a grid with green lines showing the position and magnitude of impacts. The force visualization is added as ancillary geometry data to the actual toruses, so the RBD Solver is entirely unaware of the effect. The SOP Solver could also be used as an independent SOP network to extract impact visualization from an RBD Object.

    Switch SolverLoad | Launch

    .../examples/nodes/dop/switchsolver/SimpleSwitch.otl

    This examples demonstrates the use of a Switch Solver. It consists of a Cloth Object which is switched to behave like an RBD Object half way through the simulation.

    Voronoi Fracture SolverLoad | Launch

    .../examples/nodes/dop/voronoifracturesolver/FractureExamples.otl

    This example actually includes eight examples of ways that you can use voronoi fracturing in Houdini. In particular, it shows how you can use the Voronoi Fracture Solver and the Voronoi Fracture Configure Object nodes in your fracture simulations. Turn on the display flags for these examples one at a time to play the animation and dive down into each example to examine the setup.

    Vortex ForceLoad | Launch

    .../examples/nodes/dop/vortexforce/SimpleVortex.otl

    This example uses a few balls to visualize the force generated by a Vortex Force DOP.

    Wind ForceLoad | Launch

    .../examples/nodes/dop/windforce/TurbulentSmoke.otl

    This example illustrates how the Wind DOP can be used to add turbulence to a fluid simulation.

    Wire Glue ConstraintLoad | Launch

    .../examples/nodes/dop/wireglueconstraint/AnimatedSkin.otl

    This example shows how the Wire Glue Constraint DOP can constrain a wire object to animated geometry.

    Wire ObjectLoad | Launch

    .../examples/nodes/dop/wireobject/CompressedSpring.otl

    This example demonstrates how an initial pose may be specified for a wire object.

    Wire SolverLoad | Launch

    .../examples/nodes/dop/wiresolver/BeadCurtain.otl

    This example uses the Wire Solver to simulate a bead curtain. A stream of RBD balls are thrown at the curtain, and through feedback the curtain and balls are mutually affected by the collisions.

    Wire SolverLoad | Launch

    .../examples/nodes/dop/wiresolver/BendingTree.otl

    This example shows how to use the Wire Solver to simulate a flexible tree built with the LSystem SOP.

    Wire SolverLoad | Launch

    .../examples/nodes/dop/wiresolver/BreakWire.otl

    This example demonstrates how to break wire constraints on a per point basis. The wire solver is set up to constrain certain points if it finds an attribute named 'pintoanimation'.

    Wire SolverLoad | Launch

    .../examples/nodes/dop/wiresolver/CurveAdvection.otl

    This example demonstrates how to advect curves based on a pyro simulation. A VOP SOP is used to sample the velocity from the volume and apply it to a wire object.

    Wire SolverLoad | Launch

    .../examples/nodes/dop/wiresolver/Footprints.otl

    This example shows how to use the Wire Solver to simulate grass that gets permanently crushed once stepped upon.

    Wire SolverLoad | Launch

    .../examples/nodes/dop/wiresolver/Pendulum.otl

    This example shows how to mutually affect an object at the constraint point and the object at the bob of the pendulum.