This workshop will cover the basics of creative coding with C4, a powerful framework for experimenting with interaction, animation and media. You can use C4 for learning, experimenting, generative design, data visualization or even use it to building custom components for real-world iOS applications. Since it is written entirely in Swift and adheres to UIKit paradigms, by learning C4 you’ll actually be learning to how program for the iOS platform.
February 27, 2016
10:30am - 4:30pm
(For those of you who can't make it at 10:30, please come when you can!)
203 - 525 Seymour Street
If the door is locked, call: 604.368.7974, or ping the slack channel and someone will come down and open the door.
Depending on how many people confirm, we might have to move to a bigger space.
This workshop will be for all skill levels. We will be able to keep everyone busy and learning, from novice to experienced coders. This workshop will be led by Travis.
You should bring a Mac laptop with the following:
(Slant has an extra comp or two for people without a Mac laptop)
1) Views & Layers: A major concept in both C4 and iOS programming is the use of views and layers. Instead of drawing layered visuals to a context, you’ll be working with views that have layers and that can render themselves. We’ll briefly discuss the concept of how views and layers work so that you have an excellent understanding of how things are constructed in C4.
2) Objects & Media: Next, we’ll walk you through all the objects and media types currently available in C4. You’ll work with shapes, images, filters , movies, audio, vectors, etc. This section will give you complete overview of the kinds of things you can build with.
3) Properties: All objects, whether visual or non-visual, have properties, and almost all properties are animatable. This section will show you how to work with properties and give you a sense of how to set up visual styles, aesthetics, etc.
4) Animations: (AKA There is no drawing) Yes, for those of you who are used to Processing, OpenFrameworks and Cinder, there is no draw() function! C4 uses an animation-based paradigm where you create end-states and let the system update everything in between for you. End-states are created by setting properties in animation blocks.
5) Interaction: Gestures play a big role in mobile, and this wouldn’t be a complete workshop without learning how to work with taps, swipes, longpresses, and more. We’ll show you how to construct and customize gestures for your sketches.
6) Advanced Animation: If we have time, we’ll step through some advanced animation techniques like sequences, groups, looping and timers. And, for those of you who are used to Processing, OpenFrameworks and Cinder, we’ll actually show you how to draw at 60fps!