Lattice SOP
Summary[edit]
The Lattice SOP allows you to create animated deformations of its input geometry by manipulating grids or a subdivided box that encloses the input source's geometry.
It is much easier to deform an object by moving a few grids than trying to animate every single point of an object.
This SOP has very few buttons and looks simple, but it is important to understand how it works. The first input, called Geometry to Deform, is for the geometry you wish to deform. The second input, called Rest Geometry, must be an evenly spaced grid which fully encloses the geometry to deform. The third input, called Deformed Geometry, is a copy of the initial grid that is altered in some way, either by moving parts of it with animation channels, dragging its points in the Model Editor, or by running it through a Spring SOP which distorts it with the forces which simulate the laws of physics. Lattice computes a deformation based on the difference between the Rest Geometry and the Deformed Geometry, and applies it to the input geometry. The output of the SOP is the deformation of the geometry in the input source. If the Deformed Geometry is being animated, the output will also bend, twist and stretch every frame.
Parameters  Lattice Page
Group group
 Subset of points in the first input to be deformed. Accepts patterns, as described in Pattern Matching.
Deform Type deformtype
 ⊞  Choose if deformation should be done using a regularly spaced lattice or an arbitary point cloud.
 Lattice
lattice
 Deform with a regularly spaced lattice.
Both the Rest Geometry and the Deformed Geometry must be lattices with the point orders in a specified order. This is the order generated by the Box SOP when Use Divisions is turned on. The number of divisions must match that of the goemetry or an error is returned.
 Points
points
 Deform using an arbitrary point clouds.
Both the Rest Geometry and the Deformed Geometry must have the same point clouds. Note that any points not within the specified radius of a point in the Rest Geometry will not be deformed. The amount of deformation applied to a point is based upon the weighted average of the deltas of the Rest Geometry to the Deformed Geometry. The weighting function is taken from the specified metaball kernal, so behavior is similar to applying a magnet metaball to every point in the Rest Geometry.
Divisions divs
 ⊞  Must be set to match the number of divisions in the lattice grid object(s).
 X
divsx

 Y
divsy

 Z
divsz

Kernel Function kernel
 ⊞  Deformation by specifying a Kernal Function and Points makes it easier to deform arbitrary clouds of points, as this makes the topology of the lattice behave more like a metaball rather than as a fixed lattice. Kernel Function determines which meta kernel to use to determine the influence of a point. For more information on kernel types check here: Metaball Model Types
 Wyvill model
wyvill

 Elendt model
elendt

 Blinn model
blinn

 Links model
links

Radius radius
 The size of the points capture regions.
Operator Inputs
 Input 0  Geometry to deform.
 Input 1  Rest Geometry.
 Input 2  Deformed Geometry.
TouchDesigner Build:
SOPs 

• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • 