Photorealistic olive oil depends on more than a high-resolution fluid solve. The pour must have convincing scale, momentum and cohesion; its mesh must preserve thin connections; and the golden body color must come from transmission and absorption rather than opaque yellow shading. Glass thickness, controlled reflections and a consistent color pipeline are equally important. This advanced workflow for Olive Oil Pour CGI in Houdini covers shot planning, production geometry, FLIP setup, viscosity and surface-tension decisions, liquid meshing, nested transparent materials, Karma lighting and final troubleshooting. It also explains where physical simulation is useful, where art direction should take over, and how to structure caches so that changes to the bottle, label or lighting do not invalidate an approved fluid result.
Plan the Pour Before Building the Simulation
Start with a shot specification rather than a solver preset. The bottle motion, camera, receiving surface, final frame range and required delivery resolution determine which fluid details must be simulated and which can be simplified. A physically plausible pour is of limited value if it misses the glass, hides the label or breaks at the hero frame.
Define the action and hero frames
Describe the shot as a sequence of measurable events: the bottle begins to tilt, oil reaches the neck, the stream exits, it connects with the receiving surface, the liquid accumulates, and the bottle stops or leaves the frame. Record the approximate pour duration, bottle angle, opening diameter, target liquid volume and intended impact point. Identify the frames on which the stream first forms, reaches maximum continuity, begins to break and makes contact.
This breakdown exposes the real production requirements. A continuous advertising pour may need a stable source and carefully guided trajectory, while a short macro shot may depend on one stretched filament and a convincing meniscus. Not every frame needs the same simulation or render quality, but every visible transition must remain temporally coherent.
Lock the camera early enough to evaluate the fluid from the delivery perspective. Lens choice and camera distance alter the apparent stream thickness, fall distance and bottle proportions. A low product angle may hide the impact but emphasize the bottle silhouette; a close three-quarter view can make neck adhesion, glass refraction and thin-stream breakup critical. Define the sensor or aperture convention, focal length, focus distance, framing and output resolution before committing to a final FLIP cache.
Analyze reference by visual cue
Use footage and stills to separate the properties of olive oil from those of generic water. Look for stream taper, the amount of visible breakup, the delayed response after impact, residue around the bottle lip and the way a shallow pool spreads. Olive oil is viscous relative to water, but it should still accelerate under gravity, stretch and fold. A uniformly slow cylindrical strand usually looks more synthetic than a stream with controlled changes in thickness.
- Exit behavior: Observe where the liquid detaches from the lip and whether it briefly follows the rim.
- Stream behavior: Track continuity, taper, lateral motion and the transition from a broad ribbon to a narrow strand.
- Impact behavior: Look for mounding, spreading, folding, rim adhesion and secondary droplets.
- Optical behavior: Compare the pale color of thin sections with the deeper amber response of thicker liquid.
- Product behavior: Note label orientation, bottle tilt and the reflections that define the package without obscuring the brand.
Decide whether the shot should be fully simulated or built as a hybrid. FLIP is valuable when the stream must collide, accumulate and generate naturally evolving contact detail. Curves, modeled droplets and guided velocity fields offer tighter control over timing and silhouette. Commercial work often benefits from a hybrid: simulate the impact and broad motion, then use restrained procedural or modeled elements for a hero filament, lip residue or droplet that must occupy an exact position.
Prepare Bottle, Glass and Simulation Geometry
Real-world scale is a solver input, not just a modeling preference. Gravity, particle separation, collision thickness, source velocity and viscosity all operate in relation to scene dimensions. Establish the bottle height, neck diameter, mouth opening, receiving vessel dimensions and expected oil depth from reference, then maintain those relationships through simulation and rendering.
Apply object transforms before generating source or collision volumes. Non-uniform object scaling makes effective voxel and collision dimensions harder to interpret. Inspect normals, remove accidental interior faces and confirm that openings intended to release fluid are genuinely open. Where the solver expects a closed boundary, create a dedicated watertight proxy instead of compromising the render asset.
Separate geometry by purpose
Do not use one mesh indiscriminately for rendering, sourcing and collisions. The hero bottle may contain bevels, embossed details, label relief and physically modeled wall thickness, while the fluid solver often performs better with a simpler closed collision shell. Maintain separate streams or assets for:
- hero bottle, glass, cap and label geometry;
- low-complexity collision proxies;
- the source region and its velocity field;
- interior liquid used to feed the pour;
- lighting and camera proxies for fast look development.
The bottle neck and lip deserve particular attention. Their opening diameter controls the initial stream width, while the inner neck and rim influence visible attachment and residue. If the camera sees into the mouth, model enough interior geometry to support both collision and refraction. A source that begins as an exposed cylinder outside the bottle often reveals itself through an abrupt origin or a hollow-looking stream.
The receiving vessel needs an interior cavity and credible wall and base thickness when refraction is visible. A single surface cannot reproduce the same rim highlights, edge distortion or internal paths as a modeled dielectric volume. Keep the label, cap and seals separate from the glass so their shading and visibility can be adjusted without changing the bottle material. This asset discipline is also central to broader luxury food packaging CGI, where brand legibility and transparent materials must be controlled independently.
Choose an appropriate source strategy
There are three practical ways to initiate the pour, each with different costs and controls:
| Source strategy | Best use | Main trade-off |
|---|---|---|
| Simulated interior liquid | Visible sloshing, natural onset and complex bottle motion | Higher cost and more difficult control inside a narrow neck |
| Volume source at the opening | Stable product pours with precise timing and width | Requires careful velocity and bottle-motion matching to avoid an artificial origin |
| Hybrid reservoir and emitter | Shots needing some interior response but a controlled external stream | The transition between simulated and emitted regions must remain hidden and continuous |
A full bottle simulation is not automatically more convincing. If the interior liquid is mostly hidden, a controlled source near the mouth can reduce iteration time and provide a more repeatable landing point. Whichever method is used, source enough depth behind the opening to prevent the stream from appearing empty or switching off abruptly.
Build a Stable Viscous FLIP Pour
The purpose of a Houdini olive oil simulation is not to maximize viscosity. It is to produce a cohesive stream that retains fluid acceleration, stretching and contact behavior. Viscosity, surface tension, scale, particle resolution, source velocity and substeps must be evaluated together.
Resolve the source and collisions
Match particle separation to the smallest important feature, usually the narrow stream near the mouth or the bridge at impact. A finer surface mesh cannot reconstruct a filament that was never represented by enough particles. The neck walls and receiving glass must also resolve at the collision voxel scale; otherwise, thin walls may disappear intermittently or permit particles to tunnel through them.
Visualize collision fields before tuning fluid parameters. Check the lip, inner neck, glass rim and any fast-moving regions frame by frame. If the animated bottle rotates substantially between solver updates, increase temporal sampling or substeps as needed. More substeps can improve collision continuity, but they cannot compensate for a collision field whose spatial resolution is too coarse.
Transfer source velocity deliberately. The emitted fluid should inherit the relevant bottle motion while gaining a plausible outward component from the tilt and source design. Excessive launch velocity creates a thin jet even when viscosity is high; too little velocity may leave the fluid attached to the bottle or cause an abrupt vertical drop.
Balance viscosity and surface tension
Viscosity resists deformation and velocity differences within the fluid. Surface tension encourages the exposed surface to contract. They can both increase apparent cohesion, but they do not create the same motion:
- Too little viscosity can produce rapid folds and a water-like response after impact.
- Too much viscosity can delay the pour, suppress acceleration and make the stream appear rubbery.
- Too little surface tension may encourage premature breakup when combined with low resolution or an unstable source.
- Too much surface tension can round every feature into beads and make a thin stream behave like an elastic filament.
Tune at production scale and inspect particles before meshing. The stream should narrow progressively as it falls, respond to changes in bottle orientation and fold or spread when it reaches the target. If the entire pour moves too slowly, verify scene scale, gravity and source velocity before raising or lowering viscosity. If it breaks immediately at the mouth, inspect source continuity, collision sampling and particle coverage before treating the failure as a material-property problem.
Contact behavior may also depend on friction, slip and any available wetting or contact-angle controls. Use these to refine interaction with the lip or receiving surface, not as substitutes for bulk viscosity. Strong friction can hold particles unnaturally against a moving bottle and destabilize the source.
For comparison, a honey pour simulation in Houdini usually demands a more elastic-looking, slower-flowing result. Reusing honey settings for olive oil can produce an excessively heavy strand with suppressed surface response.
Art-direct the trajectory at the source
Apply art direction as early as possible in the motion chain. Bottle rotation, emitter shape and source velocity are usually more convincing controls than extreme solver values. Small changes in opening orientation can move the impact point substantially without disturbing the fluid’s local behavior.
When the composition requires tighter control, use guide geometry, localized velocity fields or spatially limited forces. Blend them gradually and keep the fluid responsive to gravity and collision. A strong global force may place the stream correctly while removing the delayed, stretching motion that communicates viscosity.
Run low-resolution wedges for source width, launch velocity, viscosity and bottle timing rather than adjusting every parameter at once. Compare the same diagnostic frames across variants: first exit, stable stream, initial contact and breakup. Once the broad motion is approved, increase resolution while preserving source dimensions and timing. Higher resolution can change breakup and contact detail, so treat it as a validation stage rather than a purely cosmetic upgrade.
Mesh the Liquid Without Erasing Thin Features
The FLIP particles represent motion; the rendered mesh must communicate that motion through silhouette and curvature. In a typical workflow, Particle Fluid Surface or a custom particle-to-VDB network converts the cache into a surface. The important relationship is between particle separation, voxel size, particle influence and smoothing.
Set resolution from the final image
Choose the meshing scale from the smallest feature that must survive at delivery resolution. A very fine voxel size increases memory and may expose particle-scale noise, but it cannot restore details absent from the simulation. A coarse voxel size is faster and smoother but may close gaps, inflate the stream or remove droplets.
- Particle influence: Too much creates inflated blobs and merges neighboring features; too little causes holes and broken bridges.
- Voxel size: It should resolve the required silhouette and contact area without preserving irrelevant particle noise.
- Smoothing: It can stabilize curvature but may erase stretched filaments, folds and impact detail.
- Filtering: Use localized or scale-aware filtering where possible instead of applying one aggressive setting to every component.
Review the mesh through the final camera with motion blur disabled first. A feature that is visible only in an unrestricted close-up may not justify additional simulation cost. Conversely, a stream that looks continuous in the viewport can disappear after pixel filtering if it occupies less than a pixel or fails to catch a reflection.
Use a silhouette pass, a neutral clay pass and a reflective diagnostic material. The silhouette reveals thickness and continuity; clay exposes bulges and contact errors; a broad area-light reflection reveals faceting, unstable normals and over-smoothed curvature. Do not wait for the final olive oil shader to evaluate geometry.
Treat different liquid scales separately
One meshing setup rarely handles the main stream, hairline filaments, tiny droplets and a broad receiving pool equally well. Group or classify particles where useful. The main pour can use moderate smoothing, while secondary droplets receive a smaller influence radius or remain as separate components. The contact region may need a localized blend to preserve a continuous bridge without inflating the entire stream.
A small amount of procedural geometry can be appropriate when the simulation cannot reliably maintain a hero filament. Keep the addition aligned with particle motion and preserve plausible thickness changes. It should support the simulated flow rather than replace it with a rigid tube.
Preserve contact and temporal stability
The impact region carries much of the perceived weight. Preserve a continuous connection, a modest mound or fold, and an appropriate meniscus where the oil meets the vessel. Avoid a perfectly cylindrical termination or a large artificial bulge. Refraction through the receiving glass can magnify even small intersections, especially around its rim and base.
Inspect the entire frame range for holes, pinched bridges, floating components, self-intersections and unstable normals. Changing topology is normal for a fluid mesh, but visible features should evolve continuously. Camera-aware connectivity filtering can remove irrelevant fragments, although droplets that contribute to the shot should be stabilized rather than deleted automatically.
Retain velocity data through the cache and meshing pipeline if the renderer will use velocity-based motion blur. Deformation blur on rapidly changing fluid topology can be unreliable or unnecessarily expensive. Test the chosen blur method on breakup and impact frames, where topology changes are most pronounced.
Shade Olive Oil and Glass as Separate Optical Systems
Olive oil and glass are both transmissive, but they should not share one generic transparent shader. Oil is defined by a reflective interface plus wavelength-dependent attenuation through its volume. Glass is defined by dielectric reflection, refraction, modeled thickness and the environment it reflects.
Build color through absorption
A saturated yellow base color often makes olive oil look like plastic. Start with a physically plausible transmitting surface and use volume absorption or attenuation to build the golden color over distance. A thin stream should appear lighter than a thick pool because the optical path through the liquid is shorter. The bottle interior may become deeper amber without requiring a different material.
Keep the main controls conceptually separate:
- Interface reflection creates Fresnel highlights and edge response.
- Transmission determines how light travels through the liquid.
- Absorption or attenuation establishes body color as path length increases.
- Roughness controls highlight sharpness and transmitted blur where supported.
Use the closed FLIP mesh as the liquid boundary where practical. If surface and volume treatments are split into separate geometry or material components, keep them precisely aligned. Misalignment can produce doubled silhouettes, dark seams or flickering boundaries. Avoid duplicate liquid shells unless the renderer’s dielectric workflow explicitly requires them.
If the oil renders brown or nearly opaque, check absorption distance, mesh thickness, exposure and overlapping geometry before changing hue. If it resembles yellow glass, inspect the balance of roughness, reflection shape and absorption. A liquid can have clear transmission while still displaying slightly softened, evolving highlights from its changing curvature.
Give glass real thickness
Model inner and outer surfaces for the bottle and receiving glass, with particular attention to the rim, lip, shoulder and base. These regions generate the edge highlights and distortions that make transparent packaging readable. Confirm that normals are consistent and that the asset forms a coherent dielectric boundary.
Keep the glass, liquid, air cavity, label and cap as distinct objects or material regions. Nested transparent surfaces require clean boundaries. Intersections, duplicated backfaces and nearly coincident shells can create unexpected darkening or unstable refraction. Where supported, use the renderer’s nested-dielectric or priority system consistently rather than relying on arbitrary overlap.
Test the bottle in isolation before adding the oil and label. If the empty bottle already renders smoky or dark, inspect wall thickness, absorption, roughness and light-path limits. Increasing transmission depth may be necessary for complex packaging, but additional bounces will not correct intersecting geometry or an accidental stack of transparent shells.
| Symptom | Likely cause | First diagnostic |
|---|---|---|
| Glass disappears | No reflection contrast or insufficient visible thickness | Place a bright card on one side and negative fill on the other |
| Glass looks smoky | Overlapping surfaces, absorption or excessive roughness | Render the empty glass without oil, label or cap |
| Oil and glass merge | Similar reflected values or intersecting boundaries | Inspect object separation and reflection placement |
| Oil becomes too dark | Excessive attenuation or duplicate liquid volume | Render a thickness diagnostic and isolate the liquid |
| Label is distorted | Incorrect placement or competing refractive layers | Test the label as an independent object before restoring the glass stack |
Light Glass and Golden Liquid for Product Readability
Transparent product lighting is largely reflection design. The bottle and liquid reveal their shape through the cards, gradients and dark areas they reflect. Raising overall exposure rarely solves weak glass; it often flattens the package and reduces label contrast.
Design reflections from the camera
Use large area lights, softboxes or emissive cards to create controlled vertical and horizontal gradients. A long strip can describe a cylindrical bottle, while a broader card establishes a soft shoulder-to-body transition. Judge each source by the reflected shape visible to the camera, not only by its direct illumination.
Build the reflection structure before adding broad fill. A soft key can establish the bottle silhouette, a narrower strip can define the pouring edge, and a rear or rim source can separate the receiving glass from the background. Add flags and negative fill to prevent bright environments from washing out the edges or crossing the label.
Review the complete bottle animation. A reflection that frames the logo on one hero frame may cover it as the bottle rotates. If branding is essential, prioritize camera angle, label orientation and reflection placement before relying on compositing to recover readability.
Separate the stream from the background
Place a controlled gradient or reflection card so that the pour remains visible through its full trajectory. A neutral or slightly cool background can separate warm oil without making the stream look luminous. Dark backgrounds may create strong golden highlights but can also hide clear glass; bright backgrounds reveal distortion but may reduce edge contrast. Test both sides of the bottle silhouette rather than choosing the background from the oil alone.
The stream should not be uniformly bright. Its highlight should respond to changes in curvature and thickness, with localized variation around folds, stretched areas and impact. If it reads as a glowing line, reduce the rear card’s intensity or width and restore variation through reflection, transmission and absorption.
Keep key, fill, rim and environment color under control so the oil stays warm while label whites and glass edges remain reasonably neutral. Use a consistent OCIO configuration and viewing transform through look development, rendering and compositing. Judge absorption and light color under the approved transform; changing view settings between departments can lead to unnecessary shader corrections.
Inspect reflection, transmission, shadow, depth and object or material ID outputs alongside the beauty render. If the liquid is absent from reflection, the environment may lack a useful source. If transmission is unexpectedly dark, inspect absorption, thickness and ray depth. AOVs should diagnose the image, not become a substitute for correct geometry and lighting.
Diagnose Synthetic-Looking Results
Troubleshooting is faster when each symptom is traced through the pipeline in order: scale and source, particle motion, liquid mesh, materials, lighting, camera and compositing. Avoid attempting to repair simulation errors with shaders or geometry errors with extra render samples.
Simulation and meshing failures
| Failure | Likely causes | Corrective direction |
|---|---|---|
| Watery, energetic stream | High source velocity, low viscosity, incorrect scale or insufficient cohesion | Correct scale and source motion before increasing viscosity |
| Rubbery or frozen pour | Excessive viscosity or surface tension, weak gravity response | Reduce extreme material values and restore momentum through bottle motion |
| Breakup at the mouth | Discontinuous sourcing, coarse particles or unresolved neck collisions | Inspect the source and collision fields at particle scale |
| Particles pass through glass | Thin collision volume, fast motion or too few substeps | Improve spatial resolution first, then temporal sampling |
| Blobby mesh | Large particle influence or excessive smoothing | Reduce influence locally and preserve thin-region coverage |
| Flickering silhouette | Under-resolved stream, unstable thresholds or disappearing components | Review particles and mesh frame by frame before adjusting the shader |
Render a flat matte or silhouette pass when the fluid looks swollen or disconnected. If the shape is already wrong, absorption and highlights cannot restore it. Separate secondary droplets when their scale demands different meshing settings rather than making the primary surface lumpy.
Glass and shading failures
Black or dirty refraction often results from overlapping boundaries, duplicate backfaces, excessive absorption or insufficient transmission depth. Isolate the empty bottle, then restore the oil, label and receiving glass one component at a time. This reveals which boundary introduces the failure.
A yellow plastic appearance usually means the liquid’s color is driven by an opaque response rather than filtered light. Validate the material under neutral lighting, reduce dependence on base color and check that thick and thin sections differ naturally. If the stream is invisible while the bottle liquid looks correct, improve background separation and reflection placement before increasing saturation.
A floating impact point is generally a combined geometry and lighting problem. Verify collision alignment, preserve a small contact deformation or meniscus, and check that shadows and reflections agree with the visible surface. A physically intersecting stream can still look composited if its contact shadow, refraction and silhouette provide contradictory depth cues.
Render and compositing failures
Unreadable branding may come from the camera, depth of field or a reflection crossing the typography. Correct those conditions in the scene before sharpening the label in compositing. Sharpening cannot restore details lost to refraction, defocus or inadequate sampling, and it may emphasize unstable liquid edges.
Use liquid-only, glass-only, reflection, transmission, shadow, depth and motion-vector diagnostics for persistent problems. A stable silhouette with flickering color points toward shading, sampling or denoising; an unstable silhouette points back to particles and meshing. If noise appears only around nested transparent regions, test representative ray-depth and sampling changes locally before raising global render quality.
Structure the Shot for Efficient Iteration
A production-ready food and beverage CGI workflow separates dependencies so that art-direction changes do not trigger unnecessary resimulation. The source and collision geometry, FLIP cache, particle cache, liquid mesh, materials, lighting and final render should have identifiable versions and explicit frame ranges.
Version caches by stage
A practical dependency chain is:
- approved camera, bottle animation and collision assets;
- source setup and low-resolution motion tests;
- versioned FLIP particle cache;
- versioned mesh and velocity cache;
- shading and lighting scene referencing stable assets;
- render outputs, AOVs and compositing versions.
Never overwrite an approved high-resolution simulation to test a new emitter or timing change. Create a new version and retain the source parameters used to generate it. Mesh versions should remain independent of FLIP versions so that smoothing or connectivity changes do not require another solve.
Use proxies for early camera, timing and lighting decisions. A coarse solve can reveal an incorrect exit angle, weak silhouette or missed landing point quickly. Reserve final resolution for a shot whose broad motion is approved, while allowing for a validation pass because increased resolution may alter breakup and contact detail.
Transparent packaging can dominate render cost through reflection, refraction, absorption, motion blur and depth of field. Test the initial exit, stable stream, dense impact and final breakup frames rather than estimating cost from one easy frame. Optimize clean geometry and path complexity before reducing the liquid mesh so aggressively that its reflections become faceted.
Related pour workflows, such as smoothie and juice CGI, may require different layering and opacity decisions, but the same separation of simulation, meshing and look-development caches makes iterations safer.
Run a final delivery check
Review consecutive frames at the actual output resolution with final motion blur, depth of field and color management. Check:
- Silhouette: The bottle, glass rim, stream and important droplets remain legible against the background.
- Motion: The stream accelerates, narrows and contacts the target without unexplained pops or directional changes.
- Mesh: Highlights remain continuous, with no faceting, holes or unstable floating fragments.
- Oil: Thin and thick regions show appropriate variation without becoming opaque, gray or oversaturated.
- Glass: Rims, walls and bases retain controlled reflection and refraction without black or smoky artifacts.
- Branding: The label remains readable through the approved camera motion and depth of field.
- Contact: The stream meets the receiving surface convincingly, with no visible tunneling or hovering.
- Compositing: Required object IDs, Cryptomatte data, depth, motion vectors and diagnostic passes are present and validated.
Document the renderer and version, scene scale, color configuration, cache paths, simulation and mesh versions, frame range, camera, textures and environment dependencies. The shot is ready for final delivery when its fluid behavior, transparent materials and reflection design can be reproduced from those approved assets—not merely when one hero frame looks convincing.