Skip to content

Repository files navigation

ofxVisualProgramming - A visual-programming patching addon for OF

A collection of visual interactive objects to create/develop in a dataflow+live-coding patching environment. Embedded with Lua scripting interpreter, plus live compile of GLSL Shaders from version 150 to 410, and live editing/execute Bash scripts(macOS & linux) capabilities.

Mosaic 0.6.9 Screenshot from project Mosaic, embedding ofxVisualProgramming

Table of Contents

OF COMPATIBLE RELEASE

0.12.0 STABLE (official download from OF site)

Compiled/tested with QTCreator on osx/linux

If you want to build ofxVisualProgramming, just download OF0.12.0 for your OS (osx, linux, windows) and follow the setup guide for qtcreator IDE.

REFERENCE

ofxVisualProgramming came directly from the idea behind the ofxComposer addon by patriciogonzalezvivo and James George, and obviously from the various commercial and no-commercial existing visual programming softwares, the open source option Pure Data, the commercial options Max/Msp and TouchDesigner, etc..., to talk of the latest ones, and without forgetting probably the first one from 1968,

GRAIL

GRAIL RM-599-ARPA from the RAND Corporation.

So special thanks to all the precursors of this ideas, and more thanks to the ofxComposer developers for their code, it has been a great reference for start working on this ofxaddon.

DESCRIPTION

This addon is the core code of the project MosaicMosaic logo, maintained isolated in order to obtain a better modularized code structure, encourage contributions, simplify bug fixing and enhance code quality.

This project deals with the idea of integrate/amplify man-machine communication, offering a real-time flowchart based visual interface for high level creative coding. As live-coding scripting languages offer a high level coding environment, ofxVisualProgramming and the Mosaic Project as his parent layer container, aim at a high level visual-programming environment, with embedded multi scripting languages availability (Lua, GLSL, and BASH(macOS & linux) ).

As this project is based on openFrameworks, one of the goals is to offer as more objects as possible, using the pre-defined OF classes for trans-media manipulation (audio, text, image, video, electronics, computer vision), plus all the gigantic ofxaddons ecosystem actually available (machine learning, protocols, web, hardware interface, among a lot more).

While the described characteristics could potentially offer an extremely high complex result (OF and OFXADDONS ecosystem is really huge, and the possibility of multiple scripting languages could lead every unexperienced user to confusion), the idea behind the interface design aim at avoiding the "high complex" situation, embodying a direct and natural drag&drop connect/disconnect interface (mouse/trackpad) on the most basic level of interaction, adding text editing (keyboard) on a intermediate level of interaction (script editing), following most advanced level of interaction for experienced users (external devices communication, automated interaction, etc...)

KEYWORDS

mosaic, ofxVisualProgramming, openframeworks, linux, macOS, windows, creative-coding, live-coding, cyber-coding, physical-computing, visual-computing, scripting, transmedia, programming, visual-programming, cyber-programming

DEPENDENCIES

In order to build ofxVisualProgramming, you'll need this addons: