Flash Player 11 is required to run VOSC in your browser.

Download the standalone version of VOSC for mobile and desktop below.



Mobile App

Now available for Android and iOS devices of all sizes.

Get it on Google Play

Desktop Pro Version

Currently under development, features of the pro version to include:

  • Audio reactivity
  • Post-process effects
  • Support for external screens
  • Performance mode


Getting Started

VOSC is composed, primarily, of 4 oscillators that offset the position of a massive array of particles. Their effects are added together to calculate the final positions of the particles. By manipulating the size, shape and frequency of these oscillators it is possible to create some very intricate patterns.

The various panels on VOSC can be opened and closed by clicking on the labeled buttons on the top of the screen. Opening a second panel will close the current open panel.

If you want to dive straight in and simply learn by experimentation, go to the PATCH panel and load a patch by dragging one of the patch slots to the left.

OSC Panels

Each oscillator is controlled through its own panel and is made up of the following components.


The AMP slider controls amplitude of the oscillator. This is the physical distance, measured as a percentage of the screen, that the oscillator will displace each particle, or the height of the oscillator wave. Negative values will invert the oscillation around the coordinate axis.


The X-TYPE selector changes the wave form pattern used by the oscillator in the horizontal dimension. Possible values include flat (no oscillation), sine wave, cosine wave, tangent wave, cosecant wave, and triangle wave. The button graphics approximate the shapes of the various waves... tangent and cosecant waves do approach infinity though.


The Y-TYPE selector changes the wave form pattern used by the oscillator in the vertical dimension.


The frequency slider adjusts the frequency or period of the oscillation. The slider is weighted logarithmically so adjusting the slider at the high end will cause a greater change than the low end.


The modulation section causes changes to the frequency of the oscillation, equivalent to adjusting the FREQ slider in a periodic manner. This modulation is the source of all motion generated by the oscillator.


The modulation amplitude slider controls the ammount of modulation to the frequency of the oscillator.


The modulation frequency slider controls the frequency or speed of modulation to the frequency of the oscillator.


Pretty straightforward - the invert button swaps the values of the background and foreground colors.

RES Panel

The resolution panel controls the number of particles synthesized. The maximum value depends on the ability of your computer's graphics card. Most dedicated graphics cards will be able to handle numbers in the millions. Integrated cards may top out at 256000 or less. Of course, lower resolutions are sometimes desirable when certain patterns can become clearer.

Changing the RESOLUTION value requires the buffer in the GPU to be reconstructed, which can take some time for larger values.

The MAX RESOLUTION field limits the resolution field, which can be useful to make sure you don't get slow performance on more limited hardware when loading preset patches with high resolutions. Set this value to the highest number your hardware will allow without significant slowdown so you can safely load any patch.


The RANDOMIZE button will do just what it says - it generates random values for all parameters of all oscillators. It's a really useful way to quickly explore the domain of VOSC's capability, or find a point to start from. This function will leave the current resolution unchanged.


This panel allows for the saving and loading of patches. A patch consists of values for all parameters of all 4 oscillators, as well as values for the colors and resolution. The current state can be saved into a patch by sliding a patch slot to the right. This will overwrite the existing patch saved there. Patches can be loaded on sliding a patch slot to the left. Because the buffer in the GPU needs to be reconstructed when a patch is loaded, there may be a delay when loading patches with high resolutions.

VOSC comes preloaded with patches, which are labeled PRESET ##. User saved patches are labeled with a time stamp. For the web version of VOSC, you can reset to the preloaded patches by clearing your flash cookies. For the mobile version, you can reset them by reinstalling the app.