Skip to content
toadstorm edited this page Dec 17, 2020 · 74 revisions

MOPS WIKI DOCS

MOPs (Motion OPerators for Houdini) is a set of tools for SideFX Houdini that are intended to simplify and automate common motion graphics processes in Houdini.

MINIMUM REQUIREMENTS

Houdini 16.5 or higher (any license type)

MOPs Plus requires Houdini 18.0 or higher (any license type)

INSTALLATION

Step 1: Downloading MOPs

Option 1 (users who are familiar with Git): Navigate to the folder you want to contain MOPs, and from BASH / Git BASH type: git clone https://github.com/toadstorm/MOPS.git

Option 2 (what's Git?): Download the desired release directly from the releases page and extract it to your hard drive or network share.

Step 2: Configuring Your Environment

Option 1: Plugin (17.5+ only) For those of you running Houdini 17.5 or later, you have an option for a much easier install. Simply create a folder inside your Houdini preferences directory (where the houdini.env typically is) called "packages", and place the MOPS.json file from the MOPs download into that folder. Then edit MOPS.json and change the "MOPS" variable to match the install path (the directory that contains "otls", "scripts", etc.).

Option 2: Edit Houdini.env You need to add the MOPS root directory to your Houdini environment file. For more information about the Houdini environment file, see this help link. Edit your houdini.env file and create a variable called MOPS that points to the new folder you just extracted MOPs to. The folder you point to should be the one that contains "otls", "scripts", and "toolbar": MOPS="/path/to/MOPS"

Finally, add $MOPS to your HOUDINI_PATH: HOUDINI_PATH=$HOUDINI_PATH;$MOPS;&

If you already have a HOUDINI_PATH defined, you can simply append $MOPS to that existing HOUDINI_PATH. For example, if you're using both MOPs and QLib:

MOPS="/path/to/MOPS" QLIB="/path/to/qlib" HOUDINI_PATH=$HOUDINI_PATH;$QLIB;$MOPS;& Note: On Linux and OSX, use : instead of ; to separate your paths.

It's important that your HOUDINI_PATH always ends in ;&. You can append any other paths you like, but the last path should be &. This will ensure that Houdini's built-in operators work normally.

Note: Don't install MOPs inside an existing Houdini scanned directory (such as /documents/houdinixx.x). This may cause problems with shelves and other tools.

BASICS

See Basics for an overview of what MOPs does and how it works.

TUTORIALS

  • See MOPs Tutorial for an in-depth tutorial series on the MOPs system.
  • The Houdini Hive Worldwide presentation has a good overview of what MOPs does, and a number of detailed use cases showcasing various parts of the MOPs system.

NODE LIST

The following is a list of all MOPs nodes you can use. For detailed help per-parameter, consult the internal Help page for each node. These links are just for a general usage overview.

IMPORTANT: Nodes flagged as "(Plus)" are part of MOPs Plus, the commercial add-on package to MOPs.

Generators create geometry, either polygons or packed primitives ("instances").

MOPs Convert - Converts geometry or standard packed primitives into MOPs-compatible packed primitives, with all the necessary point attributes.

MOPs Explode - Breaks the individual faces of a polygon into MOPs packed primitives.

MOPs Greeble (Plus) - Recursively subdivides and extrudes polygons to make rectilinear details.

MOPs Instancer - Creates and arranges copies of things.

MOPs Subdivider - Divides and rotates polygon faces.

MOPs Sweep Spline - Turns curves (splines) into polygons, with many output options.

MOPs Trails - Generates stable polyline trails from input points or packed primitives, with lots of customization options.

MOPs Typography (Plus) - Generates letterforms or processes vector art with easy controls for bevels, chisels, alignment, kerning, and more.

Falloffs create or modify the f@mops_falloff point attribute, which modulate the effects of Modifiers (and some Generators) downstream.

MOPs Audio Falloff - Uses defined frequency bands of an audio file to create falloff from sound.

MOPs Combine Falloffs - Composites the falloff attributes of two nodes together.

MOPs Falloff From Attribute - Remaps an existing attribute (such as i@id) into falloff.

MOPs Noise Falloff - Uses various noise patterns to generate falloff.

MOPs Object Falloff - Uses a source SOP (points, geometry, or a volume) to create falloff.

MOPs Plain Falloff - Generates a single falloff amount to apply evenly.

MOPs Remap Falloff - Remaps an existing falloff value using range and ramp controls.

MOPs Shape Falloff - Uses a primitive shape to generate falloff.

MOPs Spline Falloff - Uses a source spline to create falloff, similar to Object Falloff.

MOPs Spread Falloff - Generates an animatable "spreading" falloff effect from source points or attributes.

MOPs Texture Falloff - Remaps a projected texture map into falloff.

MOPs Transform Falloff - A transform handle that can be used to modify the transform of most other Falloff nodes.

MOPs Trigger Falloff (Plus) - Records when an existing attribute crosses a value threshold, then generates a falloff that can fade in or out after the trigger event.

Modifiers change transformations or other properties of MOPs packed primitives.

MOPs Aim - Aims packed primitives towards goal positions.

MOPs Align - Moves the pivots of packed primitives relative to their bounding boxes.

MOPs Color Modifier - Applies a color ramp based on falloff.

MOPs Curl Modifier - Applies curl noise to the position and/or orientation of objects.

MOPs Curve Toys (Plus) - Applies various deformations to polyline curves.

MOPs Deintersect (Plus) - Fixes overlaps between packed primitives, while optionally constraining position or orientation (or constraining to a surface geometry or SDF).

MOPs Delay - Applies a delay (time-shift) effect to various transform or timing properties of objects.

MOPs Move Along Mesh - Pushes objects along a polygon surface.

MOPs Move Along Spline - Pushes objects along one or more splines (curves).

MOPs Noise Modifier - Applies several kinds of noise to the position and/or orientation of input objects.

MOPs Orient Mesh - Generates useful orientation frames on a polygon mesh for use with MOPs Move Along Mesh.

MOPs Pivot - AKA MOPs Align.

MOPs Randomize - Randomizes transforms and other properties of MOPs packed primitives.

MOPs Relax Modifier - Pushes objects apart to try to resolve overlaps.

MOPs Spring Modifier - Applies simple spring forces (Hooke's Law) to transforms of MOPs packed primitives.

MOPs Transform Modifier - Transforms MOPs packed primitives, similar to the Transform SOP.

These are miscellaneous tools, some of which are low-level nodes intended for use by TDs to create their own new MOPs operators.

MOPs Apply Attributes - The core API node of MOPs transformations. Applies template point attributes to packed primitives.

MOPs Extract Attributes - Converts packed primitive intrinsics into template point attributes, usable by the Copy SOP.

MOPs Index From Attribute - Converts any point attribute (such as f@mops_falloff) into i@mops_index, suitable for use as the Template Points for a MOPs Instancer.

MOPs Neighbors - Computes an array attribute consisting of neighboring point numbers, and optionally connects them with polylines.

MOPs Noise Patterns - Create vector or scalar noise from a variety of noise functions.

MOPs Orient Curve - Creates an orientation frame for the points along a curve using MOPs Parallel Transport, with additional twisting controls.

MOPs Parallel Transport - Uses the Parallel Transport algorithm to generate normal, tangent and binormal vectors from an input spline.

MOPs Preview Falloff - Previews the f@mops_falloff attribute using colored sprites.

MOPs Reorient - Allows the local rotation axes of MOPs packed primitives to be changed without unpacking or changing the visible orientation.

MOPs Set Sequence Time - Changes the frame index of Packed Disk Sequences or Packed Alembics that were generated via the MOPs Instancer.

MOPs Visualize Frame - Visualizes the "up", "normal", and "side" axes of any points with an "orient" attribute.