diff --git a/docs/funcs.md b/docs/funcs.md index a9ec23d..7c079ed 100644 --- a/docs/funcs.md +++ b/docs/funcs.md @@ -25,7 +25,7 @@ - [show](#show) - [Color](#color) - [contrast](#contrast) - - [color](#color) + - [color `vec4`](#color-vec4) - [colorama](#colorama) - [invert](#invert) - [luma](#luma) @@ -38,6 +38,8 @@ - [scrollX](#scrollX) - [scrollY](#scrollY) - [Global variables](#global-variables) + - [mouse](#mouse) + - [time](#time) - [Modulators](#modulators) - [Operators](#operators) - [Sources](#sources) @@ -95,7 +97,7 @@ Functions for manipulating audio signals. Functions for manipulating color. - [contrast](#contrast) -- [color](#color) +- [color `vec4`](#color-vec4) - [colorama](#colorama) - [invert](#invert) - [luma](#luma) @@ -109,7 +111,7 @@ Functions for manipulating color. Larger `amount` value makes higher contrast. -### color +### color `vec4` `.color( r, g, b )` @@ -214,3 +216,145 @@ Scale texture. --- +## Global variables + +Useful variables that are defined globally, and can be used within functions as a parameter. + +- [mouse](#mouse) +- [time](#time) + +### mouse + +`mouse` + +* `.x` :: x position of mouse +* `.y` :: y position of mouse + +#### Example + +Control the oscillator frequency with the mouse position: + +```javascript +osc(() => mouse.x).out(o0) +``` + +### time + +`time` + +* `time` :: the current time + +#### Example + +Control the oscillator using a sine wave based on the current time: + +```javascript +osc( ({time}) => Math.sin(time) ) +.out(o0) +``` + +--- + +## Modulators + +Functions for describing modulations of sources. + +- [modulate](#modulate) +- [modulateHue](#modulateHue) +- [modulateKaleid](#modulateKaleid) +- [modulatePixelate](#modulatePixelate) +- [modulateRotate](#modulateRotate) +- [modulateScale](#modulateScale) +- [modulateScrollX](#modulateScrollX) +- [modulateScrollY](#modulateScrollY) + +### modulate + +`.modulate( texture, amount )` + +* `texture` + * `color` :: `vec4`, see [color `vec4`](#color-vec4) + * `src` :: see [Sources](#sources) + * `shape` :: see [Sources](#sources) +* `amount` :: float (default `0.1`) + +Modulate texture. More about modulation at: + +### modulateHue + +`.modulateHue( `color`, `amount` )` + +* texture + * color :: vec4 + * src + * shape +* amount :: float (default 1.0) + +Changes coordinates based on hue of second input. Based on: + +### modulateKaleid + +`.modulateKaleid( `nSides` )` + +* texture + * color :: vec4 + * src + * shape +* nSides :: float (default 4.0) + +### modulatePixelate + +`.modulatePixelate( `multiple`, `offset` )` + +* texture + * color :: vec4 + * src + * shape +* multiple :: float (default 10.0) +* offset :: float (default 3.0) + +### modulateRotate + +`.modulateRotate( `multiple`, `offset` )` + +* texture + * color :: vec4 + * src + * shape +* multiple :: float (default 1.0) +* offset :: float (default 0.0) + +### modulateScale + +`.modulateScale( `multiple`, `offset` )` + +* texture + * color :: vec4 + * src + * shape +* multiple :: float (default 1.0) +* offset :: float (default 1.0) + +### modulateScrollX + +`.modulateScrollX( `multiple`, `scrollX`, `speed` )` + +* texture + * color :: vec4 + * src + * shape +* scrollX :: float (default 0.5) +* speed :: float (default 0.0) + +### modulateScrollY + +`.modulateScrollY( `multiple`, `scrollY`, `speed` )` + +* texture + * color :: vec4 + * src + * shape +* scrollY :: float (default 0.5) +* speed :: float (default 0.0) + +--- \ No newline at end of file diff --git a/docs/funcs_color.md b/docs/funcs_color.md index 60bee46..48d526f 100644 --- a/docs/funcs_color.md +++ b/docs/funcs_color.md @@ -3,7 +3,7 @@ Functions for manipulating color. - [contrast](#contrast) -- [color](#color) +- [color `vec4`](#color-vec4) - [colorama](#colorama) - [invert](#invert) - [luma](#luma) @@ -17,7 +17,7 @@ Functions for manipulating color. Larger `amount` value makes higher contrast. -### color +### color `vec4` `.color( r, g, b )` diff --git a/docs/funcs_global-variables.md b/docs/funcs_global-variables.md index 4c5807f..b0e56ea 100644 --- a/docs/funcs_global-variables.md +++ b/docs/funcs_global-variables.md @@ -1,29 +1,36 @@ -# Global variables +## Global variables Useful variables that are defined globally, and can be used within functions as a parameter. - [mouse](#mouse) - [time](#time) ---- - ### mouse -* .x :: x position of mouse -* .y :: y position of mouse -Example: -- Control the oscillator frequency with the mouse position: -``` +`mouse` + +* `.x` :: x position of mouse +* `.y` :: y position of mouse + +#### Example + +Control the oscillator frequency with the mouse position: + +```javascript osc(() => mouse.x).out(o0) ``` ### time -Example: -- Control the oscillator using a sine wave based on the current time: -``` -osc( - ({time}) => Math.sin(time) -) +`time` + +* `time` :: the current time + +#### Example + +Control the oscillator using a sine wave based on the current time: + +```javascript +osc( ({time}) => Math.sin(time) ) .out(o0) ``` diff --git a/docs/funcs_modulators.md b/docs/funcs_modulators.md index cb303f2..803a327 100644 --- a/docs/funcs_modulators.md +++ b/docs/funcs_modulators.md @@ -1,28 +1,32 @@ -# Modulators +## Modulators Functions for describing modulations of sources. -- [.modulate( `texture`, `amount` )](#.modulate( `texture`, `amount` )) -- [.modulateHue( `color`, `amount` )](#.modulateHue( `color`, `amount` )) -- [.modulateKaleid( `nSides` )](#.modulateKaleid( `nSides` )) -- [.modulatePixelate( `multiple`, `offset` )](#.modulatePixelate( `multiple`, `offset` )) -- [.modulateRotate( `multiple`, `offset` )](#.modulateRotate( `multiple`, `offset` )) -- [.modulateScale( `multiple`, `offset` )](#.modulateScale( `multiple`, `offset` )) -- [.modulateScrollX( `multiple`, `scrollX`, `speed` )](#.modulateScrollX( `multiple`, `scrollX`, `speed` )) -- [.modulateScrollY( `multiple`, `scrollY`, `speed` )](#.modulateScrollY( `multiple`, `scrollY`, `speed` )) +- [modulate](#modulate) +- [modulateHue](#modulateHue) +- [modulateKaleid](#modulateKaleid) +- [modulatePixelate](#modulatePixelate) +- [modulateRotate](#modulateRotate) +- [modulateScale](#modulateScale) +- [modulateScrollX](#modulateScrollX) +- [modulateScrollY](#modulateScrollY) ---- +### modulate -### .modulate( `texture`, `amount` ) -* texture - * color :: vec4 - * src - * shape -* amount :: float (default 0.1) +`.modulate( texture, amount )` + +* `texture` + * `color` :: `vec4`, see [color `vec4`](#color-vec4) + * `src` :: see [Sources](#sources) + * `shape` :: see [Sources](#sources) +* `amount` :: float (default `0.1`) Modulate texture. More about modulation at: -### .modulateHue( `color`, `amount` ) +### modulateHue + +`.modulateHue( `color`, `amount` )` + * texture * color :: vec4 * src @@ -31,14 +35,20 @@ Modulate texture. More about modulation at: -### .modulateKaleid( `nSides` ) +### modulateKaleid + +`.modulateKaleid( `nSides` )` + * texture * color :: vec4 * src * shape * nSides :: float (default 4.0) -### .modulatePixelate( `multiple`, `offset` ) +### modulatePixelate + +`.modulatePixelate( `multiple`, `offset` )` + * texture * color :: vec4 * src @@ -46,7 +56,10 @@ Changes coordinates based on hue of second input. Based on: