|Developer(s)||Zachary Lieberman, Theo Watson, Arturo Castro|
0.11.2 / March 24, 2021
|Operating system||Microsoft Windows, macOS, Linux, iOS, Android|
openFrameworks is an open source toolkit designed for creative coding founded by Zachary Lieberman, Theo Watson and Arturo Castro. OpenFrameworks is written in C++ and built on top of OpenGL. It runs on Microsoft Windows, macOS, Linux, iOS, Android and Emscripten. It is maintained by its founders with contributions by other members of the openFrameworks community.
The 0.01 version of openFrameworks was released by Zachary Lieberman on August 3, 2005. By February 2006, Lieberman was using version 0.03 with their students at the Parsons School of Design in New York City. According to its authors, openFrameworks was developed for
"... folks using computers for creative, artistic expression, and who would like low level access to the data inside of media in order manipulate, analyze or explore. That audience we felt was significantly underserved by the current crop of C++ libraries."
Artists and projects
Several notable artists have used openFrameworks in their projects. Co-founder Zach Lieberman used the toolkit for his 2006 Drawn project, in which visitors can create painted ink shapes and then interact with them. Co-founder Theo Watson has used openFrameworks for their projects audio space, where visitors can leave spatialised audio messages in a room and hear messages left by previous visitors, and "Laser Tag." In 2010, Lieberman, Watson, Graffiti Research Lab and others working together as "Free Art and Technology" used openFrameworks for the "EyeWriter" project, a low-cost eye tracking system originally designed to allow paralyzed graffiti artist Tempt One to be able to draw using his eyes. In 2006, Cory Arcangel used openFrameworks to create the video projection Colors, taking the 1988 film of the same name and playing it one horizontal row of pixels at a time, over a period of more than 33 days. In 2012, Petros Vrellis created an interactive version of Vincent van Gogh's "The Starry Night" using openFrameworks. Terry Cavanagh's indie video game "Super Hexagon" was originally created in openFrameworks.
OpenFrameworks' emphasis on creative coding is similar to the Processing language in that both projects present a simplified interface to powerful libraries for media, hardware and communication. openFrameworks's main difference from Processing is that it is written in C++, instead of Java. Users will find many similarities between the two libraries, for example what is beginShape() in Processing is ofBeginShape() in openFrameworks. The openFrameworks wiki includes an article for people coming to openFrameworks from Processing.
Another similar project is Cinder, which is also a C++ library framework for creative programming. The primary difference is that openFrameworks has a larger number of dependencies on open source libraries, allowing advanced programmers more control and transparency, while Cinder is more dependent on libraries built into the operating systems it sits on top of, which generally means updates and bug fixes are more frequent and reliable with openFrameworks.
- "Contributors to openframeworks/OpenFrameworks". GitHub.
- "openFrameworks FAQ". Retrieved 10 April 2016.
- "Drawn". thesystemis.com. Retrieved 2022-12-22.
- "Zach Lieberman and Golan Levin at NTT ICC". Rhizome. Retrieved 2022-12-24.
- "AUDIO SPACE". Theodore Watson - Interactive Installations. Retrieved 2022-12-22.
- "LASER TAG". Theodore Watson - Interactive Installations. Retrieved 2022-12-22.
- "EYEWRITER". Theodore Watson - Interactive Installations. Retrieved 2022-12-22.
- Arcangel, Cory (2018). "Colors Personal Edition" (PDF). The Source. 1 (9): 8.
- Tate. "'Colors', Cory Arcangel, 2006". Tate. Retrieved 2022-12-24.
- "Interactive 'Starry Night' Brings The Painting To Life". HuffPost. 2012-02-10. Retrieved 2022-12-24.
- "Super Hexagon brings concentric chiptune madness to BlackBerry 10". Engadget. Retrieved 2022-12-24.
- "openFrameworks for Processing users". Retrieved 10 April 2016.