fbpx

Openframeworks: C++ for Processing Coders

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 to manipulate, analyze or explore.

openFrameworks is an open source C++ toolkit designed to assist the creative process by providing a simple and intuitive framework for experimentation. The toolkit is designed to work as a general purpose glue, and wraps together several commonly used libraries. The code is written to be massively cross-compatible. Right now we support five operating systems (Windows, OSX, Linux, iOS, Android) and four IDEs (XCode, Code::Blocks, and Visual Studio and Eclipse). The API is designed to be minimal and easy to grasp. Simply put, openFrameworks is a tool that makes it much easier to make things with code.

// Topics of the workshop include:

1 - Introductions, pretty/shiny pictures, creative uses of programming, and tools/frameworks for creating. How to download/install OF on Mac/Linux/Windows, and getting the bundled examples compiled for the first time. How to start a new project. Differences between C++ and Java, in terms of philosophy, syntax, casting types, atomic variable types (int, float, double, the “unsigned” keyword), and MAYBE pointers.

2 - Drawing pixels, lines, polygons, and typography in 2D and 3D

3 - Animation, playing back video, rendering frames to a PNG sequence, and Reacting to input from mouse, keyboard, microphone, and webcam

4 - Utils: file system, logging, time, format conversion, threads, network, talking to other languages (inter-process, and embedding scripting engines)

5 - Mixing and mingling: using other APIs. Addons: introduction to addon system and demonstration of a few popular addons

6 - More Addons: more demonstrations of more popular addons

7 - How to write your own Addon for OpenFrameworks

8 - OpenFrameworks for iOS and Android

9 - Working with a Kinect and Shaders, and exploring visuals effects and generative art

10 - Algorithms: Writing your own sort, lists, hash-maps, trees, and advantages of C++ over Java. Researching methods and using the internet to find answers.

// Required equipment:

A portable computer with your IDE of choice installed; we recommend (XCode or Code::Blocks). Download openFrameworks for free at http://www.openframeworks.cc/download/.

// Prerequisites:

A comprehensive understanding of Processing or another coding framework.

 

Instructors

JT Nimoy

I am a silicon valley unicorn. I make software art. I communicate between engineers and artists. I think a lot about issues of programming for non-programmers. I am best known for my generative computational aesthetics for Disney's TRON:Legacy. My most contagious meme is BallDroppings. My most visible work is commercial. My art shows in serious galleries and museums. I believe creativity is a serious force of business and humanity, capable of much more than mere entertainment, consumer manipulation, and intellectual invigoration. It is nutritious, healing, magical, and an absolutely essential component in every single one of us.

Reza Ali

Reza Ali is a visual media artist. He uses code to create beautiful images inspired by nature, dynamical systems, biology, physics and mathematics. Reza loves solving problems and making tools and libraries for the creative coding community. He lives and works in San Francisco.