diff --git a/Shaders.md b/Shaders.md index 7ce3a0b..75a256e 100644 --- a/Shaders.md +++ b/Shaders.md @@ -41,6 +41,7 @@ fed to a colour port is broadcast to all three channels. A colour cannot be fed | **Sin**, **Floor**, **Fract**, **Abs** | in `value` (any) · out `result` | The sine of a number in radians (one wave every 6.283); rounded down to a whole number; the part after the decimal point (2.75 becomes 0.75, a rising value becomes a sawtooth); the distance from 0 with the sign dropped (-0.3 becomes 0.3, a value crossing 0 becomes a V). Per channel for colours. | | **Step** | in `edge` (number), `value` (any) · out `result` | 0 while `value` is below `edge`, 1 from `edge` on: a hard cut. Per channel for colours. | | **Pow** | in `value` (any), `exponent` (number) · out `result` | `value` to the power of `exponent`: 2 squares it, 0.5 is the square root; an easing curve on `u`, a gamma on a colour. Below 0 the value counts as 0, because GLSL leaves `pow` undefined there (0 to a power of 0 or less is undefined too). Per channel for colours. | +| **Sqrt** | in `value` (any) · out `result` | The square root: 0.25 becomes 0.5, 4 becomes 2. The same as `Pow` with exponent 0.5, in one node. Below 0 the value counts as 0, because GLSL leaves `sqrt` undefined there. Per channel for colours. | An input with nothing to type on it (the Output's two, Luminance's colour) that is left unconnected reads the texel: its colour for a colour port, its alpha for the Output's `alpha`. That is why the