Updated documentation
@ -1,5 +1,5 @@
|
||||
Available nodes in base library
|
||||
===============================
|
||||
Nodes library
|
||||
=============
|
||||
|
||||
This section describes all nodes that can are provided in the base library
|
||||
to describe procedural materials.
|
||||
|
@ -24,7 +24,7 @@ copyright = '2018, Rodz Labs'
|
||||
author = 'Rodz Labs'
|
||||
|
||||
# The short X.Y version
|
||||
version = ''
|
||||
version = '0.7'
|
||||
# The full version, including alpha/beta/rc tags
|
||||
release = ''
|
||||
|
||||
@ -87,7 +87,7 @@ html_theme = "sphinx_rtd_theme"
|
||||
# Add any paths that contain custom static files (such as style sheets) here,
|
||||
# relative to this directory. They are copied after the builtin static files,
|
||||
# so a file named "default.css" will overwrite the builtin "default.css".
|
||||
html_static_path = ['_static']
|
||||
html_static_path = []
|
||||
|
||||
# Custom sidebar templates, must be a dictionary that maps document names
|
||||
# to template names.
|
||||
@ -103,7 +103,7 @@ html_static_path = ['_static']
|
||||
# -- Options for HTMLHelp output ---------------------------------------------
|
||||
|
||||
# Output file base name for HTML help builder.
|
||||
htmlhelp_basename = 'MaterialMakerdoc'
|
||||
htmlhelp_basename = 'MaterialMakerDoc'
|
||||
|
||||
|
||||
# -- Options for LaTeX output ------------------------------------------------
|
||||
|
BIN
addons/material_maker/doc/images/node_buffer.png
Normal file
After Width: | Height: | Size: 4.6 KiB |
BIN
addons/material_maker/doc/images/node_debug.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
addons/material_maker/doc/images/node_debug_pane.png
Normal file
After Width: | Height: | Size: 53 KiB |
BIN
addons/material_maker/doc/images/node_kaleidoscope.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
BIN
addons/material_maker/doc/images/node_kaleidoscope_samples.png
Normal file
After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 12 KiB |
BIN
addons/material_maker/doc/images/node_mirror.png
Normal file
After Width: | Height: | Size: 4.3 KiB |
BIN
addons/material_maker/doc/images/node_mirror_samples.png
Normal file
After Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 7.5 KiB After Width: | Height: | Size: 9.7 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 7.9 KiB |
@ -1,23 +0,0 @@
|
||||
Export node
|
||||
~~~~~~~~~~~
|
||||
|
||||
The Export node defines a a texture that will be saved together with the
|
||||
material textures when exporting the project.
|
||||
|
||||
.. image:: images/node_export.png
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
||||
The Export node has an input that will be saved when exporting the project.
|
||||
|
||||
Outputs
|
||||
+++++++
|
||||
|
||||
The Export node does not have any output.
|
||||
|
||||
Parameters
|
||||
++++++++++
|
||||
|
||||
The Export node has a single parameter that defines the suffix PNG file
|
||||
that will be created.
|
@ -4,6 +4,7 @@ AdjustHSV node
|
||||
The **AdjustHSV** node adjusts the hue, saturation and value of the input image.
|
||||
|
||||
.. image:: images/node_adjust_hsv.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
@ -6,6 +6,7 @@ defined by the blend mode between both inputs, and mixes the result with the bot
|
||||
using the opacity (defines by the *opacity* parameter, or the optional greyscale input).
|
||||
|
||||
.. image:: images/node_blend.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
@ -4,6 +4,7 @@ Blur node
|
||||
The **Blur** node applies a Gaussian blur algorithm to its input.
|
||||
|
||||
.. image:: images/node_blur.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
@ -6,6 +6,7 @@ will be colored with the leftmost color of the gradient and white pixels will ta
|
||||
the rightmost color.
|
||||
|
||||
.. image:: images/node_colorize.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
@ -4,6 +4,7 @@ Combine node
|
||||
The **Combine** node combines four greyscale inputs into an RGBA output texture.
|
||||
|
||||
.. image:: images/node_combine.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
@ -4,6 +4,7 @@ Decompose node
|
||||
The **Decompose** node decomposes anRGBA input into four greyscale outputs.
|
||||
|
||||
.. image:: images/node_decompose.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
@ -4,6 +4,7 @@ Directional Blur node
|
||||
The **Directional Blur** node applies a Gaussian blur algorithm to its input in a given direction.
|
||||
|
||||
.. image:: images/node_directional_blur.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
@ -4,6 +4,7 @@ Emboss node
|
||||
The **Emboss** node generates an image that simulates lighting on its input.
|
||||
|
||||
.. image:: images/node_emboss.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
@ -4,6 +4,7 @@ Normal map node
|
||||
The **Normal map** node generates a normal map from its input.
|
||||
|
||||
.. image:: images/node_normal_map.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
@ -4,6 +4,7 @@ Occlusion node
|
||||
The **Occlusion** node generates an ambient occlusion texture from its input.
|
||||
|
||||
.. image:: images/node_occlusion.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
@ -1,10 +0,0 @@
|
||||
Miscellaneous nodes
|
||||
-------------------
|
||||
|
||||
.. toctree::
|
||||
|
||||
node_material
|
||||
node_export
|
||||
node_switch
|
||||
node_comment
|
||||
node_remote
|
36
addons/material_maker/doc/node_miscellaneous_buffer.rst
Normal file
@ -0,0 +1,36 @@
|
||||
Buffer node
|
||||
~~~~~~~~~~~
|
||||
|
||||
The **Buffer** node samples its input into a texture of a given resolution and
|
||||
outputs the result.
|
||||
|
||||
Buffers can be used either as inputs of convolution nodes (to limit the combined
|
||||
shader's complexity), or to create a cheap blur/pixelization effect (by using the
|
||||
LOD output). Note that convolution transforms that are provided in the nodes library
|
||||
already include buffers where necessary.
|
||||
|
||||
.. image:: images/node_buffer.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
||||
The **Buffer** node has an input that will be saved when exporting the project.
|
||||
|
||||
Outputs
|
||||
+++++++
|
||||
|
||||
The **Buffer** node has 2 outputs:
|
||||
|
||||
* the first output provides the image
|
||||
|
||||
* the second output generates a given mipmap of the image
|
||||
|
||||
Parameters
|
||||
++++++++++
|
||||
|
||||
The **Buffer** node has two parameters:
|
||||
|
||||
* the *texture resolution*
|
||||
|
||||
* the *mipmap level* of its second output
|
@ -5,3 +5,4 @@ The Comment node has no effect on the material and can be used to document
|
||||
it. Simply double-click on the contents to edit it.
|
||||
|
||||
.. image:: images/node_comment.png
|
||||
:align: center
|
@ -0,0 +1,8 @@
|
||||
Custom shader node
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The **Custom shader** node is an empty node that you can use to start a new shader node.
|
||||
Just drag it into a graph view, make it editable with **Control-W** and click on the
|
||||
pencil button.
|
||||
|
||||
Depending on the node you intend to create, it may be easier to start from an existing node.
|
23
addons/material_maker/doc/node_miscellaneous_debug.rst
Normal file
@ -0,0 +1,23 @@
|
||||
Debug node
|
||||
~~~~~~~~~~~
|
||||
|
||||
The **Debug** node can be used to show the shader used to generate its input.
|
||||
|
||||
.. image:: images/node_debug.png
|
||||
:align: center
|
||||
|
||||
The **Show shader** button will open a pane that shows the whole shader. That code
|
||||
can be copied and directly used in Shadertoy.
|
||||
|
||||
.. image:: images/node_debug_pane.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
||||
The **Debug** node has an input whose shader can be shown.
|
||||
|
||||
Outputs
|
||||
+++++++
|
||||
|
||||
The **Debug** node does not have any output.
|
24
addons/material_maker/doc/node_miscellaneous_export.rst
Normal file
@ -0,0 +1,24 @@
|
||||
Export node
|
||||
~~~~~~~~~~~
|
||||
|
||||
The **Export** node defines a a texture that will be saved together with the
|
||||
material textures when exporting the project.
|
||||
|
||||
.. image:: images/node_export.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
||||
The **Export** node has an input that will be saved when exporting the project.
|
||||
|
||||
Outputs
|
||||
+++++++
|
||||
|
||||
The **Export** node does not have any output.
|
||||
|
||||
Parameters
|
||||
++++++++++
|
||||
|
||||
The **Export** node has a single parameter that defines the suffix of the PNG file
|
||||
that will be created.
|
@ -1,7 +1,7 @@
|
||||
Material node
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
The Material node defines a material using its inputs.
|
||||
The **Material** node defines a material using its inputs.
|
||||
|
||||
There is one and only one Material node for each Material Maker project,
|
||||
it is created for each new project and cannot be deleted or duplicated.
|
||||
@ -13,27 +13,27 @@ files whose names are generated using the project name and the name of the
|
||||
corresponding property in the material. The ambient occlusion, roughness
|
||||
and metallic textures are combined into a single file whose suffix is "orm".
|
||||
|
||||
When using Material Maker as a Godot addon, the metallic, roughness and
|
||||
ambient occlusion are automatically combined into a single texture, and
|
||||
a SpatialMaterial is generated automatically.
|
||||
When using Material Maker as a Godot addon, a SpatialMaterial is generated
|
||||
automatically.
|
||||
|
||||
.. image:: images/node_material.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
||||
The Material node has an input for each supported property (albedo, metallic,
|
||||
roughness, emissive, normal, ambient occlusion and depth maps) of the material.
|
||||
The **Material** node has an input for each supported property (albedo, metallic,
|
||||
roughness, emissive, normal, ambient occlusion, depth maps and subsurface scattering) of the material.
|
||||
|
||||
Outputs
|
||||
+++++++
|
||||
|
||||
The Material node does not have any output.
|
||||
The **Material** node does not have any output.
|
||||
|
||||
Parameters
|
||||
++++++++++
|
||||
|
||||
The Material node provides the following parameters:
|
||||
The **Material** node provides the following parameters:
|
||||
|
||||
* The size of the texture files to be generated.
|
||||
|
||||
@ -50,3 +50,5 @@ The Material node provides the following parameters:
|
||||
* The value of the ambient occlusion property of the material. The texture used for the ambient occlusion input is multiplied by this value.
|
||||
|
||||
* The value of the depth property of the material. The input depth map is multiplied by this value.
|
||||
|
||||
* The strength of the subsurface scattering effect.
|
@ -1,10 +1,11 @@
|
||||
Remote node
|
||||
~~~~~~~~~~~
|
||||
|
||||
The Remote node has no direct effect on the material and can be used to control
|
||||
key parameters of the material to configure it easily.
|
||||
The **Remote** node has no direct effect on the material but can be used to
|
||||
control key parameters of the material to configure it easily.
|
||||
|
||||
.. image:: images/node_remote.png
|
||||
:align: center
|
||||
|
||||
When started, the Remote node only shows 2 buttons.
|
||||
|
||||
@ -44,7 +45,7 @@ When hovering on the Linked control, Material Maker will show the parameters
|
||||
it controls.
|
||||
|
||||
To create a configuration, set all associated parameters to the desired values,
|
||||
and select the "<add configuration>" entry in the drop-down list. Then enter a
|
||||
and select the **<add configuration>** entry in the drop-down list. Then enter a
|
||||
name for this configuration, and it will be added to the list.
|
||||
|
||||
The drop-down list can be used to select a configuration, create new ones and
|
34
addons/material_maker/doc/node_miscellaneous_switch.rst
Normal file
@ -0,0 +1,34 @@
|
||||
Switch node
|
||||
~~~~~~~~~~~
|
||||
|
||||
The **Switch** node can be used to select sources for 2 to 5 output textures
|
||||
from a choice of 2 to five inputs sets. It is useful to create variations
|
||||
of a material and easily switch between them.
|
||||
|
||||
.. image:: images/node_switch.png
|
||||
:align: center
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
||||
The **Switch** node has from 2 to 25 color inputs A1, B1, .. D5, E5.
|
||||
|
||||
Outputs
|
||||
+++++++
|
||||
|
||||
The **Switch** node has 2 to 5 outputs named A, B, C, D and E.
|
||||
|
||||
Parameters
|
||||
++++++++++
|
||||
|
||||
The **Switch** node has a 3 parameters:
|
||||
|
||||
* the *number of outputs*
|
||||
|
||||
* the *number of choices*
|
||||
|
||||
* the *current choice*. For example, if the current chopice is 2, A will output
|
||||
the source image for A2, B will transmit B2...
|
||||
|
||||
When the node is not editable (use **Control-W** to switch from non editable to editable),
|
||||
only the current choice can be modified.
|
@ -1,25 +0,0 @@
|
||||
Switch node
|
||||
~~~~~~~~~~~
|
||||
|
||||
The Switch node can be used to select sources for 2 output textures
|
||||
A and B from a choice of 2 pairs (A1, B1) and (A2, B2). It is useful
|
||||
to create variations of a material and easily switch between them.
|
||||
|
||||
.. image:: images/node_switch.png
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
||||
The Switch node has 4 color inputs A1, B1, A2 and B2.
|
||||
|
||||
Outputs
|
||||
+++++++
|
||||
|
||||
The Switch node has 2 outputs A and B.
|
||||
|
||||
Parameters
|
||||
++++++++++
|
||||
|
||||
The Switch node has a single parameter whose value can be 1 or 2.
|
||||
When the parameter is set to 1, A forwards A1 and B forwards B1.
|
||||
When the parameter is set to 2, A forwards A2 and B forwards B2.
|
32
addons/material_maker/doc/node_transform_kaleidoscope.rst
Normal file
@ -0,0 +1,32 @@
|
||||
Kaleidoscope node
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
The **Kaleidoscope** node applies a kaleidoscope effect, i.e. copies an angle (by default the
|
||||
upper one) all around the image to its input.
|
||||
|
||||
.. image:: images/node_kaleidoscope.png
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
||||
The **Kaleidoscope** node accepts a single RGBA input.
|
||||
|
||||
Outputs
|
||||
+++++++
|
||||
|
||||
The **Kaleidoscope** node outputs the result as RGBA.
|
||||
|
||||
Parameters
|
||||
++++++++++
|
||||
|
||||
The **Kaleidoscope** node has two parameters:
|
||||
|
||||
* *strength* to scale the warp effect.
|
||||
|
||||
* *epsilon* is used to evaluate the second input's derivative
|
||||
|
||||
Example images
|
||||
++++++++++++++
|
||||
|
||||
.. image:: images/node_kaleidoscope_samples.png
|
||||
:align: center
|
31
addons/material_maker/doc/node_transform_mirror.rst
Normal file
@ -0,0 +1,31 @@
|
||||
Mirror node
|
||||
~~~~~~~~~~~
|
||||
|
||||
The **Mirror** node applies a mirror filter on its input.
|
||||
|
||||
.. image:: images/node_mirror.png
|
||||
|
||||
Inputs
|
||||
++++++
|
||||
|
||||
The **Mirror** node accepts a single RGBA input.
|
||||
|
||||
Outputs
|
||||
+++++++
|
||||
|
||||
The **Mirror** node outputs the mirrored image as RGBA.
|
||||
|
||||
Parameters
|
||||
++++++++++
|
||||
|
||||
The **Mirror** node has two parameters:
|
||||
|
||||
* the *direction* of the effect (horizontal or vertical).
|
||||
|
||||
* the *offset* by which the input is moved away from the mirror.
|
||||
|
||||
Example images
|
||||
++++++++++++++
|
||||
|
||||
.. image:: images/node_mirror_samples.png
|
||||
:align: center
|
@ -8,6 +8,8 @@ The filter nodes accept one or several inputs and generate one or several images
|
||||
|
||||
node_filter_adjust_hsv
|
||||
node_filter_colorize
|
||||
node_filter_combine
|
||||
node_filter_decompose
|
||||
node_filter_blend
|
||||
node_filter_blur
|
||||
node_filter_directional_blur
|
||||
|
@ -4,7 +4,11 @@ Miscellaneous nodes
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
node_miscellaneous_material
|
||||
node_miscellaneous_buffer
|
||||
node_miscellaneous_debug
|
||||
node_miscellaneous_remote
|
||||
node_miscellaneous_custom_shader
|
||||
node_miscellaneous_switch
|
||||
node_miscellaneous_remote
|
||||
node_miscellaneous_comment
|
||||
node_miscellaneous_export
|
||||
node_miscellaneous_debug
|
||||
|
@ -9,6 +9,9 @@ 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.
|
||||
|
||||
When the subgraph is created, it is shown in the graph editor, and can be
|
||||
renamed using the top right text field.
|
||||
|
||||
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.
|
||||
|
||||
|
@ -129,7 +129,7 @@ The filter field above the library tree can be used to quickly find a specific n
|
||||
The tree will be updated whenever the filter string is modified. It is possible to
|
||||
give focus to the search field using the **Control+F** keyboard shortcut.
|
||||
|
||||
.. image:: images/library_filter.png
|
||||
.. image:: images/library_filter.gif
|
||||
:align: center
|
||||
|
||||
Preview pane
|
||||
|