test doc structure

This commit is contained in:
Jack Armitage
2019-03-20 11:24:49 +00:00
parent 093513eb96
commit b717c3b3aa
6 changed files with 347 additions and 100 deletions
+212 -11
View File
@@ -50,8 +50,25 @@
- [modulateScrollX](#modulateScrollX)
- [modulateScrollY](#modulateScrollY)
- [Operators](#operators)
- [add](#add)
- [blend](#blend)
- [diff](#diff)
- [layer](#layer)
- [mult](#mult)
- [Sources](#sources)
- [gradient](#gradient)
- [noise](#noise)
- [osc](#osc)
- [out](#out)
- [render](#render)
- [shape](#shape)
- [solid](#solid)
- [src](#src)
- [voronoi](#voronoi)
- [Parameter sequences](#parameter-sequences)
- [Lists as parameter sequences](#lists-as-parameter-sequences)
- [Functions on parameter sequences](#functions-on-parameter-sequences)
- [fast](#fast)
---
@@ -257,8 +274,7 @@ osc(() => mouse.x).out(o0)
Control the oscillator using a sine wave based on the current time:
```javascript
osc( ({time}) => Math.sin(time) )
.out(o0)
osc( ({time}) => Math.sin(time) ).out(o0)
```
---
@@ -281,7 +297,7 @@ Functions for describing modulations of sources.
`.modulate( texture, amount )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `amount` :: float (default `0.1`)
@@ -294,7 +310,7 @@ More about modulation at: https://lumen-app.com/guide/modulation/
`.modulateHue( color, amount )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `amount` :: float (default `1.0`)
@@ -307,7 +323,7 @@ Based on:https://www.shadertoy.com/view/XtcSWM
`.modulateKaleid( nSides )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `nSides` :: float (default `4.0`)
@@ -319,7 +335,7 @@ See also: [`kaleid`](#kaleid).
`.modulatePixelate( multiple, offset )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `multiple` :: float (default `10.0`)
@@ -332,7 +348,7 @@ See also: [`pixelate`](#pixelate)
`.modulateRotate( multiple, offset )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `multiple` :: float (default `1.0`)
@@ -345,7 +361,7 @@ See also: [`rotate`](#rotate)
`.modulateScale( multiple, offset )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `multiple` :: float (default `1.0`)
@@ -358,7 +374,7 @@ See also: [`scale`](#scale)
`.modulateScrollX( multiple, scrollX, speed )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `scrollX` :: float (default `0.5`)
@@ -371,7 +387,7 @@ See also: [`scrollX`](#scrollx)
`.modulateScrollY( multiple, scrollX, speed )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `scrollY` :: float (default `0.5`)
@@ -379,5 +395,190 @@ See also: [`scrollX`](#scrollx)
See also: [`scrollY`](#scrollY)
---
---
## Operators
Functions for performing operations on sources.
- [add](#add)
- [blend](#blend)
- [diff](#diff)
- [layer](#layer)
- [mult](#mult)
### add
`.add( texture, amount )`
* `texture`
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `amount` :: float (default `0.5`)
Add textures.
### blend
`.blend( texture, amount )`
* `texture`
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `amount` :: float (default `0.5`)
Blend textures.
### diff
`.diff( texture )`
* `texture`
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
Return difference of textures.
### layer
`.layer( texture )`
* `texture`
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
Overlay texture based on alpha value.
### mult
`.mult( texture, amount )`
* `texture`
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `amount` :: float (default `1.0`)
Multiply images and blend with the texture by `amount`.
---
## Sources
Sources are elementary generators that output different types of visual content.
- [gradient](#gradient)
- [noise](#noise)
- [osc](#osc)
- [out](#out)
- [render](#render)
- [shape](#shape)
- [solid](#solid)
- [src](#src)
- [voronoi](#voronoi)
### gradient
`gradient( speed )`
* `speed` :: float (default `x`)
### noise
`noise( scale, offset )`
* `scale` :: int (default `10.0`)
* `offset` :: float (default `0.1`)
Generate [Perlin noise](https://en.wikipedia.org/wiki/Perlin_noise).
### osc
`osc( frequency, sync, offset )`
* `frequency` :: float (default `60.0`)
* `sync` :: float (default `0.1`)
* `offset` :: float (default `0.0`)
### out
`.out( buffer )`
* `buffer`
* `osc`: `o0`, `o1`, `o2`, `o3`
* `src`: `s0`, `s1`, `s2`, `s3`
### render
`render( buffer )`
* `buffer`: buffer (default `o0`)
### shape
`shape( sides, radius, smoothing)`
* `sides` :: int (default `3.0`)
* `radius` :: float (default `0.3`)
* `smoothing` :: float (default `0.01`)
### solid
`solid( r, g, b, a )`
* `r` :: float (default `0.0`)
* `g` :: float (default `0.0`)
* `b` :: float (default `0.0`)
* `a` :: float (default `1.0`)
### src
`src( input )`
* `input` :: input (examples: `o0`, `s1`)
### voronoi
`voronoi( scale, speed, blending )`
* `scale` :: float (default `5`)
* `speed` :: float (default `0.3`)
* `blending` :: float (default `0.3`)
Generate [voronoi shapes](https://en.wikipedia.org/wiki/Voronoi_diagram).
---
## Parameter sequences
- [Lists as parameter sequences](#lists-as-parameter-sequences)
- [Functions on parameter sequences](#functions-on-parameter-sequences)
- [fast](#fast)
### Lists as parameter sequences
```
osc(
[80, 100, 200, 50], 1 )
)
.out(o0)
```
### Functions on parameter sequences
#### fast
`fast ( amount) `
* `amount` :: float (default `x`)
```
osc(
[80, 100, 200, 50].fast(0.2), 1 )
)
.out(o0)
```
+1 -2
View File
@@ -31,6 +31,5 @@ osc(() => mouse.x).out(o0)
Control the oscillator using a sine wave based on the current time:
```javascript
osc( ({time}) => Math.sin(time) )
.out(o0)
osc( ({time}) => Math.sin(time) ).out(o0)
```
+8 -8
View File
@@ -16,7 +16,7 @@ Functions for describing modulations of sources.
`.modulate( texture, amount )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `amount` :: float (default `0.1`)
@@ -29,7 +29,7 @@ More about modulation at: https://lumen-app.com/guide/modulation/
`.modulateHue( color, amount )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `amount` :: float (default `1.0`)
@@ -42,7 +42,7 @@ Based on:https://www.shadertoy.com/view/XtcSWM
`.modulateKaleid( nSides )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `nSides` :: float (default `4.0`)
@@ -54,7 +54,7 @@ See also: [`kaleid`](#kaleid).
`.modulatePixelate( multiple, offset )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `multiple` :: float (default `10.0`)
@@ -67,7 +67,7 @@ See also: [`pixelate`](#pixelate)
`.modulateRotate( multiple, offset )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `multiple` :: float (default `1.0`)
@@ -80,7 +80,7 @@ See also: [`rotate`](#rotate)
`.modulateScale( multiple, offset )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `multiple` :: float (default `1.0`)
@@ -93,7 +93,7 @@ See also: [`scale`](#scale)
`.modulateScrollX( multiple, scrollX, speed )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `scrollX` :: float (default `0.5`)
@@ -106,7 +106,7 @@ See also: [`scrollX`](#scrollx)
`.modulateScrollY( multiple, scrollX, speed )`
* `texture`
* `color` :: `vec4`, see [color `vec4`](#color-vec4)
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `scrollY` :: float (default `0.5`)
+49 -32
View File
@@ -1,50 +1,67 @@
# Operators
## Operators
Functions for performing operations on sources.
- [.add( `texture`, `amount` )](#.add( `texture`, `amount` ))
- [.blend( `texture`, `amount` )](#.blend( `texture`, `amount` ))
- [.diff( `texture` )](#.diff( `texture` ))
- [.layer()](#.layer())
- [.mult( `texture`, `amount` )](#.mult( `texture`, `amount` ))
- [add](#add)
- [blend](#blend)
- [diff](#diff)
- [layer](#layer)
- [mult](#mult)
---
### add
### .add( `texture`, `amount` )
* texture
* color :: vec4
* src
* shape
* amount :: float (default 0.5)
`.add( texture, amount )`
* `texture`
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `amount` :: float (default `0.5`)
Add textures.
### .blend( `texture`, `amount` )
* texture
* color :: vec4
* src
* shape
* amount :: float (default 0.5)
### blend
`.blend( texture, amount )`
* `texture`
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `amount` :: float (default `0.5`)
Blend textures.
### .diff( `texture` )
* texture
* color :: vec4
* src
* shape
### diff
`.diff( texture )`
* `texture`
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
Return difference of textures.
### .layer()
### layer
`.layer( texture )`
* `texture`
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
Overlay texture based on alpha value.
### .mult( `texture`, `amount` )
* texture
* color :: vec4
* src
* shape
* amount :: float (default 1.0)
### mult
Multiply images and blend with the texture by `amount`.
`.mult( texture, amount )`
* `texture`
* `color` :: see [color `vec4`](#color-vec4)
* `src` :: see [`src`](#src)
* `shape` :: see [`shape`](#shape)
* `amount` :: float (default `1.0`)
Multiply images and blend with the texture by `amount`.
+69 -44
View File
@@ -1,58 +1,83 @@
# Sources
## Sources
Sources are the
Sources are elementary generators that output different types of visual content.
- [osc( `frequency`, `sync`, `offset` )](#osc( `frequency`, `sync`, `offset` ))
- [render( `output buffer`)](#render( `output buffer`))
- [shape( `sides`, `radius`, `smoothing`)](#shape( `sides`, `radius`, `smoothing`))
- [solid( `r`, `g`, `b`, `a`)](#solid( `r`, `g`, `b`, `a`))
- [gradient( `speed` )](#gradient( `speed` ))
- [src( `input` )](#src( `input` ))
- [noise( `scale`, `offset` )](#noise( `scale`, `offset` ))
- [voronoi( `scale`, `speed`, `blending` )](#voronoi( `scale`, `speed`, `blending` ))
- [.out( `output buffer` )](#.out( `output buffer` ))
- [gradient](#gradient)
- [noise](#noise)
- [osc](#osc)
- [out](#out)
- [render](#render)
- [shape](#shape)
- [solid](#solid)
- [src](#src)
- [voronoi](#voronoi)
---
### gradient
### osc( `frequency`, `sync`, `offset` )
* frequency :: float (default 60.0)
* sync :: float (default 0.1)
* offset :: float (default 0.0)
`gradient( speed )`
### render( `output buffer`)
* default: `o0`
* `speed` :: float (default `x`)
### shape( `sides`, `radius`, `smoothing`)
* sides :: int (default 3.0)
* radius :: float (default 0.3)
* smoothing :: float (default 0.01)
### noise
### solid( `r`, `g`, `b`, `a`)
* r :: float (default 0.0)
* g :: float (default 0.0)
* b :: float (default 0.0)
* a :: float (default 1.0)
`noise( scale, offset )`
### gradient( `speed` )
* speed :: float
* `scale` :: int (default `10.0`)
* `offset` :: float (default `0.1`)
### src( `input` )
* input :: examples: `o0`, `s1`
Generate [Perlin noise](https://en.wikipedia.org/wiki/Perlin_noise).
### noise( `scale`, `offset` )
* scale :: int (default 10.0)
* offset :: float (default 0.1)
### osc
Generate Perlin noise.
`osc( frequency, sync, offset )`
### voronoi( `scale`, `speed`, `blending` )
* scale :: float (default 5)
* speed :: float (default 0.3)
* blending :: float (default 0.3)
* `frequency` :: float (default `60.0`)
* `sync` :: float (default `0.1`)
* `offset` :: float (default `0.0`)
Generate voronoi shapes.
### out
### .out( `output buffer` )
* output buffer
* osc: `o0`, `o1`, `o2`, `o3`
* src: `s0`, `s1`, `s2`, `s3`
`.out( buffer )`
* `buffer`
* `osc`: `o0`, `o1`, `o2`, `o3`
* `src`: `s0`, `s1`, `s2`, `s3`
### render
`render( buffer )`
* `buffer`: buffer (default `o0`)
### shape
`shape( sides, radius, smoothing)`
* `sides` :: int (default `3.0`)
* `radius` :: float (default `0.3`)
* `smoothing` :: float (default `0.01`)
### solid
`solid( r, g, b, a )`
* `r` :: float (default `0.0`)
* `g` :: float (default `0.0`)
* `b` :: float (default `0.0`)
* `a` :: float (default `1.0`)
### src
`src( input )`
* `input` :: input (examples: `o0`, `s1`)
### voronoi
`voronoi( scale, speed, blending )`
* `scale` :: float (default `5`)
* `speed` :: float (default `0.3`)
* `blending` :: float (default `0.3`)
Generate [voronoi shapes](https://en.wikipedia.org/wiki/Voronoi_diagram).
+8 -3
View File
@@ -1,9 +1,8 @@
# Parameter sequences
## Parameter sequences
- [Lists as parameter sequences](#lists-as-parameter-sequences)
- [Functions on parameter sequences](#functions-on-parameter-sequences)
---
- [fast](#fast)
### Lists as parameter sequences
@@ -16,6 +15,12 @@ osc(
### Functions on parameter sequences
#### fast
`fast ( amount) `
* `amount` :: float (default `x`)
```
osc(
[80, 100, 200, 50].fast(0.2), 1 )