Commit Graph

392 Commits

Author SHA1 Message Date
Rodolphe Suescun
18015aec93 Implemented multi-pass nodes and fixed blur. Various other fixes.
* Added a "constant wave" in the pattern node
* Updated graphEdit to detect and forbid loops
* Modified code that renders to texture to update a texture instead of returning one (so we avoid updating everything and rely on everything being updated automatically wrt textures)
* base library is loaded from filesystem (instead of package) if available
2018-08-12 19:25:18 +02:00
Rodolphe Suescun
2f8be1a142 Minor changes for 0.2 tag 2018-08-11 15:11:39 +02:00
Rodolphe Suescun
f997fcf06f Added an about box + minor changes 2018-08-11 11:33:24 +02:00
Rodolphe Suescun
193ff43f69 Added ambient occlusion and parameters for the material node 2018-08-10 12:31:15 +02:00
Rodolphe Suescun
7033bf4a6e Added blur, transform node update, more blend types, UI fixes
* updated transform node (scale split into scale_x and scale_y, and added a repeat parameter)
* added blend modes (burn, dodge, lighten and darken)
* added a (very bad) blur node, based on generic convolution code
* rewrote normal_map node using convolution code
2018-08-09 22:19:27 +02:00
Rodolphe Suescun
a9e7442acc Added uniform color node
... and minor fixes
2018-08-08 10:50:48 +02:00
Rodolphe Suescun
312b7f74d2
Merge pull request #1 from TeddyDD/fix-colorize
Fix removing gradient steps from colorize node
2018-08-08 09:03:49 +02:00
Rodolphe Suescun
37eb661496 Basic library editing + shortcuts
Added simple functions to add nodes to the user library and save it.
Added keyboard shortcuts for main menu.
2018-08-07 23:21:12 +02:00
Rodolphe Suescun
0e1f891910 More UI progress...
Refactored preview stuff and updated new UI
2018-08-07 09:31:41 +02:00
Rodolphe Suescun
30c711920f Fixed pattern node
Triangle was stupidly named saw, sawtooth was missing
2018-08-07 09:24:48 +02:00
Daniel Lewan
582ed03293 Fix removing gradient steps from colorize node
also makes node a little bit bigger to contain
whole gradient editor
2018-08-06 22:05:26 +02:00
Rodolphe Suescun
cc1ccb8835 Merge branch 'master' of https://github.com/RodZill4/godot-procedural-textures 2018-08-05 18:46:37 +02:00
Rodolphe Suescun
63685f8771 Updated new UI and more refactoring 2018-08-05 18:46:23 +02:00
Rodolphe Suescun
0f916dd16c
Updated generators descriptions 2018-08-04 22:16:37 +02:00
RodZill4
6f0eb8e8e1 Shrinked panoramas 2018-08-04 08:56:07 +02:00
RodZill4
126ac1b8f8 Started a new main window layout + bug fixes 2018-08-04 08:05:34 +02:00
RodZill4
507586cbec Updated bricks and voronoi nodes to provide several outputs
Updated base node class to support several outputs.
Now bricks support 2 outputs : greyscale depth map, and (random) brick color.
Now Voronoi supports 3 outputs : center distance, edge distance and cell color.
Updated bricks example to use brick color output.
2018-08-03 22:38:48 +02:00
RodZill4
a946206a34 Material export and usability improvements
Refactored rendering of textures for save and exporting material now saves all textures.
Added an option to start a clear the project, and proper "save" and "save as..." options.
Added support for disconnects.
2018-08-03 08:16:38 +02:00
RodZill4
0fda03ca42 Reimplemented normal map generation as 3x3 sobel 2018-08-02 08:45:46 +02:00
RodZill4
0c062563c1 Project load fix and translate in transform
Added missing OptionButtons update when loading a project
Added translation to transforms
Added an example using transform
2018-08-02 06:32:08 +02:00
RodZill4
5b20a189f9 New pattern node
Replaced the sin node with a pattern node similar to NeoTextureEdit's FunctionPattern
2018-08-01 07:50:58 +02:00
RodZill4
6b9b954526 Fixed load/save dialogs and refactoring
now load/save dialog use the non-editor classes (thus usable when running the project).

Refactored graphedit and node code (mainly load/save and adding and removing nodes).
2018-07-30 08:45:19 +02:00
RodZill4
279b0e0103 Improved SpatialMaterial support
Now the material node is aimed at Godot's SpatialMaterial. Textures are generated and passed to the SpatialMaterial (and not generated as shaders anymore).
Rendering textures requires a Timer (to wait for the viewport to be rendered). There has to be a better solution...
Added a couple more examples.
2018-07-29 23:43:24 +02:00
RodZill4
58f30c4276 New cylindre model in the preview
Also modified the cube so all faces show the whole texture
2018-07-29 19:19:35 +02:00
RodZill4
100e2dffd1 Merge branch 'master' of https://github.com/RodZill4/godot-procedural-textures 2018-07-29 14:21:55 +02:00
RodZill4
7631f4489b Smart typo in perlin noise node 2018-07-29 14:21:49 +02:00
Rodolphe Suescun
71b8e9e958
First version of the readme... 2018-07-29 12:33:50 +02:00
RodZill4
8afc414b6a Added a screenshot for the doc 2018-07-29 12:07:14 +02:00
RodZill4
4c75ca8565 Added blend modes + minor fixed
Added blend modes (Dissolve, Multiply, Screen, Overlay, Hard Light, Soft Light).
Fixed color popup position in the GradientEditor.
Fixed initial panoram shown in preview.
2018-07-29 11:55:17 +02:00
RodZill4
dffc6fc790 Finished GradientEditor and improved preview
Now gradient editor can remove points.
Improved preview:
- added panorama to 3d preview (with panoramas from the godot material demo)
- texture preview can be maximized
2018-07-28 21:21:05 +02:00
RodZill4
10ea905090 Many changes & fixes...
- shader updates are delayed by .25 seconds to avouid UI freeze
- fixed GraphNode initialization upon loading
- started obsoleting get_source_rgb and get_source_f functions
- updated colorize node to use gradient
- image node can now be loaded/saved
- removed iqnoise node
- rewrote perlin shader to support a seed parameter (seed is calculated from the node's position, so just move it to reseed)
- Added voronoi noise node
- updated code to use % formats instead of concatenating strings (should solve type problems in shaders)
- reworked the context menu (now has submenus)
- fixes in the gradient editor
2018-07-28 09:37:51 +02:00
RodZill4
46adb434bf New gradient editor, more image node progress
Added a gradient editor (should be ready for integration in Colorize node)
The image in the Image node can be modified (but will not be saved yet)
2018-07-27 08:49:54 +02:00
RodZill4
d04a319944 Prepared all nodes for caching and added Image node
Added Image node that can be used to import textures
Renamed all get_shader_code methods to _get_shader code so a caching system can be integrated in node_base (and we can get rid of get_source_rgb and get_source_f functions)
2018-07-26 08:31:28 +02:00
RodZill4
4e0af78b31 Improved nodes and added texture export
Improved perlin noise and transform nodes.
Added an export texture menu entry that exports a texture for the selected node.
2018-07-26 00:08:34 +02:00
RodZill4
a3a8482d03 Added material preview (albedo and normal map only for now)
Also create a copy of materials and shaders when the addon is started so it does not change the addon's default materials.
2018-07-25 06:20:36 +02:00
RodZill4
26b317eec8 Refactoring + added preview for selected node
Also started replacing LineEdits with Spinboxes
2018-07-24 08:04:25 +02:00
RodZill4
3afa9e9715 Added basic normal map node 2018-07-23 23:13:14 +02:00
RodZill4
0cd0609541 Updated all nodes and added warp
- updated all nodes (load/save support and shader generation)
- added warp node
2018-07-23 22:18:43 +02:00
RodZill4
4c9e5762b1 Node position related fixes
Set correct position when creating a new node
Node position is now saved/loaded
Fixed row & column parameters in bricks generator
2018-07-23 06:19:45 +02:00
RodZill4
9443940d9a More nodes and load/save
Added basic colorize and blend nodes
Started implementing loading and saving texture graphs (most nodes need an update to support this)
2018-07-22 23:25:05 +02:00
RodZill4
6c615aeb02 First version
Created base framework and created simple operators
2018-07-22 17:20:27 +02:00
Rodolphe Suescun
ae2294bc9e
Initial commit 2018-07-22 17:08:24 +02:00