
ANR Blood Mesh 3D
Turns Blood Sim 3D particles into a closed liquid mesh and renders it as wet blood with soft sky light and shadows, or exports it as an OBJ sequence.
- Simulations
- Simulations pack
- 2 inputs
- 57 controls
Overview
Blood Mesh 3D takes the particles of ANR Blood Sim 3D on its Particles input and builds one closed, smooth mesh from them each frame: loose drops stay round, streams and sheets merge into one surface. It never runs the simulation itself, so it works on a live Sim and on a Sim reading its cache.
The mesh is rendered as wet blood: thickness darkens it, light scatters inside thin streams and wet highlights catch the light. By default a soft skylight lights it from every side, with soft shadows; connect a lat-long HDRI to Environment to light it with your set. The blood is seen through the Blood Sim's camera (its tracked Camera, or its built-in camera), so the Mesh has no camera input of its own.
The Mesh tab shapes the surface: Mesh detail, droplet size, how readily drops merge, and Dilate / Smooth / Erode filters that work like those of Houdini's Particle Fluid Surface. Look edits reuse the mesh and only render again; Mesh edits build it again. The Export tab writes the mesh as an OBJ sequence and makes a ReadGeo for it.
The Mesh follows the Blood Sim's Bullet Time: when the Sim freezes, the mesh freezes with it and keeps its motion blur while the camera moves on. With Shadows on floor and surfaces ticked on the Sim, the Mesh also darkens the floor and the collision surface where the blood blocks the light.
Inputs
- Particlesrequired
ANR Blood Sim 3D, live or reading its cache, connected directly (Dots are fine). The node meshes its particles and uses its camera, collision surface and floor.
- Environmentoptional
Optional lat-long HDRI. In the Skylight modes it is the sky that lights the blood and shows in its reflections; in Key only it is used for the reflections only.
Output. Premultiplied RGBA of the wet blood at the project format, seen through the Blood Sim's camera. Merge it over the plate; with the Sim's shadows on, the alpha also carries the shadows on the floor and surfaces.
Quick start
- Select your ANR Blood Sim 3D and add ANR Blood Mesh 3D: it connects to Particles.
- View the Mesh node. Set Quality to Preview while you tune (up to 640 pixels, coarser voxels) and back to Render for the final.
- Shape the liquid on the Mesh tab: Droplet size for loose drops, Surface blending for how readily drops merge, Smooth to melt particle lumps.
- Set the look on the Look tab: Blood color, Blood absorption and Roughness, and the Shutter for motion blur.
- Connect an HDRI of the set to Environment for matching light and reflections, or adjust the studio sky and Light X/Y/Z.
- Merge the result over the plate.
- To use the mesh elsewhere, set OBJ folder, First frame and Last frame on the Export tab, click Export OBJ sequence, then Create ReadGeo.
The panel
The node's panel as Nuke shows it, with the values of a new node. Click any control to see what it does; tabs and sections work as in Nuke.
Quality, mesh detail and droplets, smoothing, Dilate / Smooth / Erode filters, surface noise and the mesh info line.
Blood colour and absorption, scattering, wet highlights, sampling, motion blur and lighting: skylight, key and studio sky.
OBJ sequence export and a ReadGeo for it.
No control matches.
All controls
Mesh21 controls
Quality, mesh detail and droplets, smoothing, Dilate / Smooth / Erode filters, surface noise and the mesh info line.
Quality
- QualityMenu
quality Preview: at most 640 px, 1.6x coarser voxels and at most 2 samples. Render: full resolution and Mesh detail.
Surface
- Mesh detailSlider
meshDetail Voxel size as a fraction of the particle spacing. Smaller is finer and slower. Preview uses 1.6x coarser voxels; OBJ export always uses this value.
- Droplet sizeSlider
dropletSize Radius of an isolated droplet, like Blood Render 3D's Droplet size (same default). Mesh only; does not change physics.
- Size variationSlider
sizeVariation Stable seeded variation of droplet sizes. Does not change physics.
- Surface blendingSlider
surfaceBlend How readily nearby drops merge into one continuous sheet. 0 keeps drops apart; 1 fuses neighbours.
- Flow stretchSlider
anisotropy 0 meshes round kernels. 1 shapes each kernel along its neighbours (flow-aligned), which gives smooth streams and flat sheets instead of rows of beads.
- Velocity stretchSlider
velocityStretch Extra length along each particle's velocity over one frame, capped for very fast particles. 0 keeps the simulated shape.
Smoothing
- Volume smoothingSlider
fieldSmoothing Blur passes over the density volume before meshing. Removes particle bumps, but every pass shrinks small droplets and can erase spray droplets; 0 keeps every droplet.
- Mesh smoothingSlider
meshSmoothing Taubin smoothing iterations on the finished mesh. Smooths facets without shrinking the liquid.
Filtering (Houdini Particle Fluid Surface: Dilate, Smooth, Erode; in particle spacings)
- DilateSlider
dilate Grows the liquid surface outward, in particle spacings, before Smooth (Houdini Particle Fluid Surface: Dilate). Followed by an equal Erode it closes small gaps and pinches between drops without fattening the liquid. 0 = off.
- SmoothSlider
smoothIterations Mean curvature flow iterations on the surface's distance field, after Dilate (Houdini: Smooth, Mean Curvature Flow). Melts particle lumps into one smooth liquid surface. 0 = off.
- Keep dropsSlider
keepDrops 1 keeps small drops and thin streams at their size while Smooth flattens particle lumps. 0 is Houdini's plain mean curvature flow, which shrinks drops and thins streams.
- ErodeSlider
erode Shrinks the liquid surface inward after Smooth, in particle spacings (Houdini: Erode). Equal to Dilate it closes gaps without growing the liquid; on its own it thins sheets and removes drops smaller than it. 0 = off.
Surface noise
- Noise amplitudeSlider
noiseAmplitude Peak distance, in particle spacings, the noise moves the liquid surface (like Houdini noise added to the surface SDF). 0 = off. The pattern sits in world space and does not travel with the blood.
- Noise sizeSlider
noiseSize Size of one noise feature, in particle spacings.
- Noise octavesSlider
noiseOctaves Layers of finer noise detail, each half the size of the one before.
- Noise roughnessSlider
noiseRoughness Strength of each finer octave relative to the one before it.
- Noise evolutionSlider
noiseEvolution How fast the noise pattern changes, in features per second. 0 = a still pattern.
- Noise seedSlider
noiseSeed Picks a different noise pattern.
Mesh info
- Refresh mesh infoButton
refreshInfo Show the particle, vertex and triangle counts and mesh time of the last rendered frame.
- MeshStatus
meshInfo The mesh line filled by Refresh mesh info: counts, timings, whether the mesh was reused, the lighting and the motion blur samples used.
Look31 controls
Blood colour and absorption, scattering, wet highlights, sampling, motion blur and lighting: skylight, key and studio sky.
Blood
- Blood colorColour
bloodColor Base colour of the blood. Blood absorption sets how fast it darkens with thickness.
- Blood absorptionSlider
absorption How fast blood turns opaque and dark with thickness. With Scale with particle size on it is per particle size: at 8 a stream one particle thick is nearly opaque at any scene scale. Off: per world unit.
- Subsurface scatteringSlider
scattering Internal light scattering strength. Uses liquid thickness and light-space self-shadowing; render only.
- Scattering depthSlider
scatterDepth Distance light spreads beneath the liquid surface. With Scale with particle size on it is measured as in a scene of particle spacing 0.025 and scales with the Blood Sim spacing; off, in world units. Higher values reveal more transmission in thin streams; render only.
- Scattering colorColour
scatterColor Colour of the light scattered inside the blood. It tints the inner glow of thin and backlit blood only, not the wet reflections; white is neutral.
- Scale with particle sizeCheckbox
scaleWithParticles On: Blood absorption and Scattering depth act per particle size (the Blood Sim spacing), so blood of the same particle count looks the same at any scene scale; a 1 unit = 10 cm preset is as deep and opaque as a 1 unit = 1 m scene. The values are those of a scene with spacing 0.025. Off: per world unit, as before.
Wet highlights
- RoughnessSlider
roughness Width of wet specular highlights.
- Wet highlightsSlider
specular Strength of Fresnel reflection and key-light highlight.
- Highlight anti-aliasingSlider
specularAA Skylight modes: averages each wet highlight over the pixel instead of sampling it at one point, so the tiny highlights on small drops and spray stop sparkling, and motion-blurred ones stay smooth streaks. 1 = one pixel, up to 2 (softer); 0 = off, the look before 2026-10-04. Large, smooth blood is unchanged. Key only ignores it.
Sampling
- Anti-aliasingSlider
aaSamples Sub-pixel samples per pixel. With motion blur a pixel gets the larger of this and Blur samples. Preview uses at most 2.
Motion blur
- Motion blurCheckbox
motionBlur Blurs the blood along its simulated 3D motion over Shutter. A frozen Bullet Time frame keeps its blur.
- ShutterSlider
shutter Exposure duration in frames. 0.5 is a 180-degree shutter. Uses simulated 3D velocities.
- Blur samplesSlider
blurSamples Time samples over the shutter. Each one renders the blood at the middle of its slice of the shutter and smears it along its own motion across that slice, so streaks stay continuous at any count. More samples follow curving and turning motion and changing highlights more closely; each costs about one render. A pixel gets the larger of this and Anti-aliasing. Preview uses at most 2. At most 256.
Light
- LightingMenu
lighting Skylight: a soft sky lights the blood from every side, with soft shadows and the sky in the wet reflections (the Environment input when connected, otherwise a studio sky with a key and a rim softbox). Skylight + key: that plus the directional key light. Key only: the original single directional light.
- Sky intensitySlider
skyIntensity Scales the whole sky, the Environment input included.
- Sky rotationSlider
skyRotation Turns the sky, the Environment input and both softboxes about the world up axis, in degrees.
- Ambient fillSlider
ambient Extra flat fill on top of the lighting. 0 = the lights only.
- Key lightSlider
key Directional key light intensity (Skylight + key and Key only).
- Light XSlider
lightX World direction towards the key light; with the studio sky also where the key softbox sits.
- Light YSlider
lightY World direction towards the key light; with the studio sky also where the key softbox sits.
- Light ZSlider
lightZ World direction towards the key light; with the studio sky also where the key softbox sits.
- Shadows on floor and surfacesCheckboxSome modes
shadows Darkens the floor and the collision surface (sphere, capsule, Alpha + depth surface or wall, OBJ) where the blood blocks the lights: soft contact shadows with Skylight, sharper ones with the key. Render only. The floor is Blood Sim's (Floor collision).
- Shadow strengthSliderSome modes
shadowStrength How dark the blood's shadows are. 1 is the physical shadow of the lights; above 1 deepens it, up to black.
Studio sky (when no Environment is connected)
- Sky zenithColour
skyZenith Studio sky colour straight up. Used when no Environment is connected.
- Sky horizonColour
skyHorizon Studio sky colour at the horizon; the brighter band gives the wet rims. Used when no Environment is connected.
- GroundColour
skyGround Studio colour below the horizon (floor bounce). Used when no Environment is connected.
- SoftboxSlider
softbox Brightness of the studio sky's key softbox, placed in the Light direction: the main wet highlight. 0 = none.
- Softbox sizeSlider
softboxSize Angular radius of both softboxes, in degrees. Smaller gives crisper highlights.
- Rim softboxSlider
rimSoftbox Brightness of the studio sky's rim softbox behind the blood (opposite the key, Rim height up). 0 = none.
- Rim heightSlider
rimHeight Height of the studio sky's rim softbox above the horizon, in degrees. It lights thin blood from behind; floor pools seen from a low camera mirror it when it is low (20 was the original height).
Sky quality
- Sky lightsSlider
skyLights Shadowed lights the sky is split into. More gives smoother soft shadows and is slower. Preview always uses 8.
Export5 controls
OBJ sequence export and a ReadGeo for it.
- OBJ folderFile
exportFolder Where the OBJ sequence is written. A relative path is taken from the script's folder.
- First frameSlider
exportFirst First frame written by Export OBJ sequence. A new node starts with the script's frame range.
- Last frameSlider
exportLast Last frame written by Export OBJ sequence.
- Export OBJ sequenceButton
exportOBJ Renders the frame range with a progress bar you can cancel and writes one OBJ per frame into OBJ folder. Needs a Blood Sim on Particles.
- Create ReadGeoButton
createReadGeo Makes a ReadGeo next to the node that reads the exported sequence frame by frame, over the exported range.
Tips
- Refresh mesh info shows the particle, vertex and triangle counts, the mesh and render times, and whether the last frame reused its mesh.
- Fast spray reads faint with motion blur, as in real footage at 24 fps: a shorter Shutter gives denser streaks. Raise Blur samples when curving streaks or highlights look stepped.
- If the blood looks like rows of beads, keep Flow stretch at 1 and add a step of Smooth. Volume smoothing also removes bumps, but it erases small spray drops.
- Use Dilate and Erode together, at the same value, to close small gaps between drops without fattening the liquid.
- A film facing the camera, such as blood running down a neck, shows few highlights: lower Light Y or raise Softbox size.
- Surface noise sits in world space and does not travel with the blood, so on a moving stream it crawls. Use it on slow or resting blood, with Noise evolution at 0 for a still pattern (also during a Bullet Time freeze).
- Key only in Lighting gives a single directional light and renders fastest; Sky lights sets how smooth the skylight's soft shadows are.
- With Scale with particle size on, absorption and scattering depth look the same at any scene scale; turn it off to set them in world units.
Good to know
- Needs an NVIDIA GPU, Turing generation (RTX 20 series) or newer.
- Connect the Blood Sim directly. A grade, crop or reformat between them, or a change of the script's format, stops the Mesh with an error.
- To change the view, change the Blood Sim's camera. Camera moves never re-simulate, on a cache too.
- The Mesh has no Bullet Time of its own: freeze the Blood Sim upstream and the mesh freezes with it.
- OBJ export always uses the full Mesh detail, even in Preview, and writes one world-space OBJ per frame (positions and normals) named
blood_mesh.####.obj. Each Blood Mesh node needs its own OBJ folder: the export refuses a folder another one uses. - A new node fills OBJ folder with a fresh folder next to the saved script, or in your home folder when the script is not saved yet. Check it before you export.
- A Mesh nobody is viewing frees its GPU memory by itself after about 10 minutes, or after a minute when the GPU is nearly full; viewing it again meshes and renders the frame again.
Something unclear or missing? Write to [email protected].