Vector Cast

Description :

-A Vector Cast Node plugin for baking vector displacement
from hi-res sculpted mesh to hi-res base mesh,
in Object or Tangent space.

 

Usage :

-Load the base and sculpted meshes in the Layout, use different
names for the two surfaces, sculpted mesh should be triangulated.

-This node must be added to the surface of the base mesh,
selecting its UV Map, connect the ouput to the Diffuse Color.

-Select the Surface Baking Camera, select the low-res mesh, select its UV map,
Adjust "Offset from surface" to avoid artifacts in the baked image, set
the "Direction" to "Smoothed Vector", add a border especially with atlas UV map.
Check "Unseen by Camera" for the hi-res "Object properties" for safe render.

-"Scale" is a factor to increase/decrease the size of displacement,
if the output color must be a clamped vector, the rescaled maximum displacement
is limited to 1 meter, note that rescaling is often useless with 32-bits (or more)
floating point image file format.

-The "Normalize" option can be used instead of "Scale", it calculates the
max vector displacement length to rescale the baked displacement, an info panel
bottom of the panel is available after render, it shows this rescale factor
for filling accuratly the Vector Map node.

-If the baked surface is saved as a floating point format compatible with
negative color value (OpenExr), a 'zero' displacement is coded as black and
the displacement vector is directly convert as a color value,
Negative and positive displacement values can also be both exported as positive
colors with the "Shifted Color" option coupled with the "Normalize" option,
in this case a 'zero' displacement is coded as a middle grey.

-Two tangent spaces, A and B are provided but there is no guaranty for compatibility
with external application.

-"Optimize UV Border" may improve the UV Border option of the Surface
Baking Camera, but this is unpredictable and mainly for the Vector Map node
usage with the same option.

 

 

 

 

 

 


Vector Map

Description :

-A Vector Map Node plugin for displacement.

-Vector map generated by Vector Cast in Object/Texture space can be
directly loaded in this node in the Displacement Node Editor.

Usage :

-Set the same "Space" and "Scale" factor which was used in "Vector Cast node"
or any other external application.

-Two tangent spaces, A and B are provided, compatibility not guaranted for a
tangent map baked by an external application, if the result is not what you expect
try to bake/read in World space, with the "Invert X, Y Z" options for correcting
a different coordinate system.

-If both negative and positive values have been exported as positive colors,
'zero' displacement appears coded as a middle grey and the "Shifted Color"
option should be checked to convert color to vector properly, this is commonly
coupled with an appropriate "Original Scaling" factor which is applied here
as a divider for displacement.
Floating point image file format are compatible with negative color value,
in this case a 'zero' displacement is coded as black, the "Shifted Color"
option should be disabled.

-With "After Deformation" the preprocess is based on transformed point in
world coordinates including displacement (like mdd), updated for each frame.

-X, Y and Z axis displacements can be inverted, if the external baker application
has a different coordinate system.

-U and V Mapping component can be adjusted like in the Image Map node,
with U and V "Tile" value, "Tiling" mode and "Offset".

-"Optimize UV Border" may improve the UV Border if this option has been
checked in the Vector Cast node.

Notes :

-Since Color interpolation in Vector Cast is linear, baked roundish
displacement map might not appear so smoothed if it is applied to
higher resolution meshes.

-Discontinuous UV mapped points might not be correctly displaced
with subpatched polygons (100% SubpatchWeight value for these points could help).

-In case of patched geometry It is crucial to respect the same system (Subpatch or CC).

 

 

 

 

 

 


Poly Face

Description :

-A Poly Face node plugin for the Displacement Node Editor,
it rotates unconnected polygons of an object in the direction
of a selected scene item (i.e: billboard oriented toward the camera).

Usage :

-Add the node and select a target.

-Select the pivot type from the list, all are polygon related,
for "Down" the pivot is moved to the minimal Y value of the polygon
vertices or select the first or last polygon vertex, first middle
is the middle of the first edge and last middle the middle of the
last edge.
if the pivot type is changed, the geometry is rescanned.

-Heading or Pitch rotation can be locked.

-Connect the Delta ouput to the root input of the Displacement
node editor.

-Orientation can start from negative Z direction or from the normal
of each polygon for facing perfectly the item target, except for
bank angle.

 

 

 

 

 

 


Poly Move

Description :

-A Poly Move node plugin for the Displacement Node Editor,
for moving, rotating and scaling unconnected polygons of an object.

Usage :

-Add the node, connect a vector in the Move, Rotate, Scale channel,
works with local coordinates in texture nodes.

-Select the pivot type from the list (see Poly Face).

-If points belong to more than one polygon as vertices, the node will
only take account of the last poly index (cut, paste and merge the
right ones...).

-With "Normal Rotation" checked, Rotation is applied around the Polygon normal,
in "Polygon Space", this is much slower and limited, since Part normal orientation
is evaluated on heading and pitch axis only.

-For combining 'Poly Moving' with the object moving, rotation and scaling, the Poly transformations must be done in local coordinates, uncheck the "World Coordinates" option.

 

 

 

 

 

 


Part Move

Description :

-A Part Move node plugin for the Displacement Node Editor,
for moving, rotating and scaling groups of connected polygons in an object.

Usage :

-If the object contains subpatched polygon, "SubD Order" must be set to "Last".

-Select a Pivot, they are related to the averaged points in the part or
to the part bounding box (Bbox), except "Up Point" and "Down Point"
which are position of real point in the part.

-"Random Part Pivot" for adding a different offset to the pivot of each part,
it will be moved aproximatly in the part bounding box.

-"Pivot Offset" for adding the same offset to all part pivots, but animatable.

-If the Spot Info Node is used as input in Part Move node, it will output
normals and positions of the part pivot instead of spot/current point,
so with one unique (animated) input vector, parts can be moved in their
own direction, alligned on their normal.

-With "Normal Rotation" checked, Rotation is applied around the Part normal,
in "Part Space", this is much slower and it could fail also in some cases
since Part normal orientation is evaluated on heading and pitch axis only.
Part Normal is build with the normal of its poly, so it could be null/undefined
and not usable with this option.
To get a proper part normal for boxes, flip one of the main face but check
"Double-Sided" for its surface, you get a "dominant" normal.

-For combining 'Part Moving' with the object moving, rotation and scaling,
the Part transformations must be done in local coordinates, uncheck the
"World Coordinates" option.

-Rotation angles can be inversed with "Invert" option per angle.

-"Show ID" option displays the Part ID in OpenGL preview, but no 'overlay'
in Shaded Preview modes.

 

 

 

 

 

 


Part Info

Description :

-A Part Info node plugin for the Displacement Node Editor,
ouput index, normal, local and world center position from groups of connected
polygons in an object.

Usage :

-Part infos are only returned if this node is connected directly or
undirectly in Part Move.

-Part Index Can be used as Lag in the Time Lag node to add offset
to each poly group, in a Part Move node animation.

 

 

 

 

 

 


Shifter

Description :

-A Shifter node plugin for animating extruded geometry like pipes or ribbon
in the Displacement Node Editor.
Mesh points must have incremental index, like meshes generated with
Modeler Rail Extrude Tool, uniform segment length for constant speed.

Usage :

-Input number of based point (vertex number of extruded polygon).

-Use the Shift envelope or input, to animate from 0% to 100% the extrusion
effect.

-There are two modes for shifting polygons "From Base" or "From Top"
of the mesh.

-Input in Offset the number of point to exclude.

-Shifter works with subD meshes with Displacement Map Order set to "Last".


Spline Deformer

Description :

-A Spline Deformer node plugin for the Displacement Node Editor,
deforms a Mesh Object along an animatable B-Spline.

-The Spline is build with a list of Null items, picked or added in the scene.

-The shape of the Spline is controlled by the Position and the Z-Direction of the knots/items,
the Z-Direction is modified by the Heading/Pitch angles and the Z-Scale value of the item.

-The Bank angle and X-Y Scale values of the item doesn't affect the Spline,
but controls the lateral deformation of the mesh.

-The "Shift Offset" nodal input allows to move the Object along the Spline
by a given distance, fixed or animated.

-The "Shift Scale" nodal input allows to scale the Object along the Spline
by a given factor, fixed or animated.

-The "Shift Extend" nodal inputs allow to extend the Object along the Spline
by a given factor, fixed or animated for a 'growth' effect.
"Shift Extend 2" for growing effect from the start of the mesh instead of the end.

-With the "Weight" nodal input it is possible to filter the points of the Mesh Object,
for discarding them from displacement, in conjunction with the "Delta" input several
Spline Deformer nodes with their own Spline, can be connected in a chain for deforming
different groups of points or parts of the Mesh Object.

-The Spline Deformer node can be used in a Item Motion node editor context
by using the "Covered Dist" or "Covered Percent" nodal input,like in the Motion Info node,
in this case resting the Spline position is useless and not recommended,
this allows to move/rotate an Object on an animated path.

 

Usage :

Basic setup:
-Enable and open the Displacement Node Editor of the Mesh Object.
-Add the Spline Deformer node and open its panel.
-Add a few Null Objects to the Item Multilist, adjust the position and direction
of the Null in the scene for conforming the Spline to the original shape of the Mesh Object.
-Press the "Record Spline Rest Position" button.
-Connect the "Delta" output to the input of the Displacement node editor.

-Now move, rotate or scale the Null Object, create keys for different frames
for animating the deformation.

 

Three ways to add Items for building a Spline:
1-"Add Selected", pick one by one, existing items from the scene in the "Object List".
2-Set the desired number of items, at a "Distance" from each other and "Create Item(s)",
they will be parented to the Mesh Object.
For one item only, it will be inserted after the current selected item in the list.
3-"Load Spline", select a Lwo Object with one single Spline, creates conformed Nulls Objects,
respecting the optional Begin and End Control Points, this Object is not added to the scene.
4-"Add Children", for adding all children of the Object in a new item list,
spline rest position at the current frame, usefull command after "Cloning Hierarchy".

"Up" and "Down" buttons for moving a selected item in the list.
"Remove Item" for removing a selected item from the list, but not deleted from the scene.
"Clear All" for clearing the entire list of items.

Spline Deformer node can't displace the Object until the default/rest position of the Spline
has been recorded, this can be done automatically or manually with the "Record Spline Rest Position"
button. Note that some change in the settings may cancel the rest position,
so the user is informed about the state of the rest position, "Recorded" or "Not Recorded".
"Rest Item Position" records the rest position of the selected item only.

-"Load Pose From Spline" loads all knot positions and rotations from a Modeler Spline,
creates keys for items at the current time.

"Align Item To Spline" balances the curvature of this section of the Spline,
by adjusting the Heading/Pitch angles and the Z-Scale value of the selected item,
like in a Modeler Spline Object.
This doesn't change the Bank angle and X-Y Scale value.

-If the "Spline Tension" is set to the default "Knot Z-Scale" the tension must
be adjusted with the knots manually, in "Smoothed" mode it is adjusted automatically.

Three "Deformation" modes,
"Fixed Knot" the Mesh Object stays anchored to the Spline Knots, the Mesh may be
distorted and its length is variable.
"Fixed Object Length" the original length of the Mesh Object is maintained along the curve, recommended with a nodal "Shift" input.
"Uniform" the length of Mesh Object covers the same percentage of the spline, maintaining
the quality of the Mesh.

 

Select the appropriate Mesh coordinates for displacement with "World Coordinates".

"Curve Samples" number of Spline samples evaluated between two knots
for the mesh deformation.
"Show Spline", enables/disables the Spline OpenGL Preview.
"Preview Samples" number of Spline samples evaluated between two knots
for the opengl Spline preview, this doesn't affect the quality of displacement.

 

 

 

 

 

 


Meta Fit

Description :

-A Meta Fit node plugin, for fitting the current object to the deforming
Reference Object.

Usage :

-Select the Reference in the Scene Object list.

-The Reference Object can be restricted to a selected Weight Map, only
weighted polygons are used.

-With the "After Deformation" mode, the current object can be displaced, before fitting to the Reference geometry.