{"id":4244,"date":"2022-11-27T23:51:15","date_gmt":"2022-11-27T23:51:15","guid":{"rendered":"https:\/\/3dcoat.com\/documentation\/?post_type=manual_documentation&#038;p=4244"},"modified":"2025-08-04T08:44:35","modified_gmt":"2025-08-04T08:44:35","slug":"sculpt-shaders-nodes-library","status":"publish","type":"manual_documentation","link":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/","title":{"rendered":"Sculpt shader Nodes Library"},"content":{"rendered":"\n<p id=\"tw-target-text\">The node editor allows you to build GLSL shaders visually. <br \/>Instead of writing code, you can create and connect nodes in a graphical framework. <\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"procedural_shaders\">Procedural shaders using Node Editor<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders#procedural_shaders\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p id=\"tw-target-text\">The node editor instantly displays your changes giving instant feedback. <br \/>Is simple enough for users new to creating shaders.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"1024\" height=\"549\" src=\"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1.png?wsr\" alt=\"\" class=\"wp-image-11695\" srcset=\"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1.png 1024w, https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1-300x161.png 300w, https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1-768x412.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"node_editor_description\">Node description<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><em>A<strong> Node <\/strong>defines an input, output,<\/em> or operation on the Shader editor, depending on its available <em>Ports<\/em>. <\/p>\n\n\n\n<p>A Node may have any number of input and\/or output <em>Ports<\/em>. You create a graph by connecting these Ports with Edges. <br \/>A Node might also have any number of <em>Controls<\/em>; there are controls on the Node that do not have <em>Ports<\/em>.<\/p>\n\n\n\n<p>You can collapse a Node by clicking the Collapse button in the top-right corner of the Node. <br \/>This will hide all unconnected <em>Ports<\/em>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>The components of a Node are the <\/strong>port &amp; edge<\/h3>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"port\">Port<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders#port\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><em>A Port defines an input or output on a Node<\/em>. Connecting Edges to a Port allows data to flow through the Shader Graph node network.<\/p>\n\n\n\n<p>Each Port has a Data Type that defines what Edges can be connected to. Each Data Type has an associated color for identifying its type. Only one Edge can be connected to any input Port, but multiple Edges can be connected to an output Port.<\/p>\n\n\n\n<p>You can open a contextual Create Node Menu by dragging an Edge from a Port with the left mouse button and releasing it in an empty workspace area.<\/p>\n\n\n\n<p><strong>Default Inputs:<\/strong>&nbsp;Each Input <em><strong>Port<\/strong><\/em>, a <em><strong>Port<\/strong><\/em> on the left side of a Node implying that it is for inputting data into the Node, has a Default Input. <br \/>This is a small field connected to the Port when no Edge is connected. This field will display input for the port&#8217;s Data Type unless the Port has a Port Binding.<br \/>If a Port does have a Port Binding, the default input field may display a special field, such as a drop-down for selecting UV channels, or just a label to help you understand the intended input, such as coordinate space labels for geometry data.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"edge\">Edge<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders#edge\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><em>An <strong>Edge<\/strong> defines a connection between two Ports<\/em>. Edges define how data flows through the Shader editor node network. They can only be connected from an input Port to an output Port.<\/p>\n\n\n\n<p><em>Each Edge has a Data Type<\/em> that defines what Ports it can be connected to. Each Data Type has an associated color for identifying its type.<\/p>\n\n\n\n<p>You can create a new Edge by clicking and dragging from a Port with the left mouse button. Edges can be deleted with Delete (Windows), Command + Backspace (OSX), or from the context menu by right-clicking on the Node.<\/p>\n\n\n\n<p>You can open a contextual Create Node Menu by dragging an Edge from a Port with the left mouse button and releasing it in an empty workspace area.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote has-background is-layout-flow wp-block-quote-is-layout-flow\" style=\"background-color:#f1f1f1\">\n<p>There are many available Nodes in Shader Graph. For a full list of all available Nodes see the&nbsp;<a href=\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/sculpt\/shaders\/sculpt-shaders-nodes-library\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>Node Library<\/em><\/a>.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"bake_shader_node\">Bake shader node<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders#bake_shader_node\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p>Once you get your procedural shader, this is the command used to bake procedural to geometry:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"200\" height=\"317\" src=\"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/10\/bakeshadernode-1.png\" alt=\"\" class=\"wp-image-3288\" srcset=\"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/10\/bakeshadernode-1.png 200w, https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/10\/bakeshadernode-1-189x300.png 189w\" sizes=\"(max-width: 200px) 100vw, 200px\" \/><\/figure>\n<\/div>\n\n\n<p><strong>Bake shader nodes:<\/strong>&nbsp;Bake procedural mesh deformers and materials from the Node editor to the real color\/displacement. It may be helpful for the export.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Library of Nodes<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"clear\">Clear<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#clear\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p>Clear the shader editor panel leaving it empty.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"blend\">Blend<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#blend\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>Sum:&nbsp;<\/strong>Returns the sum of the two input values.<br \/><strong>Subtraction:<\/strong>&nbsp;Returns the result of input A minus input B.<br \/><strong>Average:<\/strong>&nbsp;This node will average grayscale inputs. Each input can be individually weighted.<br \/><strong>Mix:<\/strong>&nbsp;Mixture of input A and input B.<br \/><strong>Divide:<\/strong>&nbsp;Returns the result of input A divided by input B.<br \/><strong>Abs:<\/strong>&nbsp;Returns the absolute value of input In.<br \/><strong>Clamp:<\/strong>&nbsp;Returns the input In clamped between the minimum and maximum values defined by inputs Min and Max, respectively.<br \/><strong>Max:<\/strong>&nbsp;Returns the largest of the two input values, A and B.<br \/><strong>Min:<\/strong>&nbsp;Returns the smallest of the two input values, A and B.<br \/><strong>Round:<\/strong>&nbsp;Returns the value of input In rounded to the nearest integer or whole number.<br \/><strong>Saturate:<\/strong>&nbsp;Returns the value of input In clamped between 0 and 1.<br \/><strong>Smoothstep:<\/strong>&nbsp;Returns the result of a smooth Hermite interpolation between 0 and 1 if input In is between inputs Edge1 and Edge2.<br \/><strong>Step:<\/strong>&nbsp;Returns 1 if the value of input In is greater than or equal to the value of input Edge; otherwise, returns 0.<br \/><strong>Trunc:<\/strong>&nbsp;Returns the integer, or whole number, component of the value of input In.<br \/><strong>Multiplication:<\/strong>&nbsp;Returns the result of input A multiplied by input B.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"geometry\">Geometry<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#geometry\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>ACos:<\/strong>&nbsp;Returns the arccosine of each component the input In as a vector of equal length.<br \/><strong>ASin:<\/strong>&nbsp;Returns the arcsine of each component the input In as a vector of equal length.<br \/><strong>ATan:<\/strong>&nbsp;Returns the arctangent of the value of input In. Each component should be within the range of -Pi\/2 to Pi\/2.<br \/><strong>Cos:<\/strong>&nbsp;Returns the cosine of the value of input In.<br \/><strong>Cosh:<\/strong>&nbsp;Returns the hyperbolic cosine of input In.<br \/><strong>Cross:<\/strong>&nbsp;Returns the cross product of the inputs A and B values.<br \/><strong>Distance:<\/strong>&nbsp;Returns the Euclidean distance between the inputs A and B values.<br \/><strong>Dot:<\/strong>&nbsp;Returns the dot product, or scalar product, of the values of the inputs A and B.<br \/><strong>Length:<\/strong>&nbsp;Returns the length of input In.<br \/><strong>Normalize:<\/strong>&nbsp;Returns the normalized vector of input In.<br \/><strong>Reflect:<\/strong>&nbsp;Returns a reflection vector using input In and a surface normal Normal.<br \/><strong>Refract:<\/strong>&nbsp;Returns a refraction vector using input In and a surface normal Normal.<br \/><strong>Sin:<\/strong>&nbsp;Returns the sine of the value of input In.<br \/><strong>Sinh:<\/strong>&nbsp;Returns the hyperbolic sine of input In.<br \/><strong>Tan:<\/strong>&nbsp;Returns the tangent of the value of input In.<br \/><strong>Tanh:<\/strong>&nbsp;Returns the hyperbolic tangent of input In.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"math\">Math<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#math\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>Ceil:<\/strong>&nbsp;The ceiling returns the smallest integer value or a whole number greater than or equal to the value of input In.<br \/><strong>Exp:<\/strong>&nbsp;Return the exponential value of input In.<br \/><strong>Exp2:<\/strong>&nbsp;Return 2 raised to the power of the parameter.<br \/><strong>Floor:<\/strong>&nbsp;Return the largest integer value or whole number that is less than or equal to the value of input In.<br \/><strong>Mod:<\/strong>&nbsp;Modulo returns the remainder of input A divided by input B.<br \/><strong>Fract:<\/strong>&nbsp;Fraction returns the fractional (or decimal) part of input In, which is greater than or equal to 0 and less than 1.<br \/><strong>Log:<\/strong>&nbsp;Return the logarithm of input In.<br \/><strong>Log2:<\/strong>&nbsp;Return the base 2 logarithm of the parameter.<br \/><strong>Mul:<\/strong>&nbsp;Multiply returns the result of input A multiplied by input B.<br \/><strong>Pow:<\/strong>&nbsp;Return the result of input A to the power of input B.<br \/><strong>Inverse sqrt:<\/strong>&nbsp;Return the result of 1 divided by the square root of input In.<br \/><strong>Sign:<\/strong>&nbsp;Return -1 if the value of input In is less than zero, 0 if equal to zero, and 1 , if greater than zero.<br \/><strong>Sqrt:<\/strong>&nbsp;Return the square root of input In.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"textures\">Textures<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#textures\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>ndFilePath:<\/strong>&nbsp;Open file path selection to assign a texture.<br \/><strong>ndSampler2D:<\/strong>&nbsp;A sampler2D is used to do a lookup in a standard texture image; a samplerCube is used to do a lookup in a cube map texture. <br \/>The value of a sampler variable is a reference to a texture unit. The value tells which texture unit is invoked when the sampler variable is used for texture lookup.<br \/><strong>UV Texture:<\/strong>&nbsp;Assign clamp and smooth values to UV texture.<br \/><strong>TriPlanarTexture:<\/strong>&nbsp;A method of generating UVs and sampling a texture by projecting in world space.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"effects\">Effects<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#effects\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>Curve:<\/strong>&nbsp;Assign values by curve deform graph.<br \/><strong>Invert:<\/strong>&nbsp;Inverts the colors of input In on a per-channel basis. This Node assumes all input values are in the range 0 &#8211; 1.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"convert\">Convert<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#convert\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>To Vector:<\/strong>&nbsp;Convert RBGA values to the greyscale channel.<br \/><strong>To Channels:<\/strong>&nbsp;Convert Greyscale values to RGBA channel.<br \/><strong>Degrees:<\/strong>&nbsp;Returns the value of input In converted from radians to degrees. One radian equals approximately 57.2958 degrees, and a full rotation of 2 Pi radians equals 360 degrees.<br \/><strong>Radians:<\/strong>&nbsp;Returns the value of input In converted from degrees to radians.<br \/>One degree is equivalent to approximately 0.0174533 radians, and a full rotation of 360 degrees is equal to 2 Pi radians.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"patterns2d\">Patterns2D<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#patterns2d\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>BrickPattern:<\/strong>&nbsp;The Brick pattern adds a procedural texture producing bricks.<br \/><strong>SwirlyPattern:<\/strong>&nbsp;The Swirly pattern adds a procedural texture, producing a swirl.\\&nbsp;VonoiPattern:&nbsp;The Voronoi Texture node evaluates a Worley Noise at the input texture coordinates.<br \/><strong>CMYKHalftonePattern:<\/strong>&nbsp;Halftoning is also commonly used for printing color pictures. The general idea is the same, by varying the density of the four secondary printing colors, cyan, magenta, yellow, and black (abbreviation CMYK), any particular shade can be reproduced.<br \/><strong>Mountains:<\/strong>&nbsp;Is used to add a procedural texture producing Fractal Brownian motion to create a fractal-looking pattern.<br \/><strong>Ocean:<\/strong>&nbsp;This is a flexible shader for creating seas, oceans, rivers, and other water surfaces.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"patterns3d\">Patterns3D<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#patterns3d\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>HardNoise3D:<\/strong>&nbsp;Generates a gradient, or Perlin, noise based on input UV.<br \/><strong>Celular3D:<\/strong>&nbsp;Generates a Celular noise based on input UV.<br \/><strong>InverseSphericalFibonacci:<\/strong>&nbsp;Generates yield nearly uniform point distributions on the unit sphere.<br \/><strong>Voronoi3D:<\/strong>&nbsp;Generates a Voronoi, or Worley, noise based on input UV.<br \/><strong>SoftNoise3D:<\/strong>&nbsp;Generates a simple, or Value, noise based on input UV.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"avobjects\">AVObjects<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#avobjects\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>AVPlane:<\/strong>&nbsp;A class for generating plane geometries.<br \/><strong>AVSphere:<\/strong>&nbsp;Sphere is a geometry class for generated spheres with a given &#8216;Ray position&#8217; and &#8216;Radius&#8217;.<br \/><strong>AVBox:<\/strong>&nbsp;Box is a geometry class for a rectangular cuboid with a given &#8216;position&#8217; and &#8216;size&#8217;.<br \/><strong>AVEllipsoid:<\/strong>&nbsp;is a geometry class for an ellipse with a given &#8216;position&#8217; and &#8216;size&#8217;.<br \/><strong>AVTorus:<\/strong>&nbsp;A class for generating torus geometries.<br \/><strong>AVCappedTorus:<\/strong>&nbsp;A class for generating modified torus geometries.<br \/><strong>AVHexPrism:<\/strong>&nbsp;The hexagonal prism is a prism with a hexagonal base.<br \/><strong>AVCapsule:<\/strong>&nbsp;Capsule is a geometry class for a capsule with a given radius and height.<br \/><strong>AVRoundCone:<\/strong>&nbsp;A class for generating cone geometries with a rounded base.<br \/><strong>AVEquilateralTriangle:<\/strong>&nbsp;A class for generating Equilateral Triangle geometries.<br \/><strong>AVTriPrism:<\/strong>&nbsp;A triangular prism is a three-sided prism; it is a polyhedron made of a triangular base.<br \/><strong>AVCylinder:<\/strong>&nbsp;A class for generating cylinder geometries.<br \/><strong>AVCylinderArbitrary:<\/strong>&nbsp;A class for generating tube geometries.<br \/><strong>AVCone:<\/strong>&nbsp;A class for generating cone geometries.<br \/><strong>AVConeDot:<\/strong>&nbsp;A class for generating cone geometries.<br \/><strong>AVConeD:<\/strong>&nbsp;A class for generating cone geometries.<br \/><strong>AVSolidAngle:<\/strong>&nbsp;A solid angle is a measure of the amount of the field of view from some particular point that a given object covers. It measures how large the object appears to an observer looking from that point.<br \/><strong>AVOctahedron:<\/strong>&nbsp;A class for generating an octahedron geometry.<br \/><strong>AVPryramid:<\/strong>&nbsp;A pyramid is a geometry whose outer surfaces are triangular and converge to a single step at the top.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"globalio\">GlobalIO<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#globalio\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>IOTime:<\/strong>&nbsp;Provides access to various Time parameters in the shader.<br \/><strong>IOMouse:<\/strong>&nbsp;This shader changes color wherever you click on the board, adjusting the color based on mouse position.<br \/><strong>IOLightDir:<\/strong>&nbsp;Modify the shader to have specular lighting in it.<br \/><strong>IOIteration:<\/strong><br \/><strong>IOCameraPosition:<\/strong>&nbsp;Provides access to various parameters of the current Camera.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"geometryio\">GeometryIO<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#geometryio\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>ioUV:<\/strong>&nbsp;Provides access to the mesh vertex or fragment&#8217;s UV coordinates.<br \/><strong>ioFragCoord:<\/strong>&nbsp;This is an input variable that contains the window relative coordinate for any location within the pixel or one of the fragment samples.<br \/><strong>ioPosition:<\/strong>&nbsp;Provides access to the mesh vertex or fragment&#8217;s Position.<br \/><strong>ioNormal:<\/strong>&nbsp;Provides access to the mesh vertex or fragment&#8217;s Normal Vector.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"materialio\">MaterialIO<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#materialio\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>IODisplacement:<\/strong>&nbsp;Unlike bump mapping, which is a shading effect and does not create actual geometry, displacement mapping correctly generates new geometry from a base mesh and specifies displacement map by displacing the mesh vertices along their normals according to the displacement map.<br \/><strong>IOCavity:<\/strong>&nbsp;Cavity maps are a black and white mask that will give you access to crevices and high-frequency details on your model.<br \/><strong>IOOcclusion:<\/strong>&nbsp;An invisible material that hides objects rendered behind it.<br \/><strong>IOAlbedoColor:<\/strong>&nbsp;Albedo can be considered a basic \u201creflectivity color\u201d for a material.<br \/><strong>IOReflectionColor:<\/strong>&nbsp;This is the reflection of light or other waves or particles from a surface such that a ray incident on the surface is scattered at many angles rather than at just one angle, as in the case of specular reflection.<br \/><strong>IOEmissive:<\/strong>&nbsp;This parameter specifies the base amount of light a material emits (in units of Lumens).<br \/><strong>IOMetalness:<\/strong>&nbsp;This is a black-and-white texture that acts as a mask that defines areas on a texture set or material that behave like a metal (white) and do not (black).<br \/><strong>IOGloss:<\/strong>&nbsp;The glossy transparent material is a generalization of the specular material to allow non-perfect (i.e., rough) reflection and refraction.<br \/><strong>IOOpacity:<\/strong>&nbsp;Float in the range of 0.0 &#8211; 1.0, indicating how transparent the material is. A value of 0.0 indicates fully transparent, and 1.0 is fully opaque.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"variables\">Variables<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders:procedural_shaders:node_library#variables\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>GetLight:<\/strong>&nbsp;Provides access to the Scene&#8217;s Ambient color values.<br \/><strong>FloatVariable:<\/strong>&nbsp;Defines a Float value in the shader. If Port X is not connected with an Edge, this Node defines a constant Float.<br \/><strong>IntVariable:<\/strong>&nbsp;Integer defines a constant Float value in the shader using an Integer field.<br \/><strong>ColorVariable:&nbsp;<\/strong>Defines a constant Vector 4 value in the shader using a Color field.<br \/><strong>Transform:<\/strong>&nbsp;Transformation of vertices of primitives (e.g., triangles) from the original coordinates (e.g., those specified in a 3D modeling tool) to screen coordinates.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"tutorial\">Tutorial<a href=\"https:\/\/3dcoat.com\/dokuwiki\/doku.php?id=general:sculpt_workspace:shaders#tutorial\"><\/a><\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p><strong>Make procedural shaders for Sculpt objects using&nbsp;<a href=\"https:\/\/youtu.be\/OJrRCg1qp14\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">Node graph editor<\/a><\/strong>&nbsp;by Alexn007.<\/p>\n\n\n\n<p><a href=\"https:\/\/youtu.be\/b4671VbylCs\"><strong>Node System for shaders:<\/strong><\/a> The video demonstrates a short guide to the Node System for shaders in 3DCoat.<\/p>\n","protected":false},"author":3,"featured_media":0,"parent":11654,"menu_order":1,"template":"","manualdocumentationcategory":[9],"manual_doc_tag":[188],"class_list":["post-4244","manual_documentation","type-manual_documentation","status-publish","hentry","manualdocumentationcategory-manual","manual_doc_tag-nodes"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Sculpt shader Nodes Library - 3DCoat Documentation<\/title>\n<meta name=\"description\" content=\"The node editor allows you to build GLSL shaders visually. Instead of writing code, you can create and connect nodes in a graphical way. The node editor instantly displays your changes and is simple enough for users new to creating shaders\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sculpt shader Nodes Library - 3DCoat Documentation\" \/>\n<meta property=\"og:description\" content=\"The node editor allows you to build GLSL shaders visually. Instead of writing code, you can create and connect nodes in a graphical way. The node editor instantly displays your changes and is simple enough for users new to creating shaders\" \/>\n<meta property=\"og:url\" content=\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/\" \/>\n<meta property=\"og:site_name\" content=\"3DCoat Documentation\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/3DCoat\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-04T08:44:35+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1.png?wsr\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@3DCoatOfficial\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/\",\"url\":\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/\",\"name\":\"Sculpt shader Nodes Library - 3DCoat Documentation\",\"isPartOf\":{\"@id\":\"https:\/\/3dcoat.com\/documentation\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1.png?wsr\",\"datePublished\":\"2022-11-27T23:51:15+00:00\",\"dateModified\":\"2025-08-04T08:44:35+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/#primaryimage\",\"url\":\"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1.png?wsr\",\"contentUrl\":\"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1.png?wsr\",\"width\":1024,\"height\":549},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/3dcoat.com\/documentation\/nl_NL\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Workspaces Rooms\",\"item\":\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Nodes\",\"item\":\"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Biblioteca de n\u00f3s de shaders de esculpir\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/3dcoat.com\/documentation\/#website\",\"url\":\"https:\/\/3dcoat.com\/documentation\/\",\"name\":\"3DCoat Documentation\",\"description\":\"Information about starting to use and learning how to use all the features of the 3DCoat.\",\"publisher\":{\"@id\":\"https:\/\/3dcoat.com\/documentation\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/3dcoat.com\/documentation\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/3dcoat.com\/documentation\/#organization\",\"name\":\"Pilgway\",\"url\":\"https:\/\/3dcoat.com\/documentation\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/3dcoat.com\/documentation\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/09\/logo3DCoatWhite-1.png\",\"contentUrl\":\"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/09\/logo3DCoatWhite-1.png\",\"width\":876,\"height\":190,\"caption\":\"Pilgway\"},\"image\":{\"@id\":\"https:\/\/3dcoat.com\/documentation\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/3DCoat\",\"https:\/\/x.com\/3DCoatOfficial\",\"https:\/\/www.youtube.com\/c\/PILGWAY3DCoat\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Sculpt shader Nodes Library - 3DCoat Documentation","description":"The node editor allows you to build GLSL shaders visually. Instead of writing code, you can create and connect nodes in a graphical way. The node editor instantly displays your changes and is simple enough for users new to creating shaders","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/","og_locale":"en_US","og_type":"article","og_title":"Sculpt shader Nodes Library - 3DCoat Documentation","og_description":"The node editor allows you to build GLSL shaders visually. Instead of writing code, you can create and connect nodes in a graphical way. The node editor instantly displays your changes and is simple enough for users new to creating shaders","og_url":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/","og_site_name":"3DCoat Documentation","article_publisher":"https:\/\/www.facebook.com\/3DCoat","article_modified_time":"2025-08-04T08:44:35+00:00","og_image":[{"url":"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1.png?wsr","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_site":"@3DCoatOfficial","twitter_misc":{"Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/","url":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/","name":"Sculpt shader Nodes Library - 3DCoat Documentation","isPartOf":{"@id":"https:\/\/3dcoat.com\/documentation\/#website"},"primaryImageOfPage":{"@id":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/#primaryimage"},"image":{"@id":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/#primaryimage"},"thumbnailUrl":"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1.png?wsr","datePublished":"2022-11-27T23:51:15+00:00","dateModified":"2025-08-04T08:44:35+00:00","breadcrumb":{"@id":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/#primaryimage","url":"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1.png?wsr","contentUrl":"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/11\/image-7-1024x549-1.png?wsr","width":1024,"height":549},{"@type":"BreadcrumbList","@id":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/sculpt-shaders-nodes-library\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/3dcoat.com\/documentation\/nl_NL\/"},{"@type":"ListItem","position":2,"name":"Workspaces Rooms","item":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/"},{"@type":"ListItem","position":3,"name":"Nodes","item":"https:\/\/3dcoat.com\/documentation\/manual\/workspaces-rooms\/nodes\/"},{"@type":"ListItem","position":4,"name":"Biblioteca de n\u00f3s de shaders de esculpir"}]},{"@type":"WebSite","@id":"https:\/\/3dcoat.com\/documentation\/#website","url":"https:\/\/3dcoat.com\/documentation\/","name":"3DCoat Documentation","description":"Information about starting to use and learning how to use all the features of the 3DCoat.","publisher":{"@id":"https:\/\/3dcoat.com\/documentation\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/3dcoat.com\/documentation\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/3dcoat.com\/documentation\/#organization","name":"Pilgway","url":"https:\/\/3dcoat.com\/documentation\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/3dcoat.com\/documentation\/#\/schema\/logo\/image\/","url":"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/09\/logo3DCoatWhite-1.png","contentUrl":"https:\/\/3dcoat.com\/documentation\/wp-content\/uploads\/2022\/09\/logo3DCoatWhite-1.png","width":876,"height":190,"caption":"Pilgway"},"image":{"@id":"https:\/\/3dcoat.com\/documentation\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/3DCoat","https:\/\/x.com\/3DCoatOfficial","https:\/\/www.youtube.com\/c\/PILGWAY3DCoat"]}]}},"_links":{"self":[{"href":"https:\/\/3dcoat.com\/documentation\/wp-json\/wp\/v2\/manual_documentation\/4244","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/3dcoat.com\/documentation\/wp-json\/wp\/v2\/manual_documentation"}],"about":[{"href":"https:\/\/3dcoat.com\/documentation\/wp-json\/wp\/v2\/types\/manual_documentation"}],"author":[{"embeddable":true,"href":"https:\/\/3dcoat.com\/documentation\/wp-json\/wp\/v2\/users\/3"}],"version-history":[{"count":26,"href":"https:\/\/3dcoat.com\/documentation\/wp-json\/wp\/v2\/manual_documentation\/4244\/revisions"}],"predecessor-version":[{"id":12563,"href":"https:\/\/3dcoat.com\/documentation\/wp-json\/wp\/v2\/manual_documentation\/4244\/revisions\/12563"}],"up":[{"embeddable":true,"href":"https:\/\/3dcoat.com\/documentation\/wp-json\/wp\/v2\/manual_documentation\/11654"}],"wp:attachment":[{"href":"https:\/\/3dcoat.com\/documentation\/wp-json\/wp\/v2\/media?parent=4244"}],"wp:term":[{"taxonomy":"manualdocumentationcategory","embeddable":true,"href":"https:\/\/3dcoat.com\/documentation\/wp-json\/wp\/v2\/manualdocumentationcategory?post=4244"},{"taxonomy":"manual_doc_tag","embeddable":true,"href":"https:\/\/3dcoat.com\/documentation\/wp-json\/wp\/v2\/manual_doc_tag?post=4244"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}