What is OpenFrameworks?

openFrameworks logo

OpenFrameworks showreall

What is OpenFrameworks?

OpenFrameworks (or "OF" for short), is an open source C++ framework for creative coding, similar to Processing. It is written in the C++ language and wraps a large set of libraries to provide a simple to use programming interface.

What can I do with it?

Since it's written in a "lower level" language than Processing, it can be an order of magnitude faster for things like pixel processing, computer vision, large scale datasets, etc. It's used by artists, designers, performers, and the advertising industry for large scale, realtime graphical applications.

What can I run OF programs on?

OF supports desktop operating systems (Mac/Windows/Linux), mobile (iOS/Android), as well as embedded computing (RaspberryPi/tvOS). This means, similar to Processing, you can write one app that you can build & run on multiple platforms using the same code.

What's harder about using it than Processing?

OF doesn't come with a built-in editor environment and you will need to learn to use a more software development program like Xcode (Mac), Visual Studio (Windows), etc. AT some point, you will also have to learn about things like memory management, pointers, etc. It's not hard, but requires a little more understanding when doing complex projects. It's kind of like moving from the Processing editor to using Eclipse/Netbeans in Java.

What's great about OF?

We already mentioned the speed but one of the best aspects of OF is the addons ecosystem. An OF "addon" is basically an additional library that adds extended functionality to the OpenFrameworks programming interface and is named using the "ofx" prefix. There are hundreds of community supplied addons providing expanded sensor access, sound processing, physical modeling, etc.

See ofxaddons.com for a searchable list of the currently available addons.