Vvvv is a graphical development environment for " Creative Coding", which is developed by the vvvv group ( Joreg, Max Wolf, Sebastian Gregory, Sebastian Oschatz ). vvvv is the creation and manipulation of video, graphics and data streams in real time.
Initiated in 1998, the company Meso Digital Media Systems Design developing the software vvvv, which was originally intended as in-house application. She had the one set a narrower GUI at runtime parameters, but could not add new elements.
One of the first projects in which the software was used, was jointly organized by meso and 3deluxe realized installation Cyberhelvetia at the Expo 2002 in Switzerland. For this purpose was developed with the help of vvvv a large number of interactive applications, which responded to language, movements and the weather. Over the past years, numerous other projects with the help of vvvv were realized, particularly noteworthy is the implementation of the entire light -, video - and space concept at Frankfurt Cocoon Club and the football globe.
Vvvv basically runs in real time, changes to the "Program Code " can be executed directly - vvvv can thus within the category of data stream -oriented programming languages are classified.
Unlike traditional textural programming languages are in vvvv graphical objects, called " nodes ", used for the development of programs. Individual nodes are equipped with input and output pins, which can be linked together with the mouse via virtual cables and so can exchange data with each other. Input pins are arranged above, output pins are arranged below.
Inspired by programming languages like APL and J data (so-called spreads) can be transferred, which can be processed in parallel by the nodes on each connection vectors.
In comparison with the conventional programming, a node most likely to be compared with a function of - the input pin can be seen analogous to the function parameters, and the output pins similar to the function returns. In contrast to languages that are based on a one-dimensional string, but it is not reliant on an unnamed return value is used in exactly one calling function.
Areas of application
Due to the modular program structure and capabilities for real- time graphics is vvvv especially intended for use in multi-media environments. A short summary of the options below:
- Development and management of multimedia installations: Generation and analysis of audio and video signals, processing of various input and sensor signals to control external systems through open standards (XML, HTTP, RS232, TCP, UDP, OSC, DMX, MIDI) Development of various VJ ( Visual Jockey ) applications: Synchronization of Audio-/Videoanwendungen and use of various external controls such as Midi Controller
- Development of prototypes: Short development cycles and rapid implementation of ideas through graphical programming.
- Allowed by integrating HLSL shaders to DirectX - based vvvv a very simple use of hardware-accelerated 3D graphics.
- Projections: As a result, numerous situations can adjust the image output to a wide, non-planar projection surfaces; Use of the software for the distribution of images over multiple projectors
With vvvv it is not possible to generate stand-alone applications, to run a program that vvvv runtime environment is always required. For this reason, vvvv only conditionally suitable to develop applications in the sense of classical user programs.
Is comparable vvvv most likely with Max / MSP Cycling74 the company and its open source counterpart Pure Data. However, both are applications that were originally designed more for Midi control and audio processing and were only later adapted to the generation of 3D real- time graphics. Vulnerabilities also exist in the simultaneous processing of objects. Thus, the modules function at vvvv in principle with so-called spreads, which means that several parallel computations take place in one step, which significantly simplifies programming.