Create with Visript
Visript is Visamp’s language for realtime visuals. Write a few lines, see them render, then add motion, audio, interaction and effects. Scripts run in your browser as WebAssembly, with Canvas 2D and WebGL2 doing the drawing.
Start with a moving shape
render {
draw::background(color: color::rgb(r: 0.02, g: 0.03, b: 0.06))
draw::circle(
x: $WIDTH / 2 + math::sin(rad: $TIME_SEC) * $WIDTH * 0.2,
y: $HEIGHT / 2,
radius: $HEIGHT * 0.08,
color: $COLOR_TURQUOISE
)
effect::bloom(threshold: 0.5, intensity: 1.5, radius: 12)
}
Paste this into the Visamp editor. No script build step is needed.
Find your next step
- New to Visript? Follow Quick Start and Your First Script.
- Draw something: explore 2D primitives, paths and transforms, or 3D.
- Make it react: use audio detection and pointer/keyboard input.
- Shape the whole image: combine effects, filters and feedback.
- Try complete scripts: browse complete examples.
- Something is wrong? Start with errors and troubleshooting.
Language and files
The language is Visript; its standard file extension is .viscript.
Use visript for Markdown code fences. .vdsl remains a legacy file alias.
This reference describes the current 5.2 language. Old parameter names and audio
constants may require updates; see language conventions
and the audio migration notes.
Dimensions are canvas pixels in 2D and world units in 3D. Named arguments, explicit angle units and a small set of lifecycle blocks keep scripts readable. The standard-library guide maps each namespace to its reference page.