Houdini 13.0 Nodes

interface version 1

Evaluates an already-simulated volumetric at any subframe, using velocity-based advection.

This operator uses DOP-network advection microsolvers to generate in-between subframes from the actual frames of volumetric simulation results. This allows arbitrary retiming of simulations (including slow-motion).

Note

This operator requires a velocity vector field called vel.

Inputs

Input Volumes

Connect a geometry consisting of volumetric primitives. A velocity field (called vel) is required.

All other fields except velocity will be processed.

Source Mask(s)

(not implemented yet) Connect source volume(s) here to compensate for any advection artifacts appearing at emission areas.

Parameters

Frame

The frame number to evaluate the input volumes for. It can be a fractional frame number – in that case, all volumes will be reconstructed using the two nearest whole frames' volumes (using their velocity fields and advection).

Advect by Velocity

If enabled, volumes will be advected by their velocity fields. Otherwise simple frame-blending is applied (based on the fractional part of the frame number). This can be useful for debugging purposes.

Velocity Mult

A multiplier on all velocity field values (applied before advection).

Advection Type, Advection Method, etc.

See the Gas Advect Field DOP documentation for details.

Vel Field Scale

Scaling of the output velocity field.

Especially if the volume is retimed heavily, the velocity field has to be scaled accordingly, or the amount of motion blur will be incorrect.

Various presets are provided for convenience:

Default (1.0)

Resets the field to its default (constant) value.

Compute from “Frame”

An expression that calculates the amount of scaling from the Frame parameter’s value change from the current frame to the next.

The Frame parameter has to be animated (keyframes or CHOPs), otherwise the expression returns 0.

Compute (limited max value)

Same as the above, but the expression has an upper limit of 1.0.

To Do

  • Velocity field name should be a parameter and not hardcoded

  • Add frame clamping (as in TimeOffset SOP)

  • Implement 2nd input (source volume mask)

  • Specify field name(s) to process? (maybe not that important)

  • Test if it works for non-scalar volumes (e.g. color – it already should)

  • Should also be able to directional blur (“smear”) with the vel field? (fake motion blur)

Release Notes

interface version 1

2014-11-22
  • Bug fix: velocity field was missing from output.

  • Added post-advection scaling of velocity field (so render-time motion blur will be adjusted to retimed speed)

2014-11-19
  • First version.