An introduction to creative coding using openFrameworks

Within this workshop, we cover the basics of using the creative coding toolkit openFrameworks. We will learn how to set up an openFrameworks application from scratch using the integrated project generator, investigate the application's structure and way of functioning as well as gaining first experiences in reading the documentation. Finally, we will create our first application using some basic drawing and interaction features provided through the openFrameworks toolkit.

In order to create an openFrameworks application, we need some basic knowledge about the programming language C++. No need to be scared! We will cover some essentials about C++ and object-oriented programming at the beginning of the workshop, following a practical approach by performing live coding demonstrations. This should set everyone up to get going with openFrameworks.

Slides and source code, covering all relevant and required material to complete this workshop, are available online via GitHub: [ Slides ] [ Source code ] [ C++ introduction ]

Workshop Outcome

Workshop Content In Detail

Introduction to openFrameworks

  1. openFrameworks folder structure
  2. Reading the documentation
  3. openFrameworks project generator
  4. Your first openFrameworks project
 featuring the application base frame, drawing and movement of a ball, keyboard and mouse interaction, random properties and more...

Introduction to C++

  1. C++ base frame
  2. Statements
  3. Arithmetic operators, void methods and string object
  4. More functions and local vs global variables/scope
  5. Namespaces and forward declaration
  6. Header vs implementation file
  7. More primitive data types, the string object refreshed and the Array collection
  8. For-loop, while-loop and array iteration
  9. Branching source code using conditional statements
  10. Relational and logical operators

Prerequisites

  • None:
 We start from scratch with the basics, step-by-step.
  • Nice to have: Understanding of the concept of object-oriented programming (OOP), familiar with C++
, as well as being creative and having a vast imagination of what you want to do.

Helpful Online Resources

last update: November 2016