| On this page |
Overview ¶
A COP network contains Copernicus nodes for real-time image manipulation in a 3D space. You can manually add a COP network or use the default COP network Houdini creates at /img (see How to access Copernicus).
Wiring COPs together controls the flow of layer and geometry data, from nodes that load or generate this data through nodes that modify the data.
Copernicus nodes have a different node body from other network nodes:
-
Copernicus nodes include a preview thumbnail in the node body. To hide or show the preview thumbnail, click the arrow in the bottom left corner of the node.
-
For nodes with multiple outputs, click the output name in the bottom right of the node to select which output displays.
-
You can’t assign custom shapes to COPs because they have a unique layout.
See Working with Copernicus nodes for more information about using Copernicus nodes.
Tip
Drag COP nodes and cameras into the Scene Viewer to look through them.
COP flags ¶
Icon |
Key |
Description |
|---|---|---|
|
Q or B |
Bypass disables the node, making it pass its input image through to the output unchanged. This is useful for testing and visualizing the effect the node has in the viewer. When a node is bypassed, the flag on the left of the node is lit yellow. |
|
W |
Shaded Template makes the node’s image visible (and snap-able) in the 3D viewer even if the node doesn’t have the display flag on. This lets you select components from the templated image in the viewport and components on the image with the display flag. To reset all shaded template flags, turn the flag on and then off on a random node. When the shaded template flag is on, the flag second from the right of the node is lit purple and a purple ring appears around the node. |
|
E |
Template makes the node’s image visible (and snap-able) in the 2D and 3D viewer even if the node doesn’t have the display flag on. When in the 3D viewer, the output of any nodes with the template flag on is shown as a gray outline. Use the shaded template flag instead of the template flag when you're in the 3D viewer to see more than an outline of the image. When the template flag is on, the flag second from the right of the node is lit pink and a pink ring appears around the node. |
|
R |
Display marks the node whose output appears in the COP viewer. Often this is at the end of the network, showing the cumulative output of the network, but you can (and will often) move the display flag around the network to check the output of different nodes. When the display flag is on, the flag on the right of the node is lit blue and a blue ring appears around the node. |
|
T |
3D Output lets the 3D viewer display something different from the 2D viewer. When on, the 3D output flag marks the node whose output appears in the 3D viewer. The 3D output flag also lets you quickly preview textures on a geometry that has UVs or on a heightfield. For example, turn on a geometry’s 3D output flag and turn on a layer’s display flag to preview the texture. See 3D output flag for more information. To turn on the 3D output flag, ⌃ Ctrl + |
Nodes ¶
-
Transforms a layer to align with another layer.
-
Shifts a layer to align pixelwise with another layer.
-
Creates a detached attribute.
-
Extracts a detached attribute from a geometry.
-
Inserts a detached attribute into a geometry.
-
Attribute Sample with Adjacency
Creates a texture map of an attribute sampled from geometry.
-
Extracts a detached attribute from a layer.
-
Generates an image with a 3D illusion.
-
Generates textures by baking between a low-resolution and high-resolution mesh at interactive speeds.
-
Sets up rays for baking, with a visualization state.
-
Curves images using handles or a captured region.
-
Blends two layers, VDBs, or attributes together.
-
Start of a block, containing its inputs.
-
End of a block, declaring its outputs.
-
Compiles a block and produces its geometry representation.
-
Applies a blur to a layer.
-
Creates a Bokeh effect by expanding each pixel by an aperture shape.
-
Finds the bounding rectangle of a mask.
-
Brightens a layer, VDB, or attribute.
-
Generates bubble noise.
-
Removes empty wires from a cable.
-
Combines two cables into one cable.
-
Combines input layers into a cable.
-
Renames a cable’s wires based on filters.
-
Sorts a cable’s wires by name.
-
Splits a cable based on filtering parameters.
-
Selects an input cable.
-
Extracts individual wires from a cable.
-
Caches the input layers for faster playback.
-
Creates a camera.
-
Blends two cameras.
-
Creates a layer in a camera’s space.
-
Adjusts the camera properties of a layer.
-
Generates cellular patterns.
-
Generates cellular noise.
-
Generates cellular noise from 3D locations.
-
Extracts a channel from a layer, VDB, or attribute.
-
Combines multiple Mono layers, VDBs, or attributes into one multichannel output.
-
Divides the input’s channels into Mono layers, VDBs, or attributes.
-
Swaps channels within a multichannel layer, VDB, or attribute.
-
Creates an alternating checker pattern.
-
Generates interference patterns that represent various vibration modes.
-
Keys an input based on hue, saturation, and luminance ranges.
-
Adds chromatic aberration to your image.
-
Clamps an input layer, VDB, or attribute.
-
Generates a billowy cloud noise.
-
Adjusts colors in the image.
-
Blends two normal maps together.
-
Creates a mask by comparing two layers, VDBs, or attributes.
-
Compares two pixel values on a layer, VDB, or attribute and outputs either a true or false input for that pixel.
-
Creates stamp/sprite attributes on points with randomization controls and inputs.
-
Initializes pixels to constant values.
-
Arranges input layers into a contact sheet.
-
Applies contrast to a layer, VDB, or attribute.
-
Converts depth layers between height, depth, and distance.
-
Converts normal layers between signed and offset.
-
Convolves a layer by a 3×3 kernel.
-
Convolves an image with an arbitrary kernel image using an FFT.
-
Copies stamps and applies transformations to the copies.
-
Detects corners in an input layer.
-
Pins a layer’s corners in a reference layer.
-
Crops a layer to a new size.
-
Performs a cross product of two RGB layers, VDBs, or attributes.
-
Builds a matte from cryptomatte layers.
-
Decodes a cyrptomatte into coverage and ID.
-
Encodes a coverage and object hash into a cryptomatte layer.
-
Generates a sharp and angular Worley noise type.
-
Generates a sharp and angular Worley noise type from 3D locations.
-
Computes the curl of a vector field.
-
Generate curl noise.
-
Generates 3D curl noise.
-
Computes the curvature of a layer.
-
Lets you interactively draw Bézier curves using tools similar to 2D illustration programs, as well as polylines and NURBS.
-
Lets you interactively draw and animate Bézier curves using tools similar to 2D illustration programs, as well as polylines and NURBS.
-
Defocuses an input layer.
-
Denoises an input layer.
-
Removes white noise from an image.
-
Computes the derivative of the source layer along its width (x-axis) and height (y-axis).
-
Removes color spill from an input layer.
-
Dilates or erodes a layer.
-
Distorts an input layer.
-
Distorts a layer over texture seams using adjacency.
-
Performs dot product between two layers.
-
Composites a copy of a layer under the original to create a shadow.
-
Detects edges in the input image.
-
Detects varying-width silhouette lines.
-
Detects varying-width self-occluding silhouettes.
-
Detects varying-width crease-lines.
-
Computes distances by solving the Eikonal equation.
-
Equalizes colors by stretching or shifting their range.
-
Generates a message, warning, or error.
-
Fills empty areas of an image using colors at the edges of non-empty areas.
-
Fills areas of a texture outside the UV islands with information from their island neighbors.
-
Computes the Fourier transform of an image.
-
Smooths out sharp changes in contrast.
-
Brings a COP node’s outputs into the current network.
-
Loads an image or video from disk.
-
Fills a layer with a constant value.
-
Flood fills the connected regions of a layer.
-
Boosts or suppresses spatial frequencies in an image.
-
Flips a layer horizontally, vertically, or diagonally.
-
Start of a Flow simulation block.
-
End of a Flow simulation block.
-
Flow Project Non-Divergent Multigrid
Removes divergent components from a 2-dimensional vector field.
-
Rasterizes text onto a layer from Type 1, TrueType, and OpenType fonts.
-
Generates fractal noise.
-
Generates fractal noise from 3D locations.
-
Generates a fractal of the source input that you can randomize.
-
Applies a mathematical function to a layer.
-
Applies gamma correction to a layer, VDB, or attribute.
-
Samples layers with a geometry’s attribute to create attributes from those layers.
-
Rasterizes geometry to generate an adjacency cable.
-
Converts a volume, VDB, or camera primitive into a layer or VDB.
-
Adds glow to an image based on its luminance.
-
Generates a pattern resembling an aurora display.
-
Generates a pattern resembling bark strips.
-
Generates a pattern resembling the bark of a birch tree.
-
Generates a pattern resembling drips.
-
Generates a pattern resembling galvanized steel.
-
Generates a higher-level noise pattern by layering simple noises.
-
Generates a pattern resembling leaking streaks.
-
Generates a pattern resembling sponge-like moisture.
-
Generates a pattern resembling mold spots.
-
Generates a pattern resembling the bark of a pine tree.
-
Generates a pattern resembling rust on a surface.
-
Generates a pattern resembling a rusty surface.
-
Generates a pattern resembling sheets.
-
Generates a pattern resembling circular wipe trails.
-
Converts between RGB and HSV color spaces, or modifies HSV.
-
Distorts the input layer to simulate heat around fire and other mirage effects.
-
Distorts the input layer using another layer to simulate heat around fire and other mirage effects.
-
Imagines a sphere for each pixel and determines how occluded that sphere is based on its surroundings.
-
Creates caustic patterns on the ground from a refractive height layer.
-
Converts a height layer to a normal layer.
-
Creates shadows using a virtual light source.
-
Clamps height values to a minimum and/or maximum value.
-
Simulates hydraulic and thermal erosion at a specific scale to create more realistic terrain.
-
Creates a mask based on different features of the heightfield.
-
Projects 3D geometry onto a heightfield.
-
Simulates loose material sliding down inclines and piling at the bottom.
-
Adds sedimentary layering patterns to a HeightField.
-
Creates stepped plains from the slopes of a HeightField.
-
Transforms a height layer in 2D.
-
Transforms a height layer in 3D.
-
Visualizes layers as a colored heightfield by converting them into geometry
-
Converts a heightfield into a grayscale mono layer.
-
Randomly tiles texture.
-
Builds a histogram from a layer.
-
Generates hyperbolic polygon tiles for texture patterns.
-
Creates a mask from an ID layer based on filtering parameters.
-
Converts an ID layer, VDB, or attribute into a float.
-
Converts an ID layer, VDB, or attribute into an RGB layer, VDB, or attribute.
-
Computes a signed distance field from changes in ID values.
-
Detects and then fixes or highlights illegal pixels in images.
-
Fetches the input to a subnetwork.
-
Integrates a VDB along camera rays.
-
Inverts a layer, VDB, or attribute.
-
Runs a block using inputs plugged into this node.
-
Runs a program saved into geometry using inputs plugged into this node.
-
Computes the Julia set to create a fractal.
-
Generates a grid of knitted fabric stitches.
-
Applies the Kuwahara filter, which creates painterly effects.
-
Generates procedural UV grid textures.
-
Computes the Laplacian of the source layer.
-
Applies grid-based deformation to a layer.
-
Generates a layer.
-
Combines all inputs.
-
Edits basic layer metadata.
-
Transfers layer properties from one layer, VDB, or attribute to another.
-
Adds or edits user-defined properties on a layer.
-
Removes user-defined properties from a layer.
-
Fills a layer from a detached attribute.
-
Render Curves into a Layer.
-
Sets a layer’s values from a VDB.
-
Converts a layer or VDB into geometry.
-
Creates points based on a layer.
-
Creates a point for each leaf of a VDB that would be in an envelope.
-
Adds radial and tangential distortion to a layer based on OpenCV coefficients.
-
Lights a layer given a light direction and normals.
-
Captures images from a live video source.
-
Applies logic operations to ID layers.
-
Apply a model trained using the ML Train Computer Vision TOP.
-
Combines several mask layers from an input cable into a single mask.
-
Creates a mask from 2D curves.
-
Transforms a layer to match a reference camera.
-
Reframes pixels of a layer to match a particular UDIM tile.
-
Applies a median filter to an image.
-
Mirrors an image based on an arbitrary number of planes.
-
Converts a layer, VDB, or attribute into a mono, VDB, or attribute.
-
Converts a mono layer into a heightfield.
-
Converts a mono layer, VDB, or attribute into an integer.
-
Converts a mono layer, VDB, or attribute into an RGB layer, VDB, or attribute.
-
Converts a mono layer into an RGBA layer.
-
Computes a signed distance field from an iso-level of a mono layer.
-
Runs a neural cellular automata model to evolve cell states.
-
Neural Cellular Automata Decode
Decodes a cell state from the Neural Cellular Automata Core into a visible pattern.
-
Neural Layer to Depth (MoGe-2)
Estimates metric-scale depth, normal, and position maps from an input image.
-
Creates a mask based on coordinates set through prompts.
-
Reconstructs a height layer from a normal layer.
-
Passes inputs to the outputs.
-
Converts color spaces using OCIO transforms.
-
Applies inference from an ONNX Machine Learning model.
-
Converts the layers of an ocean spectrum into an animated ocean surface.
-
Generates layers containing information for simulating ocean waves.
-
Executes an OpenCL kernel on layers, attributes, volumes, and VDBs.
-
Collects the outputs of a subnetwork.
-
Paint on a COP layer or UV-mapped geometry.
-
Generates phasor noise, which resembles a wave pattern.
-
Increases the size of pixels to pixelate an input layer.
-
Inflates a 2D SDF into a height layer.
-
Deletes points from a point cloud geometry.
-
Adds points to a point cloud geometry.
-
Merges point cloud geometries.
-
Creates points from blobs in an input layer.
-
Converts polar coordinate pixels to Cartesian pixels.
-
Generates a position map.
-
Samples an input texture by position.
-
Computes the prefix sum of a layer.
-
Premultiplies or un-premultiplies an RGBA layer.
-
Applies the preview material to geometry.
-
Projects a layer onto a target layer.
-
Changes the activation of VDBs in a Pyro simulation.
-
Advects VDBs by Velocity.
-
Advects a VDB by a flow map.
-
Applies a force around an axis to a velocity VDB.
-
Start of a Pyro simulation block.
-
End of a Pyro simulation block.
-
Constructs a flow map from a velocity VDB.
-
Applies a Buoyancy force.
-
Creates points representing implicit surfaces to add collision objects into a Pyro simulation.
-
Adds collision from pyro collision points representing implicit surfaces, into a VDB.
-
Configures a Pyro simulation.
-
Dissipates a VDB’s values over time.
-
Applies disturbance to a velocity VDB to break up still air.
-
Burns up the flame field.
-
Builds a light field of ambient illumination of a VDB.
-
Builds a light field of internal glow of a VDB.
-
Builds a light field of points lighting a VDB.
-
Builds an in-place MipMap of a VDB.
-
Pyro Project Non-Divergent Electro Static
Removes divergence from a velocity VDB.
-
Creates points representing implicit surfaces to source into a Pyro simulation.
-
Sources from a layer’s envelope into a VDB.
-
Sources points into a VDB.
-
Sources from pyro source points representing implicit surfaces, into a VDB.
-
Sources from a VDB into another VDB.
-
Apply turbulence to a velocity VDB.
-
Applies a uniform force.
-
Scales fluid velocity based on the fluid’s current speed.
-
Applies a vortex confinement force to a velocity field.
-
Runs a snippet of Python on layers.
-
Quantizes input data into discrete steps.
-
Converts RGB layers or attributes to RGBA.
-
Splits an RGB layer or attribute into UV and mono layers or attributes.
-
Converts RGBA layers or attributes to RGB.
-
Splits an RGBA layer or attribute into two UV layers or attributes.
-
Writes the output of a COP network to disk.
-
Generates linear and radial ramps.
-
Creates a mono layer, VDB, or attribute with random values.
-
Creates an RGB layer, VDB, or attribute with random colors.
-
Rasterizes curves onto a layer.
-
Rasterizes Gaussian Splats onto layers.
-
Rasterizes geometry onto a layer.
-
Rasterizes an implicit surface onto a layer.
-
Rasterizes a layer onto another layer’s camera.
-
Prepares geometry for the Rasterize Geometry COP.
-
Renders a volume viewed through a camera.
-
Performs ray tracing on an input mesh based on an origins and directions map.
-
Reaction-Diffusion Block Begin
Start of a Reaction-Diffusion simulation block.
-
Creates unique patterns by solving the reaction and diffusion of multiple chemicals as described by its inputs and parameters.
-
Refracts an image through a height layer.
-
Remaps a layer, VDB, or attribute.
-
Performs image scaling by changing the width, height, and pixel sizes.
-
Start of a Ripple simulation block.
-
End of a Ripple simulation block
-
Modifies the values for a Mono SDF layer.
-
Combines two Mono SDF layers.
-
Builds a 2D signed distance field of a selected shape.
-
Converts an SDF field to a mono image layer.
-
Converts an SDF field to an RGB color layer.
-
Imports SOP geometry into Copernicus.
-
Invokes a compiled SOP block on the inputs.
-
Invokes a geometry SOP graph on the inputs.
-
Scatters input stamps across the image using randomization controls.
-
Scatters input stamps along an input curve using randomization controls.
-
Segment a layer into connected components.
-
Segment a mono layer into bands of similar value.
-
Sequences parts of one or more inputs temporally.
-
Blends multiple layers together.
-
Sharpens an input layer to increase the definition of its edges.
-
Import live layers from the Solaris Viewport.
-
Converts a height layer into a direction layer.
-
Smoothly fills a region of a layer.
-
Solves Poisson’s equation inside a 2D boundary.
-
Solves Poisson’s equation in a rectangular region using geometric multigrid.
-
Transforms positions and UV values between spaces.
-
Space Transform with Adjacency
Transforms a vector from world space into tangent space.
-
Samples a layer onto a sphere.
-
Stamps layers from point positions.
-
Streaks the layer multiple times in different directions to create a star effect.
-
Stashes the input of the node on command and uses it as the node’s output.
-
Outputs the average, minimum and maximum values of the input layer
-
Compute statistics for each ID island.
-
Streaks an image, adding a motion blur effect.
-
Used to organize a collection of COPs into one node.
-
Applies a halftone dithering pattern relative to UVs.
-
Twists an image layer into a spiral shape.
-
Selects an input layer.
-
Selects an input based on what is connected.
-
Selects an output layer by the type of the inputs.
-
Creates a capybara, which can be used as test geometry.
-
Creates Otto, a production quality test character.
-
Creates a pig head, which can be used as test geometry.
-
Creates a rubber toy, which can be used as test geometry.
-
Creates a shader ball, which can be used to test shaders.
-
Creates a squab, which can be used as test geometry.
-
Creates a soldier, which can be used as test geometry.
-
Generates rectangular tiles for texture patterns.
-
Blends intraframe values for layers and VDBs.
-
Repeats input frame range to form a looping animation.
-
Combines its input at multiple times into a cable.
-
Cooks its input at a different time.
-
Applies a filmic tone mapping curve to compress a high dynamic range input into a displayable range.
-
Transforms a layer in 2D.
-
Transforms a layer in 3D.
-
Generates a texture by projecting X, Y, and Z textures onto the position layer.
-
Seamless texturing and normal mapping of triplanar projections without visible repetitions.
-
Generates UVs in three orthogonal projections.
-
Applies a filter to create Turing patterns.
-
Selects between two inputs based on if you wire in another input.
-
Combines its input at multiple UDIMs into a cable.
-
Represents a USD material referenced from disk.
-
Computes the inverse of a UV distortion map.
-
Generates a UV Map.
-
Creates a UV Map for each connected ID island.
-
Samples an input layer using a UV layer or attribute.
-
Generates UV coordinates for common 2D shapes.
-
Transforms the values of a UV layer in 2d space.
-
Converts Cartesian coordinate pixels to polar coordinate pixels.
-
Combines a UV and mono layer or two attributes to create an RGB layer or attribute.
-
Joins two UV layers or attributes into an RGBA layer or attribute.
-
Activates leaves on a VDB according to a point cloud.
-
Creates a point for each active leaf in a VDB.
-
Stores in each voxel that voxel’s position.
-
Rebuilds a VDB to match another VDB’s topology.
-
Creates multi-volume visualization.
-
Extracts a slice from a VDB as Geometry for visualization.
-
Builds a geometry visualizing the topology of a VDB.
-
Traces streamers through a velocity VDB.
-
Sets VDB values from the closest values in a layer.
-
Transforms values of an RGB layer, attribute, or Vector VDB in 3D space.
-
Transforms the values of a UV layer or attribute in 2D space.
-
Darkens the corners of an input layer.
-
Creates an RGBA Layer visualizing a 2d velocity field.
-
Generates a woven fabric pattern of interlacing fibers.
-
Performs a wipe transition between two images.
-
Generates Worley noise.
-
Generates Worley noise from 3D locations.
-
Runs a VEX snippet to modify layer values.
-
Composites two layers by depth.