Commit Graph

503 Commits

Author SHA1 Message Date
RodZill4
bf4a125386 Node editor updates and support for alpha channel
Added initial support for alpha channel (in combine, decompose and blend nodes). Textures with alpha channels can be exported using the material node albedo input.
Updated node editor with a simple editor for enumerated parameters.
2018-10-26 22:44:47 +02:00
RodZill4
938397f3f6 More node editor progress, support for globals in generic nodes 2018-10-13 17:31:37 +02:00
RodZill4
0d85cd5aef Updated custom node and associated editor
Custom nodes now support outputs and basic (float) parameters, and are serialized/deserialized correctly.
2018-10-09 07:24:44 +02:00
RodZill4
ee0bc96f30 Added a generic node type
Updated all nodes so parameters are located in a "parameters" variable.
Started writing a generic node model whose behavior is defined in a json file. Should be able to replace all generators so far.
Wrote json files for bricks and noise nodes.
Started preparing a custom node.
2018-10-02 07:46:20 +02:00
RodZill4
ab9ae4ce5d Reorganized nodes (1 directory per node) 2018-09-22 08:12:33 +02:00
RodZill4
fafa5fbb1b Added a "Rays" shape and a radiations logo example 2018-09-21 08:14:20 +02:00
RodZill4
e2e1a67b7e Added star shape in Shape generator 2018-09-20 08:32:30 +02:00
RodZill4
d9b98693da Added a simple shape generator
Can be used to create a circle, a polygon or a curved star
2018-09-19 08:21:48 +02:00
RodZill4
9bdcb73411 Fixed problems in Material Maker addon for Godot
Icon and settings taken from the project
2018-09-12 19:21:42 +02:00
RodZill4
e4aebb9b1f Updated link to make it child of graph_edit control
Should fix problems under Linux
2018-09-11 21:43:40 +02:00
RodZill4
4a504b0bb5 Updated export presets 2018-09-11 20:13:07 +02:00
RodZill4
73ccaf32eb Updated screenshot 2018-09-11 19:47:04 +02:00
RodZill4
4ca96b5d8e Updated examples 2018-09-11 19:40:34 +02:00
RodZill4
d05631122c Added documentation for new nodes
Added documentation for Material, Export, Comment, Switch and Remote nodes.
Fixed missing "tool" attribute in editable_label script.
Reordered misc. nodes in base library.
2018-09-11 19:38:59 +02:00
RodZill4
d6527848d3 Added clipping when drawing links 2018-09-10 22:43:17 +02:00
RodZill4
1a5ddae226 Added comment node 2018-09-10 21:59:52 +02:00
RodZill4
cb03131b85 Added control link check and editable labels
Now linking new controls to a linked_control will check compatibility (same control type and parameters).
Linked control labels are now editable.
Modified the Switch node layout so it is easier to understand.
Updated the bricks example to use the switch and remote nodes.
2018-09-10 08:00:03 +02:00
RodZill4
f116aa0e22 Added switch node
Added node that can select between 2x2 inputs to generate 2 outputs
2018-09-09 15:20:01 +02:00
RodZill4
9dc6d4b18a Gradient and serialization related updates
Added a class for gradient (that handles serialization and shader generation), and updated the GradientEditor.
Added a "Types" class that handles values serialization.
Updated linked_control and config_control to link to GradientEditors.
2018-09-09 12:09:05 +02:00
RodZill4
95a737029a Started adding the "remote node"
Started adding the "remote" node, that can control important parameters of the graph and save/restore configurations of groups of parameters. This should help creating easily configurable materials.

Added new "mosaic" example
2018-09-08 12:25:28 +02:00
RodZill4
2621ff4b46 Improved integration in Godot
Exporting a material will now create a SpatialMaterial. The Material graph node
now generates different textures when used as a Godot addon (metallic, roughness
and ambient occlusion are merged into a single texture).

Rendering code (that was in graph_edit and node_base scenes) is now in a single "renderer scene" attached to the main window.
2018-09-04 21:45:14 +02:00
RodZill4
1c56fc60d8 Cleanup and renaming
Moved Material Spray to another repository.
Renamed the addon directory to material_maker
2018-09-03 21:35:44 +02:00
RodZill4
746fd1b2fe Fixed crash upon copy/paste of Material node 2018-09-01 13:55:48 +02:00
RodZill4
92b647f0c8 Removed useless debug message 2018-09-01 11:32:36 +02:00
RodZill4
f1eb5a97e1 Fixed tab labels not updating when a filename changes 2018-09-01 11:09:45 +02:00
RodZill4
64ebbe6434 Doc updates
Added doc for AdjustHSV node
Corrected typos in other docs
2018-09-01 11:06:58 +02:00
Rodolphe Suescun
975ecb32b2 Merge branch 'master' of https://github.com/RodZill4/godot-procedural-textures 2018-08-30 19:20:14 +02:00
Rodolphe Suescun
b50c07543b Minor fixes
Added size parameter to normal map
Fixed color of outputs in perlin and voronoi
Fixed keyboard shortcuts in graph editor (did not check modifiers)
2018-08-28 08:33:41 +02:00
Rodolphe Suescun
effa29e158 Added size parameter to emboss node 2018-08-27 19:31:00 +02:00
Rodz Labs
e08b84b930
Removed useless outdated doc from the readme file 2018-08-27 19:02:49 +02:00
Rodolphe Suescun
ec645a06f4 Replaced the TabContainer with a Tabs control
- Load material can now load several materials
- the current tab now has a close button
2018-08-27 17:22:57 +02:00
Rodolphe Suescun
467ba24a5f Disabled menu items when they cannot be used. 2018-08-27 12:16:37 +02:00
Rodolphe Suescun
5184f6375e Cut/Copy/Paste fix
Fixed cut, copy and paste behavior when Material is selected (that node should not be deleted or copied, but connections should be pasted).
2018-08-27 12:15:57 +02:00
Rodolphe Suescun
0d2225d997 Disabled useless tex2view texture update in mesh painter 2018-08-27 08:50:46 +02:00
Rodolphe Suescun
1bbbd43596 Added AdjustHSV node
Added a node that adjusts hue, saturation and value.
Added support for HSlider as control in nodes.
2018-08-26 16:31:29 +02:00
Rodolphe Suescun
5669117b44 Added export size selection in Material and Export nodes 2018-08-26 16:22:42 +02:00
Rodolphe Suescun
76f588a00e Drag problem workaround... 2018-08-25 19:18:40 +02:00
Rodolphe Suescun
ddc8ae665c Doc: removed empty stuff in index 2018-08-25 08:33:31 +02:00
Rodolphe Suescun
b626f455fe Moved examples and documentation into the addon directory 2018-08-25 08:21:44 +02:00
Rodolphe Suescun
26720e74e9 Updated Transform, added Decompose and minor changes
Updated Transform so it accepts a greyscale input per parameter. For each pixel, the parameter is multiplied by 2*v-1 (v being the value of the input's pixel) which makes it possible to affect the strength of each transform using an input image. New effects such as whirl and color guided offsets are now possible.

Added Decompose node (does the opposite of combine).

Used another color for inputs/outputs that expect/generate a greyscale image.
2018-08-25 08:07:22 +02:00
Rodolphe Suescun
7e92831226 Correctly pass size when exporting textures 2018-08-23 17:01:24 +02:00
Rodolphe Suescun
22e87276ff Documentation for remaining nodes 2018-08-23 17:00:28 +02:00
Rodolphe Suescun
ba663aee22 Started documentation
Added documentation for the UI and all generator nodes
2018-08-23 10:39:27 +02:00
Rodolphe Suescun
01c9f044d8 Improved precision in paint tool
Added a new tex2view texture to store least significant bits of the position in view to solve the precision problem.
2018-08-22 07:39:32 +02:00
Rodolphe Suescun
eecc199427 New shortcuts and node groups in library
Updated library code to be able to store a group of nodes.
Added keyboard shortcuts:
- Del to delete selected nodes
- C to center the view
Modified paste action to paste at the center of the view.
New example (biohazard from webbzeug)
2018-08-22 07:33:50 +02:00
Rodolphe Suescun
ba016797e3 Refactoring, new noise node and blur updates
Added a noise node (paints randomly pixels in black or white).
Modified blur so direction can be selected (horizontal, verticla, or both).
Updated code to use string formats instead of conversion + concatenation.
2018-08-20 15:43:03 +02:00
Rodolphe Suescun
1d27344de2 Refactoring in the mesh paint tool 2018-08-19 15:24:01 +02:00
Rodolphe Suescun
ddbd69ea25 Added new patterns for bricks
Added a Running Bond variant, HerringBone, Basket Weave and Spanish bond patterns to the bricks generator.
Shader was refactored to make it easy to add new patterns made of axis-aligned bricks.
2018-08-19 15:23:11 +02:00
Rodolphe Suescun
0d0f862a99 Added support for cut/copy/paste in Material Maker 2018-08-19 02:11:52 +02:00
Rodolphe Suescun
27f6de16e9 Fixes in Perlin and Voronoi
Perlin and Voronoi have better randomness, and Voronoi color output is now tileable
2018-08-18 01:53:07 +02:00