This page documents the development version of Graphite at dev.graphite.art, which may differ from the current release.
Nodes in this category direct how data flows through the graph, such as switching between inputs, repeating steps on a result, wrapping nodes into a custom subgraph, and caching results.
Nodes
| Node | Details | Possible Types |
|---|---|---|
| Catch | Uses the alternative where the content failed, and hides the error. | String → StringBool → BoolNumber → NumberInteger → IntegerVec2 → Vec2Transform → TransformVector → VectorGraphic → GraphicRaster → RasterColor → ColorGradient → GradientArtboard → ArtboardString[] → String[]Bool[] → Bool[]Number[] → Number[]Integer[] → Integer[]Vec2[] → Vec2[]Transform[] → Transform[]Vector[] → Vector[]Graphic[] → Graphic[]Raster[] → Raster[]Color[] → Color[]Gradient[] → Gradient[]Artboard[] → Artboard[] |
| Fallback | Keeps rendering with the fallback where the content failed, and still shows the error. | String → StringBool → BoolNumber → NumberInteger → IntegerVec2 → Vec2Transform → TransformVector → VectorGraphic → GraphicRaster → RasterColor → ColorGradient → GradientArtboard → ArtboardString[] → String[]Bool[] → Bool[]Number[] → Number[]Integer[] → Integer[]Vec2[] → Vec2[]Transform[] → Transform[]Vector[] → Vector[]Graphic[] → Graphic[]Raster[] → Raster[]Color[] → Color[]Gradient[] → Gradient[]Artboard[] → Artboard[] |
| Iterate | Feeds the content through the same steps over and over, each time starting from the previous result. Inside the steps, a Read node like Read String or Read Vector reads the result so far, and Read Index reads how many times around it has been. | String → StringString[] → String[]Number → NumberNumber[] → Number[]Vector → VectorVector[] → Vector[]Graphic → GraphicGraphic[] → Graphic[]Raster → RasterRaster[] → Raster[]Color → ColorColor[] → Color[]Gradient → GradientGradient[] → Gradient[] |
| Memoize | Helps speed up repeated renders in a computationally-heavy part of the node graph. Stores the last evaluated data that flowed through this node and immediately returns that data on subsequent renders if the context has not changed. | Vec2Components → Vec2ComponentsVec2ComponentsMapped → Vec2ComponentsMappedPathEvaluation → PathEvaluationPathEvaluationMapped → PathEvaluationMappedImageChannels → ImageChannelsImageChannelsMapped → ImageChannelsMapped |
| Placeholder | Shows the placeholder until the content has finished loading. | String → StringBool → BoolNumber → NumberInteger → IntegerVec2 → Vec2Transform → TransformVector → VectorGraphic → GraphicRaster → RasterColor → ColorGradient → GradientArtboard → ArtboardString[] → String[]Bool[] → Bool[]Number[] → Number[]Integer[] → Integer[]Vec2[] → Vec2[]Transform[] → Transform[]Vector[] → Vector[]Graphic[] → Graphic[]Raster[] → Raster[]Color[] → Color[]Gradient[] → Gradient[]Artboard[] → Artboard[] |
| Suppress Error | Keeps the value a failed node still gave, and hides its error. A failure without a value still stops everything that depends on it. | String → StringBool → BoolNumber → NumberInteger → IntegerVec2 → Vec2Transform → TransformVector → VectorGraphic → GraphicRaster → RasterColor → ColorGradient → GradientArtboard → ArtboardString[] → String[]Bool[] → Bool[]Number[] → Number[]Integer[] → Integer[]Vec2[] → Vec2[]Transform[] → Transform[]Vector[] → Vector[]Graphic[] → Graphic[]Raster[] → Raster[]Color[] → Color[]Gradient[] → Gradient[]Artboard[] → Artboard[] |
| Switch | Evaluates either the "If True" or "If False" input branch based on whether the input condition is true or false. | Bool → StringBool[] → String[]Bool → BoolBool[] → Bool[]Bool → NumberBool[] → Number[]Bool → IntegerBool[] → Integer[]Bool → Vec2Bool[] → Vec2[]Bool → TransformBool[] → Transform[]Bool → VectorBool[] → Vector[]Bool → GraphicBool[] → Graphic[]Bool → RasterBool[] → Raster[]Bool → ColorBool[] → Color[]Bool → GradientBool[] → Gradient[]Bool → ArtboardBool[] → Artboard[]Bool → String[]Bool[] → String[][]Bool → Bool[]Bool[] → Bool[][]Bool → Number[]Bool[] → Number[][]Bool → Integer[]Bool[] → Integer[][]Bool → Vec2[]Bool[] → Vec2[][]Bool → Transform[]Bool[] → Transform[][]Bool → Vector[]Bool[] → Vector[][]Bool → Graphic[]Bool[] → Graphic[][]Bool → Raster[]Bool[] → Raster[][]Bool → Color[]Bool[] → Color[][]Bool → Gradient[]Bool[] → Gradient[][]Bool → Artboard[]Bool[] → Artboard[][] |
| Throw Error | Raises an error with the message while the condition is true, so a custom node can reject input it can't work with. | String → StringBool → BoolNumber → NumberInteger → IntegerVec2 → Vec2Transform → TransformVector → VectorGraphic → GraphicRaster → RasterColor → ColorGradient → GradientArtboard → ArtboardString[] → String[]Bool[] → Bool[]Number[] → Number[]Integer[] → Integer[]Vec2[] → Vec2[]Transform[] → Transform[]Vector[] → Vector[]Graphic[] → Graphic[]Raster[] → Raster[]Color[] → Color[]Gradient[] → Gradient[]Artboard[] → Artboard[] |