material-maker/README.md
2018-08-04 22:16:37 +02:00

60 lines
2.2 KiB
Markdown

This is an addon for the Godot game engine that can be used to create texture procedurally.
Its user interface is based on Godot's GraphEditor: textures are described as interconnected texture generators and operators.
![Screenshot](doc/screenshot.png)
## Generators
### Image
This operator reads a bitmap from disk
### Pattern
This generator creates a greyscale image by mixing an horizontal and a vertical pattern.
Patterns can either be based on a sine, triangle or square waveform (i.e. the color as function of the x or y coordinate).
The frequency (number of waves per unit) be configure for both axes.
Mix functions can also be configured.
![Sine pattern](doc/sine.png)
### Bricks
This generator creates bricks greyscale patterns.
The Bricks generator has 5 parameters:
* the number of brick rows
* the number of bricks per row
* the offset between even and odd rows
* the mortar space between bricks
* the bevel at the edge of the bricks
The bricks generator has 2 output:
* the first one will show mortal as black and bricks as white (bevel being shown as a gradient). It can be used as mask to mix brick and mortar, or to generate depth and normal textures
* the second one will just show a different color for each brick. It can be used to affect the brick's colors (and will be used in the future to offset textures).
![Bricks pattern](doc/bricks.png)
### Perlin Noise
The Perlin Noise generator creates a greyscale pattern and has 4 parameters:
* the horizontal and vertical scale of the first iteration
* the number of iteration
* the persistence (the weight ratio between 2 iterations)
![Perlin Noise](doc/perlin.png)
### Voronoi Noise
The Voronoi Noise generator creates greyscale patterns based on Voronoi diagrams and has 3 parameters:
* the horizontal and vertical scale (the number of feature points)
* the "intensity" of the noise (used to adjust the generated color)
The Voronoi generator has 3 outputs:
* The first output shows a greyscale image where intensity depends on the distance to the cell centers
* The second output shows a greyscale image where intensity depends on the distance to the cell edges
* The third output shows a different color for each cell.
![Voronoi Noise](doc/voronoi.png)