What is the course about?
The openFrameworks project aims to put C++ development into the hands of artists, designers and musicians. It brings together high-quality libraries for handling graphics and sound in an integrated way that jump-starts the setup process (which can otherwise be very involved and frustrating). It’s been used in projects involving robotics, music, machine learning, performance, traditional visual media, UX/UI design and large-scale public artworks.
Coding in openFrameworks mostly involves writing C++ code into a pre-generated framework. Producing graphics – even in 3D – is relatively easy and libraries make sound processing equally accessible. We will cover some basics of 3D graphics such as meshes, textures, lighting etc, although that is not the main focus of the course.
This is certainly a little more challenging than, say, Processing or Max/MSP. Because C++ compiles down to machine code, however, you get the benefits of high performance that “easier” creative coding environments can’t deliver. This is especially important for projects that react and interact in real time.
What will we cover?
• Creating an openFrameworks project.
• 2D and 3D graphics in openFrameworks.
• Working with sound.
• Installing and using libraries.
What will I achieve?
By the end of this course you should be able to...
• Create and build an openFrameworks project.
• Use openFrameworks to create 2D and 3D graphics.
• Respond to sound in openFrameworks in real time.
• Work with the ecosystem of openFrameworks libraries.
What level is the course and do I need any particular skills?
This course assumes you have completed the Build course Introduction to C++, or have similar knowledge. You should be familiar with variables, functions, conditionals, loops and the basics of classes. You do not need to be an expert programmer!
If you have experience of these topics in another C-like language (usually Java or C#) you should be able to make the transition to C++ but may need to budget extra time outside class to do so.
How will I be taught, and will there be any work outside the class?
We will use a mixture of presentation, discussion and problem-solving in class.
Are there any other costs? Is there anything I need to bring?
When I've finished, what course can I do next?
Introduction to creative coding using Processing, introduction to Python, introduction to C# or Introduction to C++.
General information and advice on courses at Build is available from the Student Centre and Library on Monday to Friday from 12:00 – 19:00.
See the course guide for term dates and further details