Articles

How to Simulate a Chocolate Fountain in Houdini

ARTILABZ™

ARTILABZ™ gives you unlimited access to all Houdini courses, 3D assets, simulation files, textures and tools. updated every month.

Everything You Need to master Houdini.

01

Premium Houdini Tutorials

Full access to every course — fluid simulation, procedural FX, brand visuals and more.

02

Monthly New Content

Fresh tutorials and assets added every month — your library grows with you.

03

Instant Access to Everything

The moment you join, the full library is yours — no drip-feed, no waiting.

04

Project Files Included

Every tutorial comes with the full Houdini scene file — open every node, learn every detail.

FROM 14.99€/MONTH

Includes one exclusive complete course

The exclusive course — a full production tutorial you won't find anywhere else, never sold alone.

Best Seller
Most Loved
Tutorial Camera Rig

ADVANCED CUSTOM CAMERA RIG

ANIMATION · CONSTRAINTS · CUSTOM UI

BUILD A FULLY CUSTOM CONSTRAINT-BASED CAMERA RIG IN HOUDINI WITH A CUSTOM UI PANEL. DESIGN FLEXIBLE SYSTEMS FOR PRECISE, CINEMATIC CAMERA ANIMATION ON ANY PROJECT.

€29.99

Freebies
Free Studio HDRI Pack box by Artivoxa showing 60 studio lighting setups with softboxes wrapped around the packaging

Studio HDRI Collection

ASSETS · EXR & HDR · 60 HDRIS

DOWNLOAD 60 STUDIO HDRIS CAPTURED IN A REAL PHOTO STUDIO. LIGHT YOUR PRODUCT AND BEAUTY RENDERS LIKE A PHOTOGRAPHER — SOFTBOX, LANTERN, STRIP AND GRID SETUPS, READY FOR ANY RENDERER.

FREE

How to Simulate a Chocolate Fountain in Houdini

To simulate a chocolate fountain in Houdini, treat it as a controlled product-visualization effect rather than a single, unrestricted liquid simulation. The central rise, tier overflows, falling curtains and basin each have different requirements, so they should be designed, sourced and diagnosed separately. A convincing result depends as much on scene scale, collision proxies and source balance as it does on viscosity or particle resolution.

This advanced workflow covers reference analysis, FLIP sourcing, viscous-fluid settings, collision troubleshooting, particle-to-surface meshing, chocolate shading and production caching. The objective is not merely plausible fluid motion. It is a stable chocolate fountain animation with coherent sheets, readable highlights and enough procedural control to survive camera, timing and design revisions.

Define the physical and visual target

Viewers recognize a chocolate fountain through a short sequence of connected actions: chocolate rises around a central column, spreads across the crown, gathers at each tier, falls in broad curtains and merges into a glossy basin. If any transition appears disconnected, the effect can look like several emitters placed near one another rather than a circulating machine.

Break the reference into distinct flow regions before building the network:

  • Central rise: A stable, dense stream establishes the scale and energy of the fountain. It needs surface movement, but it should not resemble a rigid tube.
  • Upper transition: The rising stream changes direction and spreads toward the first lip. This transition should read as one continuous mass.
  • Tier coating and overflow: Chocolate accumulates briefly before leaving an edge. Perfectly even overflow looks procedural; uncontrolled breakup looks watery.
  • Falling curtains: Broad sheets provide the characteristic silhouette. Folds, narrow gaps and occasional drips are more useful than indiscriminate turbulence.
  • Basin interaction: The curtains should merge into a shallow pool without excessive spray, exposed gaps or a deep impact crater.
  • Return path: The visible system must appear to recirculate, even if the actual pump intake is represented by a hidden sink and replenished source.

Not every region needs identical physical treatment. Tier contact, falling sheets and basin impacts usually benefit most from a Houdini FLIP simulation because collisions and gravity shape their motion. The central rise may be more reliable when supported by a shaped source, guide velocity or narrow containment region. Tiny hero drips can be generated from the approved cache as a secondary pass instead of destabilizing the primary flow.

Design for the final camera

Lock a provisional camera and focal length before selecting particle separation. In a close-up, the mesh may need to preserve stretched drips, rounded sheet edges and contact at the tier lips. In a wider product shot, the silhouette and movement of broad highlights matter more than sub-pixel droplets.

Record a few practical targets from the reference: apparent curtain thickness, degree of edge breakup, ripple scale, splash level and the steadiness of the pump-driven flow. Also note whether the chocolate appears warm and fluid or cool and resistant. These observations are more useful than searching for one nominal viscosity value, because the result also depends on scale, source speed, gravity, solver implementation and shot timing.

Use depth of field and motion blur only after the flow works without them. Both can support the photography, but neither will repair incorrect sheet thickness, gaps between flow regions or collisions that fail at the silhouette.

Prepare the fountain and simulation scene

A controllable viscous fluid simulation begins with scale and geometry, not solver parameters. Establish real-world dimensions before tuning viscosity, surface tension or source velocity. Changing scale later alters travel time, gravity-driven acceleration, collision thickness and the apparent size of every fluid feature.

Separate render geometry from collision proxies

Imported CAD and detailed product models often contain tiny bevels, overlapping shells, internal faces and narrow manufacturing gaps. Those features may be appropriate for rendering but can create noisy or incomplete collision fields. Build simplified proxies for the center column, crown, tiers and basin while retaining the surfaces that actually direct the chocolate.

Collision proxies should have consistent normals, sufficient wall thickness and no unintended openings. A tier usually needs a clean upper plate, a resolved rim and enough underside geometry to create an unambiguous signed distance field. The basin needs a continuous interior and walls thick enough to prevent particles from crossing the collision field between updates.

Inspect the collision volume directly rather than assuming the polygon model converted correctly. Pay particular attention to thin lips, narrow channels and seams between parts. If particles hover above a tier or pass through it, collision resolution, proxy thickness and field construction should be checked before changing the material behavior.

Keep set dressing outside the solver unless it can contact the liquid. Supporting ingredients and packaging can come from existing models or suitable food and beverage asset libraries, but simulation colliders should remain purpose-built and as simple as the interaction permits.

Create dedicated sources and sinks

Do not source from the complete fountain assembly. Build separate source geometry for the central rise, designed tier assistance and any secondary drips. A central source might be a tube, ring or narrow volume around the column. Tier sources, if required, can be shallow annular bands placed just above the corresponding plates.

Dedicated source regions make emission rate, activation, velocity and masking independently adjustable. They also reveal whether a failure originates in the central stream, a tier transition or the basin. Keep each source clear of collision surfaces at emission time; source-collider overlap can create trapped particles, pressure spikes and immediate splashing.

A real fountain recirculates, but fully simulating its concealed pump is rarely useful for product CGI. A more controllable setup removes fluid in a hidden intake region and replenishes it at the central source. Balance the source and sink rates over the settled portion of the shot. If more fluid enters than leaves, the basin will rise continuously and eventually alter every overflow.

Use source velocity to establish the main direction of travel. The central source needs an upward profile aligned with the column, while a tier-assistance source may use gentle outward or downward motion. Avoid hard velocity boundaries: abrupt changes in a mask can create visible kinks and accelerations.

Plan resolution and pre-roll

Choose particle separation from the thinnest feature that must survive in the final image, not the smallest bevel in the model. The narrowest visible curtain or central stream will usually set the requirement. Collision voxel size must also resolve the guiding edges; fine fluid particles cannot interact correctly with a coarse collision field that has already erased the tier lip.

Begin with a low-resolution setup that preserves the intended proportions. Use it to approve source balance, travel paths, basin level and broad timing. Then refine particle separation, collision fields and solver accuracy. Low-resolution caches are suitable for composition and motion tests, but not for judging final sheet continuity or mesh quality.

Include enough pre-roll for the fountain to approach a stable operating state. The source, sink and basin level need time to settle, and the tiers must develop continuous coatings before the hero frame. Keep pre-roll in the cache plan rather than trimming it informally after simulation; changing the initial state can alter the visible flow.

Build the Houdini FLIP simulation

The main FLIP network should produce the large, continuous forms: central rise, tier coating, curtains and basin flow. Secondary spray and decorative drips can remain separate. This division makes the primary cache more stable and allows small details to change without a full resimulation.

Establish the central rise

Source particles or a fluid volume around the central nozzle and assign a shaped upward velocity. A uniform profile is easy to control but can look mechanical, so introduce restrained radial or temporal variation without allowing the stream to lose its core. The source should be wide enough to survive the current particle resolution and narrow enough to avoid intersecting nearby colliders.

If the rise must follow a column, a smooth guide velocity or constrained source region can maintain its path. Use the weakest intervention that produces the required silhouette. Strong guides may suppress natural surface movement, create a rigid tube or cause a visible change where the influence ends.

At the crown, let collision geometry redirect the fluid where possible. The stream should spread, slow and accumulate before overflowing. If it strikes the cap with excessive momentum, it will splash outward regardless of high viscosity. Reduce or reshape the incoming velocity before trying to damp the consequence elsewhere.

Form coherent tier overflows

Each tier needs enough fluid coverage to feed a continuous edge. A sheet that repeatedly opens and closes may be under-sourced, below the resolvable thickness, moving too quickly or leaving a poorly represented collider. Inspect the particles and collision field together before choosing a correction.

For highly controlled product shots, a small supplemental source near a hidden section of a tier can stabilize the flow. Mask it carefully so it reinforces the existing coating rather than appearing as an independent emitter. The visible continuity matters more than enforcing a fully coupled hydraulic model where the camera cannot verify it.

Broad curtains should remain the primary shape. Add irregularity through modest variations in source distribution, lip geometry or localized velocity—not high-frequency forces throughout the fluid. Large turbulent disturbances tend to turn viscous chocolate into water-like spray and make the silhouette unstable from frame to frame.

Tune viscosity, surface tension and temporal accuracy

Viscosity controls resistance to deformation, but it should be evaluated as part of the complete system. Too little produces thin, energetic streams and rapid splashing. Too much causes piling at the nozzle, sluggish spreading and masses that appear almost solid. If the result is wrong only at one transition, changing the global viscosity may damage regions that already work.

Where the chosen Houdini workflow supports a viscosity attribute, regional values can help distinguish a stable core from thinner edge behavior. Keep transitions smooth and document such adjustments as art direction rather than literal material measurement.

Surface tension can round streams, close small gaps and preserve sheet edges. Excessive values pull broad curtains into ropes, suppress useful folds and make fluid cling to corners. Use it to support cohesion, not as a substitute for adequate particle coverage or correct source thickness.

Increase solver substeps when fast particles cross narrow gaps, reverse direction at a lip or tunnel through a collider between frames. Particle resolution and temporal resolution solve different problems: adding particles will not reliably repair under-sampled motion, while more substeps cannot restore a tier edge missing from the collision field.

Reseeding and particle-density controls also require care. Insufficient coverage creates holes and unstable reconstruction; aggressive reseeding can introduce surface chatter or make thin sheets appear to boil. Evaluate density in the specific regions that will be meshed rather than judging only the total particle count.

Symptom Inspect first Likely correction
Central stream breaks before the crown Source width, velocity profile, particle separation and cohesion Thicken or stabilize the source; refine particles if the stream is below the resolvable scale
Chocolate passes through a tier Collision SDF, proxy thickness and substeps Repair or refine the collision field; add temporal accuracy if tunnelling occurs between frames
Overflow forms a rigid lump Viscosity, source volume and scene scale Reduce resistance or incoming volume, then verify that scale and gravity are coherent
Curtain becomes water-like spray Source momentum, impact angle and viscosity Reduce unnecessary energy and disturbance before increasing material resistance
Fluid climbs or sticks unnaturally Collision normals, guides and adhesion-like constraints Correct the signed distance field and remove excessive guiding or attachment behavior
Basin level rises throughout the shot Source-to-sink balance Reduce emission, increase hidden removal or enlarge the available collection volume

Diagnose the simulation before meshing

Always inspect the particle cache before treating a defect as a surface problem. Display velocity, source groups, collision proximity and particle density at the crown, tier lips and basin impacts. A mesh cannot reconstruct motion or coverage that does not exist in the simulation.

When a sheet tears at an edge, determine whether the particles separate physically or only appear discontinuous after reconstruction. If the particle sheet is already broken, review source coverage, edge geometry, speed, viscosity and surface tension. If particles remain coherent, the meshing radius or voxel filtering is probably eroding the feature.

For leaks, visualize the collider rather than only the render mesh. A detailed polygon tier may produce a coarse or open SDF. Simplifying the proxy is often more reliable than increasing global collision resolution around unnecessary manufacturing detail.

Excessive splashing normally indicates excess energy. Review launch velocity, drop height, impact direction and localized forces. Increasing viscosity may reduce spray, but it can also make tier flow unnaturally slow. Correcting the source or collision transition usually provides more targeted control.

If the entire fountain becomes a blob, compare the source volume, sink rate and particle motion. Continuous overfilling can resemble excessive viscosity. If the particles look correct but nearby streams merge only after surfacing, the problem belongs to reconstruction rather than FLIP.

Convert particles into a smooth chocolate surface

Cache the approved particles before meshing. Houdini’s Particle Fluid Surface workflow or a custom VDB pipeline can then be adjusted without rerunning the solver. Preserve velocity and any region, source or age attributes needed for motion blur, filtering and secondary effects.

Control reconstruction scale

The relationship between particle spacing, particle influence radius and voxel size determines whether the surface is continuous or swollen. An influence radius that is too small produces holes, grains and disconnected islands. A radius that is too large merges nearby curtains, fills deliberate gaps and rounds away the edges that identify the chocolate flow.

Build the initial VDB fluid surface at a resolution capable of representing the approved sheet thickness. Apply filtering conservatively, then convert to polygons. Higher voxel resolution cannot recover details already removed by an oversized influence radius or aggressive smoothing.

Inspect particles, the intermediate volume and the polygon mesh together. Remove isolated particles and components that do not contribute to the shot, but retain coherent edge drips that affect the silhouette or specular highlights. Distance masks can prevent fluid close to the fountain hardware from bridging across narrow gaps during reconstruction.

Preserve sheets and rounded edges

Thin curtains are especially vulnerable to erosion and smoothing. A global filter strong enough to clean the basin may destroy a narrow overflow. Use separate meshing passes or attribute-based masks when broad pools and delicate sheets need different treatment, then combine the results without creating visible seams.

Judge the surface through its highlights as well as its silhouette. Particle noise can break a reflection into flickering fragments even when the outline appears acceptable. Excessive smoothing creates the opposite problem: an inflated, featureless surface with broad synthetic highlights.

Do not use heavy smoothing to conceal unstable particles. If a broad curtain remains lumpy, revisit particle coverage, reseeding and collision behavior. Surface processing should refine a valid simulation, not replace missing fluid structure.

Cache the approved surface separately from the particle simulation. This creates a clear rollback point and lets look development adjust filtering, normals, polygon density and material assignments without invalidating the FLIP cache.

Shade and light the chocolate

A convincing chocolate shader is usually dark brown rather than neutral black. Its form is communicated primarily through reflections, so base color, roughness, mesh quality and lighting must be evaluated together. Making the material darker will not repair plastic-looking highlights or a noisy surface.

Build the material around reflection shape

Start with a saturated deep-brown base and a glossy but imperfect specular response. Broad highlights should describe the central rise, rounded tier coatings and folds in the curtains. Introduce restrained roughness or color variation to prevent an immaculate lacquered appearance, but avoid high-frequency noise that makes the chocolate look dusty or granular.

Variation can be driven by position, curvature, flow regions or custom attributes carried from the simulation. A thin falling sheet may support a cleaner directional highlight than the basin, where folds and overlapping flow break the reflection. Keep these differences subtle enough to remain part of one material.

Treat chocolate as primarily opaque unless the reference clearly shows transmission. Carefully controlled subsurface or transmission effects can soften thin areas, but excessive transparency makes the fountain resemble syrup, glass or colored water.

Inspect normals and polygon quality before increasing shader complexity. Crawling highlights often come from lumpy reconstruction, changing topology or faceted normals. Roughness can soften the artifact but rarely eliminates its underlying cause.

Light for readable flow

Large, soft sources and shaped reflection cards are effective because they create continuous highlights across curved fluid forms. Position them so the central rise, tier lips and falling sheets receive distinct reflection shapes. Lighting the fountain too evenly can flatten the flow; small, hard sources may exaggerate every meshing defect.

Separate the chocolate from the fountain body through value, roughness and reflection width. Metal, ceramic or plastic tiers should not share the same dark values and highlight shapes as the fluid. The contrast between materials helps establish both scale and contact.

A moderate focal length generally preserves controlled product proportions better than an extreme wide angle, although the reference should decide the camera. Test motion blur at delivery resolution. Enough blur can support continuous movement, but too much erases thin curtains and hides collision errors. Depth of field should guide attention without obscuring contact points that the shot needs to communicate.

Make the setup production-ready

A production-ready fountain is an editable system, not simply the most computationally expensive simulation. Expose a focused set of controls and keep art-direction parameters distinct from technical safeguards.

  • Motion controls: source rate, upward velocity, timing offsets, guide strength and secondary-drip intensity.
  • Material-behavior controls: viscosity, surface tension and controlled damping.
  • Technical controls: particle separation, substeps, reseeding and collision resolution.
  • Surface controls: influence radius, voxel size, filtering, smoothing and region masks.

Promoted controls should have a clear visual purpose and sensible dependencies. For example, changing particle separation may require corresponding updates to collision and meshing resolution. Do not present solver-stability settings as casual look-development sliders if changing them invalidates approved behavior.

Cache, version and retime deliberately

Cache the workflow in stages: prepared sources and colliders, FLIP particles, reconstructed surface and render-specific geometry. Record the scene or shot identifier, setup version, particle separation, substeps, source timing, viscosity treatment, frame range and meshing settings with each approved cache.

Never overwrite an approved particle cache when testing a new source rate or material response. A new surface version can be generated from the same particles when only reconstruction changes, and shader revisions should continue to use the approved surface.

If timing needs adjustment, retime the particle cache before final surfacing when practical. Preserve velocity and use interpolation suitable for moving particles; simple frame duplication creates stepping, while aggressive interpolation can alter collisions or thin-sheet continuity. Reinspect the retimed particles and mesh at tier contacts because those regions expose interpolation errors quickly.

For a repeating presentation, avoid assuming that two arbitrary settled frames will form a seamless loop. Match basin level and broad flow state, then use a controlled transition or hide the loop point through editing. Secondary drips are often the most obvious source of discontinuity and may need separate timing.

Approve the result from the shot camera

Use clay previews to approve the central rise, tier coverage, curtain continuity and basin behavior before final shading. Then review the cached mesh under the actual reflection setup, motion blur and depth of field. A fluid surface that looks acceptable in an unrestricted viewport may still fail when a thin sheet crosses the product silhouette or a broken highlight makes continuous chocolate appear disconnected.

Preserve useful render separation for the fountain body, chocolate, supports and background. Depending on the pipeline, retain material masks, object IDs, holdouts, depth and velocity data. The final measure of the workflow is not particle count or solver complexity, but whether it produces a stable, controllable chocolate fountain that remains convincing through simulation, meshing, look development and shot revisions.

— FOREVER FREE —

Free Studio HDRI Pack box by Artivoxa showing 60 studio lighting setups with softboxes wrapped around the packaging
  • Blender
  • Cinema 4D
  • Houdini
  • Maya
  • 3ds Max
  • Unreal
  • Redshift
  • Octane
  • Karma
  • Cycles
  • Arnold
  • V-Ray
  • Corona

60 studio lighting HDRIs in one free pack — softboxes, lanterns, strip boxes, grids, top-light and three-point setups, all shot in a real photo studio.