AVS Effect Module Reference
Currently information about the superscope module is here. It uses all kinds of math stuff. Justin is so smart. You can look here for more general information about making presets.
Superscope Reference
To have multiple statements on one line, use a semicolon (;) to delimit the statement. Use parenthesis '( and )' if you are unsure about precedence.
Fields:
| init | set initial variable values here |
| point | This is where the shape of the superscope is defined |
| frame | Used to define movement and transformations. |
| beat | Expression that gets evaluted on the beat |
Operators:
| = | assign |
| +,-,/,* | plus, minus, divide, multiply |
| | | convert to integer, and do bitwise or |
| & | convert to integer, and do bitwise and |
| % | convert to integer, and get remainder |
Variables:
| n | number of points to render (set in Init, Beat or Frame) |
| x | x coordinate, between -1 and 1 |
| y | y coordinate, between -1 and 1 |
| i | position of the scope (0..1). The point position. |
| v | value at point i (-1..1) |
| b | 1 if beat. 0 for no beat. Used for beat changes |
| w | width of screen |
| h | height of screen |
| red | red value. (0..1). Set this variable to set red value. |
| green | green value. (0..1) Set this variable to set green value. |
| blue | blue value. (0..1) Set this variable to set blue value. |
| t, d | variables commonly used for movement |
Functions:
| abs(var) | returns the absolute value of 'var' |
| sin(var) | returns the sine of the angle var (expressed in radians) |
| cos(var) | returns the cosine of the angle var |
| tan(var) | returns the tangent of the angle var |
| asin(var) | returns the arcsine of var |
| acos(var) | returns the arccosine of var |
| atan(var) | returns the arctangent of var |
| sqr(var) | returns the square of var |
| sqrt(var) | returns the square root of var |
| pow(var, var2) | returns var to the power of var2 |
| log(var) | returns the log base of var |
| log10(var) | returns the log base 10 of var |
| sign(var) | returns the sign of var or 0 |
| min(var, var2) | returns the smallest value |
| max(var, var2) | returns the greatest value |
| sigmoid(var, var2) | returns sigmoid function value of x=var (var2=constraint) |
| rand(var) | returns a random value between 0 and var |
| band(var, var2) | boolean and, returns 1 if var and var2 are != 0 |
| bor(var, var2) | boolean or, returns 1 if var or var2 is != 0 |
| bnot(var) | boolean not, returns 1 if var == 0 or 0 if var ! = 0 |
| if(cond, vartrue, varfalse) | if condition is nonzero, returns valtrue, otherwise returns valfalse |
| equal(var, var2) | returns 1 if var=var2, else 0 |
| above(var, var2) | returns 1 if var > var2, else 0 |
| below(var, var2) | returns 1 if var<var2, else 0 |

