GPU Nodes in 3DCoat
What is a GPU Node?
A GPU Node in 3DCoat is a fundamental building block for creating procedural materials, textures, and complex visual effects. Under the hood, each node is driven by the NodeGraph Language (NGL), which is an extension of GLSL (OpenGL Shading Language).
When you connect nodes together in the 3DCoat Node Editor, the software dynamically compiles your node graph into a single, highly optimized shader that executes directly on your graphics processing unit (GPU). This architecture ensures that even incredibly complex materials and mathematical operations can be calculated and rendered in real-time without performance bottlenecks.
By using GPU Nodes, artists can create non-destructive, resolution-independent smart materials. Instead of relying solely on static bitmap images, you can construct surfaces using mathematical operations, procedural patterns, external textures, and underlying geometric data (like cavity, occlusion, and normals).
Documentation Overview
The GPUNodes directory contains detailed, category-by-category documentation for all standard procedural nodes available in 3DCoat.
To help artists and developers quickly find the tools they need, the documentation is divided into the following 14 categories, each with its own dedicated Markdown file:
- Color: Nodes designed for color correction and manipulation. Use these to adjust brightness, contrast, hue, saturation, and to blend multiple colors or textures together.
- GeometryIn: Nodes that provide access to fundamental geometric and spatial data from the scene or object (e.g., world position, surface normals).
- In: Input nodes that act as primary data sources. They fetch information from the 3D model, such as UV coordinates, cavity maps, and ambient occlusion.
- Layer: Nodes that provide access to the 3DCoat layer system, allowing your material to retrieve color and depth data from layers located below the current one.
- Material: High-level nodes for assembling, mixing, and breaking apart full PBR materials (handling Albedo, Gloss, Metalness, etc., simultaneously).
- Out: Output nodes that define the final result of your node graph, routing your calculated values into specific PBR channels so they can be rendered correctly.
- Pattern: Generators for procedural 2D textures, geometric shapes, and noise structures (e.g., tiles, wood grains, Voronoi cells).
- Pattern3D: Generators for true volumetric 3D noise and patterns that evaluate based on world position, ensuring they flow seamlessly across UV seams.
- ShaderToy: Specialized procedural effects and complex noises ported directly from Shadertoy.com, utilizing advanced mathematics for beautiful visual structures.
- Shape: Generators for basic geometric forms like circles, rings, and stripes, typically used as primitive building blocks for complex masks.
- Texture: Nodes for sampling and manipulating external bitmap images, providing functionalities for standard UV mapping and seamless triplanar projection.
- Tilable: Utilities for generating elements that can be seamlessly repeated across a surface, such as randomly scattered points.
- UV: Nodes used to manipulate, scale, rotate, offset, or procedurally distort texture coordinates.
- Vector: A comprehensive suite of mathematical operations (Add, Subtract, Multiply, Mix) that act as the fundamental logical glue controlling how data flows through your graph.
Each file within the GPUNodes directory provides a breakdown of every node within that category, detailing its exact purpose, available inputs, settings (dropdowns, checkboxes), and the resulting outputs.
한국어
English
Українська
Español
Deutsch
Français
日本語
Русский
Polski
中文 (中国)
Português
Italiano
Suomi
Svenska
中文 (台灣)
Dansk
Slovenčina
Türkçe
Nederlands
Magyar
ไทย
हिन्दी
Ελληνικά
Tiếng Việt
Lietuviškai
Latviešu valoda
Eesti
Čeština
Română
Norsk Bokmål