diff --git a/addons/material_maker/doc/images/node_bricks.png b/addons/material_maker/doc/images/node_bricks.png index 7eb7853..0ee39bd 100644 Binary files a/addons/material_maker/doc/images/node_bricks.png and b/addons/material_maker/doc/images/node_bricks.png differ diff --git a/addons/material_maker/doc/images/node_bricks_samples.png b/addons/material_maker/doc/images/node_bricks_samples.png new file mode 100644 index 0000000..4a80c72 Binary files /dev/null and b/addons/material_maker/doc/images/node_bricks_samples.png differ diff --git a/addons/material_maker/doc/images/node_color_noise.png b/addons/material_maker/doc/images/node_color_noise.png new file mode 100644 index 0000000..6d47be7 Binary files /dev/null and b/addons/material_maker/doc/images/node_color_noise.png differ diff --git a/addons/material_maker/doc/images/node_color_noise_samples.png b/addons/material_maker/doc/images/node_color_noise_samples.png new file mode 100644 index 0000000..0eb2de7 Binary files /dev/null and b/addons/material_maker/doc/images/node_color_noise_samples.png differ diff --git a/addons/material_maker/doc/images/node_fibers.png b/addons/material_maker/doc/images/node_fibers.png new file mode 100644 index 0000000..0f60719 Binary files /dev/null and b/addons/material_maker/doc/images/node_fibers.png differ diff --git a/addons/material_maker/doc/images/node_fibers_samples.png b/addons/material_maker/doc/images/node_fibers_samples.png new file mode 100644 index 0000000..dcf3560 Binary files /dev/null and b/addons/material_maker/doc/images/node_fibers_samples.png differ diff --git a/addons/material_maker/doc/images/node_filbers.png b/addons/material_maker/doc/images/node_filbers.png new file mode 100644 index 0000000..725dd0b Binary files /dev/null and b/addons/material_maker/doc/images/node_filbers.png differ diff --git a/addons/material_maker/doc/images/node_filbers_samples.png b/addons/material_maker/doc/images/node_filbers_samples.png new file mode 100644 index 0000000..d5e462e Binary files /dev/null and b/addons/material_maker/doc/images/node_filbers_samples.png differ diff --git a/addons/material_maker/doc/images/node_noise.png b/addons/material_maker/doc/images/node_noise.png index 23efabc..d55ee6f 100644 Binary files a/addons/material_maker/doc/images/node_noise.png and b/addons/material_maker/doc/images/node_noise.png differ diff --git a/addons/material_maker/doc/images/noise.png b/addons/material_maker/doc/images/node_noise_samples.png similarity index 100% rename from addons/material_maker/doc/images/noise.png rename to addons/material_maker/doc/images/node_noise_samples.png diff --git a/addons/material_maker/doc/images/node_pattern.png b/addons/material_maker/doc/images/node_pattern.png index 88ca5ff..83a0af0 100644 Binary files a/addons/material_maker/doc/images/node_pattern.png and b/addons/material_maker/doc/images/node_pattern.png differ diff --git a/addons/material_maker/doc/images/node_pattern_samples.png b/addons/material_maker/doc/images/node_pattern_samples.png new file mode 100644 index 0000000..ac7b744 Binary files /dev/null and b/addons/material_maker/doc/images/node_pattern_samples.png differ diff --git a/addons/material_maker/doc/images/node_runes.png b/addons/material_maker/doc/images/node_runes.png new file mode 100644 index 0000000..febc80c Binary files /dev/null and b/addons/material_maker/doc/images/node_runes.png differ diff --git a/addons/material_maker/doc/images/node_runes_samples.png b/addons/material_maker/doc/images/node_runes_samples.png new file mode 100644 index 0000000..816f9f8 Binary files /dev/null and b/addons/material_maker/doc/images/node_runes_samples.png differ diff --git a/addons/material_maker/doc/images/node_scratches.png b/addons/material_maker/doc/images/node_scratches.png new file mode 100644 index 0000000..8a0de8e Binary files /dev/null and b/addons/material_maker/doc/images/node_scratches.png differ diff --git a/addons/material_maker/doc/images/node_scratches_samples.png b/addons/material_maker/doc/images/node_scratches_samples.png new file mode 100644 index 0000000..708aa78 Binary files /dev/null and b/addons/material_maker/doc/images/node_scratches_samples.png differ diff --git a/addons/material_maker/doc/images/node_truchet.png b/addons/material_maker/doc/images/node_truchet.png new file mode 100644 index 0000000..481f7ee Binary files /dev/null and b/addons/material_maker/doc/images/node_truchet.png differ diff --git a/addons/material_maker/doc/images/node_truchet_samples.png b/addons/material_maker/doc/images/node_truchet_samples.png new file mode 100644 index 0000000..97dc7c7 Binary files /dev/null and b/addons/material_maker/doc/images/node_truchet_samples.png differ diff --git a/addons/material_maker/doc/images/voronoi.png b/addons/material_maker/doc/images/node_voronoi_samples.png similarity index 100% rename from addons/material_maker/doc/images/voronoi.png rename to addons/material_maker/doc/images/node_voronoi_samples.png diff --git a/addons/material_maker/doc/images/node_weave.png b/addons/material_maker/doc/images/node_weave.png new file mode 100644 index 0000000..93583f4 Binary files /dev/null and b/addons/material_maker/doc/images/node_weave.png differ diff --git a/addons/material_maker/doc/images/node_weave_samples.png b/addons/material_maker/doc/images/node_weave_samples.png new file mode 100644 index 0000000..0a7e6a6 Binary files /dev/null and b/addons/material_maker/doc/images/node_weave_samples.png differ diff --git a/addons/material_maker/doc/node_noise.rst b/addons/material_maker/doc/node_noise.rst index 84dd377..d917093 100644 --- a/addons/material_maker/doc/node_noise.rst +++ b/addons/material_maker/doc/node_noise.rst @@ -1,26 +1,24 @@ Noise node ~~~~~~~~~~ -The Noise node outputs a randomly generated black and white texture. +The **Noise** node outputs a randomly generated black and white texture. .. image:: images/node_noise.png Inputs ++++++ -The Noise node does not accept any input. +The **Noise** node does not accept any input. Outputs +++++++ -The Noise node provides a black and white noise texture. - -.. image:: images/noise.png +The **Noise** node provides a black and white noise texture. Parameters ++++++++++ -The Noise node accepts the following parameters: +The **Noise** node accepts the following parameters: * *Grid size* is the number of rows and columns in the texture. @@ -34,3 +32,9 @@ will modify the texture, and the outputs will remain the same if its position an are not changed. Although this node has a grid size, it generates a resolution independant texture. + +Example images +++++++++++++++ + +.. image:: images/node_noise_samples.png + :align: center diff --git a/addons/material_maker/doc/node_noise_color.rst b/addons/material_maker/doc/node_noise_color.rst new file mode 100644 index 0000000..4bd801d --- /dev/null +++ b/addons/material_maker/doc/node_noise_color.rst @@ -0,0 +1,40 @@ +Color Noise node +~~~~~~~~~~~~~~~~ + +The **Color Noise** node outputs a randomly generated black and white texture. + +.. image:: images/node_color_noise.png + +Inputs +++++++ + +The **Color Noise** node does not accept any input. + +Outputs ++++++++ + +The **Color Noise** node provides a black and white noise texture. + +Parameters +++++++++++ + +The **Color Noise** node accepts the following parameters: + +* *Grid size* is the number of rows and columns in the texture. + +* *Density* is the likelihood for each cell to be white. + +Notes ++++++ + +As with all random nodes, the seed is held by the node's position, so moving the node in the graph +will modify the texture, and the outputs will remain the same if its position and parameters +are not changed. + +Although this node has a grid size, it generates a resolution independant texture. + +Example images +++++++++++++++ + +.. image:: images/node_color_noise_samples.png + :align: center diff --git a/addons/material_maker/doc/node_noise_voronoi.rst b/addons/material_maker/doc/node_noise_voronoi.rst index 4f9b9ae..2786768 100644 --- a/addons/material_maker/doc/node_noise_voronoi.rst +++ b/addons/material_maker/doc/node_noise_voronoi.rst @@ -1,19 +1,19 @@ Voronoi noise node ~~~~~~~~~~~~~~~~~~ -The Voronoi noise node outputs Voronoi noise textures. +The **Voronoi** noise node outputs Voronoi noise textures. .. image:: images/node_voronoi.png Inputs ++++++ -The Voronoi noise node does not accept any input. +The **Voronoi** noise node does not accept any input. Outputs +++++++ -The Voronoi noise node provides three outputs: +The **Voronoi** noise node provides three outputs: * a greyscale Voronoi noise texture that shows the distance to the feature points. @@ -21,12 +21,10 @@ The Voronoi noise node provides three outputs: * a color Voronoi partition. -.. image:: images/voronoi.png - Parameters ++++++++++ -The Voronoi noise node accepts the following parameters: +The **Voronoi** noise node accepts the following parameters: * *Scale X* and *Scale Y* define the number of feature points that define the noise @@ -38,3 +36,9 @@ Notes As with all random nodes, the seed is held by the node's position, so moving the node in the graph will modify the texture, and the outputs will remain the same if its position and parameters are not changed. + +Example images +++++++++++++++ + +.. image:: images/node_voronoi_samples.png + :align: center diff --git a/addons/material_maker/doc/node_pattern_bricks.rst b/addons/material_maker/doc/node_pattern_bricks.rst index 421dc52..f44dff2 100644 --- a/addons/material_maker/doc/node_pattern_bricks.rst +++ b/addons/material_maker/doc/node_pattern_bricks.rst @@ -1,49 +1,51 @@ Bricks node ~~~~~~~~~~~ -The bricks node outputs two related bricks pattern textures. +The **Bricks** node outputs 4 related bricks pattern textures that can be used for walls +or pavement. .. image:: images/node_bricks.png Inputs ++++++ -The bricks node does not accept any input. +The **Bricks** node does not accept any input. Outputs +++++++ -The bricks node provides the following textures: +The **Bricks** node provides the following textures: * The first one is a greyscale image where bricks are shown in white and mortar in black. * The second one is a color image where all bricks are drawn using a random uniform color. -Both images can be used together to create complex materials that show for example bricks -of different colors. +* The 3rd and 4th textures are greyscale images of the X and Y position of the center of + each brick. -.. image:: images/bricks.png +Those images can be used together to create complex materials that show for example bricks +of different colors. Parameters ++++++++++ -The Bricks node accepts the following parameters: +The **Bricks** node accepts the following parameters: -* the "Pattern" parameter defines the bricks pattern that will be generated. +* the *Pattern* parameter defines the bricks pattern that will be generated. -* the "Repeat" parameter defines the number of patterns on the horizontal and vertical +* the *Repeat* parameter defines the number of patterns on the horizontal and vertical axes of the texture. -* the "Rows" parameter defines the number of brick rows in a single pattern of the texture. +* the *Rows* parameter defines the number of brick rows in a single pattern of the texture. -* the "Columns" parameter defines the number of brick rows in a single pattern of the texture. +* the *Columns* parameter defines the number of brick rows in a single pattern of the texture. -* the "Offset" parameter defines the offset of odd rows of the pattern. This parameter - only applies to the "Running bond" patterns. +* the *Offset* parameter defines the offset of odd rows of the pattern. This parameter + only applies to the *Running bond* patterns. -* the "Mortar" parameter defines the relative thickness of mortar in patterns. +* the *Mortar* parameter defines the relative thickness of mortar in patterns. -* the "Bevel" parameter defines the relative thickness of brick bevel in patterns. +* the *Bevel* parameter defines the relative thickness of brick bevel in patterns. Notes +++++ @@ -51,3 +53,9 @@ Notes As with all random nodes, the seed is held by the node's position, so moving the node in the graph will modify the texture, and the outputs will remain the same if its position and parameters are not changed. + +Example images +++++++++++++++ + +.. image:: images/node_bricks_samples.png + :align: center diff --git a/addons/material_maker/doc/node_pattern_fibers.rst b/addons/material_maker/doc/node_pattern_fibers.rst new file mode 100644 index 0000000..8a69dc5 --- /dev/null +++ b/addons/material_maker/doc/node_pattern_fibers.rst @@ -0,0 +1,29 @@ +Fibers node +~~~~~~~~~~~ + +The **Fibers** node outputs a fibers pattern, that can be used for cloth. + +.. image:: images/node_fibers.png + +Inputs +++++++ + +The **Fibers** node does not accept any input. + +Outputs ++++++++ + +The **Fibers** node generates a single greyscale output texture. + +Parameters +++++++++++ + +The **Fibers** node accepts the following parameters: + +* the *Repeat* parameter defines the number of patterns in the output texture. + +Example images +++++++++++++++ + +.. image:: images/node_fibers_samples.png + :align: center diff --git a/addons/material_maker/doc/node_pattern_generic.rst b/addons/material_maker/doc/node_pattern_generic.rst index 904c792..aadadb0 100644 --- a/addons/material_maker/doc/node_pattern_generic.rst +++ b/addons/material_maker/doc/node_pattern_generic.rst @@ -1,24 +1,23 @@ Pattern node ~~~~~~~~~~~~ -The Pattern node outputs a pattern texture generated from common waveform shapes. +The **Pattern** node outputs a pattern texture generated from common waveform shapes. .. image:: images/node_pattern.png Inputs ++++++ -The Pattern node does not accept any input. +The **Pattern** node does not accept any input. Outputs +++++++ -The Pattern node provides a greyscale texture obtained by mixing a horizontal and a vertical pattern. +The **Pattern** node provides a greyscale texture obtained by mixing a horizontal and +a vertical pattern. Many different patterns can be created using this node, do not hesitate to experiment. -.. image:: images/pattern.png - Parameters ++++++++++ @@ -36,7 +35,15 @@ The Pattern node accepts the following parameters: * Sawtooth: the value follows a sawtooth waveform (changes linearly from 0 to 1, then jumps back to 0) - * constant: the value is 1 + * Constant: the value is 1 + + * Bounce: the value follows a half-circle waveform * the *Combiner* parameter is the function used to combine the *X* and *Y* patterns. The available functions are *multiply*, *add*, *max*, *min*, *xor* and *pow* + +Example images +++++++++++++++ + +.. image:: images/node_pattern_samples.png + :align: center diff --git a/addons/material_maker/doc/node_pattern_runes.rst b/addons/material_maker/doc/node_pattern_runes.rst new file mode 100644 index 0000000..958cb5d --- /dev/null +++ b/addons/material_maker/doc/node_pattern_runes.rst @@ -0,0 +1,31 @@ +Runes node +~~~~~~~~~~ + +The **Runes** node outputs a runes pattern. + +It is based on code written by Otavio Good (https://www.shadertoy.com/view/MsXSRn). + +.. image:: images/node_runes.png + +Inputs +++++++ + +The **Runes** node does not accept any input. + +Outputs ++++++++ + +The **Runes** generates a single greyscale output texture. + +Parameters +++++++++++ + +The **Runes** node accepts the following parameters: + +* the *Size X* and *Size Y* parameters define the number of patterns in the output texture. + +Example images +++++++++++++++ + +.. image:: images/node_runes_samples.png + :align: center diff --git a/addons/material_maker/doc/node_pattern_scratches.rst b/addons/material_maker/doc/node_pattern_scratches.rst new file mode 100644 index 0000000..85f49c5 --- /dev/null +++ b/addons/material_maker/doc/node_pattern_scratches.rst @@ -0,0 +1,45 @@ +Scratches node +~~~~~~~~~~~~~~ + +The **Scratches** node outputs a fibers pattern, that can be used for +scratches on any material or messy fibers. + +It is inspired from a the *Fuzzy scratches* shadertoy from +Daedalus (https://www.shadertoy.com/view/4syXRD). + +.. image:: images/node_scratches.png + +Inputs +++++++ + +The **Scratches** node does not accept any input. + +Outputs ++++++++ + +The **Scratches** node generates a single greyscale output texture. + +Parameters +++++++++++ + +The **Scratches** node accepts the following parameters: + +* the *Length* parameter defines the length of a fiber in the output texture. The number of + scratches grows exponentially with the inverse of this length. + +* the *Width* parameter defines the width of each fiber. + +* *Layers* is the number of layers of the effect. The number of scratches grows + linearly with the number of layers. + +* *Waviness* can be tweaked to draw straight or curved scratches. + +* *Angle* is the average angle of the scratches. + +* *Randomness* is applied to the scratches angles. + +Example images +++++++++++++++ + +.. image:: images/node_scratches_samples.png + :align: center diff --git a/addons/material_maker/doc/node_pattern_truchet.rst b/addons/material_maker/doc/node_pattern_truchet.rst new file mode 100644 index 0000000..e8ac2a8 --- /dev/null +++ b/addons/material_maker/doc/node_pattern_truchet.rst @@ -0,0 +1,40 @@ +Truchet node +~~~~~~~~~~~~ + +The **Truchet** node outputs a truchet pattern. + +.. image:: images/node_truchet.png + +Inputs +++++++ + +The **Truchet** node does not accept any input. + +Outputs ++++++++ + +The **Truchet** generates a single greyscale output texture. + +Parameters +++++++++++ + +The **Truchet** node accepts the following parameters: + +* the *Shape* parameter (line or circle) defines the edges of the truchet pattern. + +* the *Size* parameter is the number of patterns (on both axes) in the generated image. + +Notes ++++++ + +As with all random nodes, the seed is held by the node's position, so moving the node in the graph +will modify the texture, and the outputs will remain the same if its position and parameters +are not changed. + +Example images +++++++++++++++ + +Both bottom samples show a truchet pattern filtered using a colorize node. + +.. image:: images/node_truchet_samples.png + :align: center diff --git a/addons/material_maker/doc/node_pattern_weave.rst b/addons/material_maker/doc/node_pattern_weave.rst new file mode 100644 index 0000000..2917e75 --- /dev/null +++ b/addons/material_maker/doc/node_pattern_weave.rst @@ -0,0 +1,31 @@ +Weave node +~~~~~~~~~~ + +The **Weave** node outputs a weave pattern, that can be used for cloth. + +.. image:: images/node_weave.png + +Inputs +++++++ + +The **Weave** node does not accept any input. + +Outputs ++++++++ + +The **Weave** generates a single greyscale output texture. + +Parameters +++++++++++ + +The **Weave** node accepts the following parameters: + +* the *Size X* and *Size Y* parameters define the number of patterns that will be generated. + +* the *Width* parameter is the width of stiches. + +Example images +++++++++++++++ + +.. image:: images/node_weave_samples.png + :align: center diff --git a/addons/material_maker/doc/nodes_common.rst b/addons/material_maker/doc/nodes_common.rst index 309a018..9fa1d31 100644 --- a/addons/material_maker/doc/nodes_common.rst +++ b/addons/material_maker/doc/nodes_common.rst @@ -75,7 +75,7 @@ Modifying nodes Most nodes in Material Maker can be modified, but they first have to be made editable. To do this, select a node, and use the **Tools -> Make the selected nodes editable** -menu item or the **Control+E** keyboard shortcut. +menu item or the **Control+W** keyboard shortcut. .. image:: images/editable_node.png :align: center diff --git a/addons/material_maker/doc/nodes_noise.rst b/addons/material_maker/doc/nodes_noise.rst index 69eebd7..9c99667 100644 --- a/addons/material_maker/doc/nodes_noise.rst +++ b/addons/material_maker/doc/nodes_noise.rst @@ -8,5 +8,6 @@ made from random patterns. :maxdepth: 1 node_noise + node_noise_color node_noise_perlin node_noise_voronoi diff --git a/addons/material_maker/doc/nodes_pattern.rst b/addons/material_maker/doc/nodes_pattern.rst index 4806adf..3b51042 100644 --- a/addons/material_maker/doc/nodes_pattern.rst +++ b/addons/material_maker/doc/nodes_pattern.rst @@ -6,10 +6,10 @@ The generator nodes are nodes that do not accept any input and generate one or s .. toctree:: :maxdepth: 1 - node_pattern_bricks - node_pattern_fibers node_pattern_generic + node_pattern_bricks + node_pattern_weave + node_pattern_truchet + node_pattern_fibers node_pattern_runes node_pattern_scratches - node_pattern_truchet - node_pattern_weave diff --git a/addons/material_maker/doc/subgraph_nodes.rst b/addons/material_maker/doc/subgraph_nodes.rst index 9427350..b26293a 100644 --- a/addons/material_maker/doc/subgraph_nodes.rst +++ b/addons/material_maker/doc/subgraph_nodes.rst @@ -9,7 +9,7 @@ To create a subgraph, first select the nodes that must be grouped and use the This will replace all selected nodes with a single subgraph node, without modifying the overall material description. -The subgraph node is not editable by default, but using the **Control+E** +The subgraph node is not editable by default, but using the **Control+W** shortcut will make it possible to edit its contents using the pencil button. .. image:: images/subgraph.png @@ -19,7 +19,7 @@ The newly created subgraph contains: * all nodes that have been grouped * an **Input** and an **Output** node that rep^resent the inputs and the outputs - of the subgraph. Selecting them and using the **Control+E** shortcut makes them + of the subgraph. Selecting them and using the **Control+W** shortcut makes them editable so the subgraph inputs and outputs can be added, removed reordered or renamed. Please note that all those operations will (when possible) keep connectivity inside and outside the subgraph.