GeoDisplace
The GeoDisplace node moves each vertex along the normal to the surface according to channels in a texture map connected to the displace input. You can use displacement to quickly add detail to geometry without modeling it manually. This simple example shows using a CheckerBoard to displace the vertices on a card to create a bumpy surface.
Tip: GeoDisplace's classic 3D system equivalent is the DisplaceGeo node.
Inputs and Controls
Connection Type |
Connection Name |
Function |
Input |
displace |
The image you want to use to modify the 3D geometry. |
unnamed |
The previous stage in the scene you want to affect. |
Control (UI) |
Knob (Scripting) |
Default Value |
Function |
GeoDisplace |
|||
Mask |
mask_patterns |
{lastmodified} |
Specifies the mask pattern to match the prim names to affect. The default mask, {lastmodified}, applies the effect to whatever was changed by the previous node. A simple way to think of it is that {lastmodified} affects the node above. You can use standard glob-style variables, such as /*, to create masks or use individual prim names separated by spaces. For example, /GeoCube 1 /GeoCard3 applies the effect to only those prims. Tip: You can also use the cog menu, the Viewer picker, or drag and drop paths from the Scene Graph to create masks. |
Channels |
channels |
rgb |
The displace input’s channels to use for the displacement value. If you set this to something other than all or none, you can use the checkboxes on the right to select individual channels. |
Source |
source |
luminance |
The source channel you want GeoDisplace to get a displacement map from. For example, if you selected rgb or rgba from the channels dropdown menu, you can use the red, green, or blue channel, or the pixel luminance as the source. • luminance, red, green, blue, alpha - offset each vertex along its normal by the selected channel value supplied by the displace input. • rgb absolute - set each vertex's position to the XYZ position in the selected channel supplied by the displace input. • rgb relative - offset each vertex's current position by the XYZ position in the selected channel supplied by the displace input. |
Scale |
scale |
0.1 |
Increase or decrease the scale of the displacement. The higher the value, the bigger the displacement. |
Weight xyz |
weight |
1, 1, 1 |
To give x, y, and z scale different weightings, enter new weights the weight fields. By default, each weighting is set to 1. If you don’t want to make changes to a value, set its weight to 0. |
Offset xyz |
offset |
0, 0, 0 |
To offset x, y, and z values from the center of the geometry object, enter the value by which you want to offset them in the offset fields. For example, if you enter 0.5 in the offset y field, 0.5 is added to the y value. |
Filter Size |
filter_size |
5 |
Change the size of the filter used to sample the displace input texture. |
Filter |
filter |
Parzan |
Select the filtering algorithm to use when remapping pixels from their original positions to new positions. This allows you to avoid problems with image quality, particularly in high contrast areas of the frame (where highly aliased, or jaggy, edges may appear if pixels are not filtered and retain their original values). • Impulse - remapped pixels carry their original values. • Cubic - remapped pixels receive some smoothing. • Keys - remapped pixels receive some smoothing, plus minor sharpening (as shown by the negative -y portions of the curve). • Simon - remapped pixels receive some smoothing, plus medium sharpening (as shown by the negative -y portions of the curve). • Rifman - remapped pixels receive some smoothing, plus significant sharpening (as shown by the negative -y portions of the curve). • Mitchell - remapped pixels receive some smoothing, plus blurring to hide pixelation. • Parzen - remapped pixels receive the greatest smoothing of all filters. • Notch - remapped pixels receive flat smoothing (which tends to hide moire patterns). • Lanczos4, Lanczos6, and Sinc4 - remapped pixels receive sharpening which can be useful for scaling down. Lanczos4 provides the least sharpening and Sinc4 the most. |
UV Attribute Name |
uv_attrib_name |
uv |
Change the name of the attribute that’s used as the vertex’s UV coordinates to find the image pixel. Normals are stored as a named attribute for a piece of geometry. • Cf - surface color • N - normal • PW - world-space point • uv - texture coordinates • vel - point velocity. |
Recalculate Normals |
recalc_normals |
on |
When enabled, recalculate the normals after the displacement. Normals are usually incorrect after vertices have been moved. When disabled, use the normal values after displacement without recalculating. |