Date: 24th October, 2017
Skype sessions 2 and 3 were the symposiums, discussed here and here. So now we come to Skype Session 4 which was a live streaming guest speaker session by Romain M.
You can see the background study I did before the lesson began here.
Romain began the lecture by confessing that he did not consider himself an expert on the subject of processing, however, Jonathan explained that we did not want to be experts and therefore did not need an expert on the subject. We simply wanted to explore possibilities.
Romain explained that processing is an open source software, which means we can share our work and find lots and lots of downloadable-s that allow us to incorporate it into our own practice. It is the perfect way for non-programmers to begin coding.
He discussed a few projects people had created using processing and then we moved onto the basics.
When we open the processing window and type something, the command should turn blue if the computer recognizes our bit of code/instruction. After completing our instruction we have to press ‘run’ to play the code.
Things to note:
-
Code is case sensitive
-
Check if it turns blue
-
ALWAYS finish with a semi colon
So then we drew our first shape: rect(x,y,w,h), requiring us to imagine the computer screen like a graph.
Other functions we discussed were:
-
Line(x1, y1, x2, y2) where the line is drawn from A(x1, y1) to B(x2,y2)
-
Point(x,y)
-
Ellipse(x,y,w,h) where a circle would be an ellipse with equal w and h.
Then we discussed how the order of the instruction matters. If we draw a rectangle and then an ellipse, the ellipse will be on top of the rectangle.
The best part is that when we want to find out something further about processing we can always use google to find it out. For example, if we want to draw a triangle and are unaware of the triangle function, we can google it and find out we need three points: triangle(x1,y1, x2, y2, x3, y3)
We then moved onto our first example, a pokeball type of shape:
Where height/2 and width/2 refers to the height and width of the screen. Note that the second circle had to the second line of instruction if we want it to superimpose the first circle.
We also discussed adding color via the commands ‘stroke’ and ‘fill’. Black color is 0 whereas white color is 255. For a myriad of colors we use the RGB scale which comprises of 3 numbers. We can use online color pickers to help us find the right numbers.
To change background color we use the ‘ bg’ function, which can come before or after the ‘size’ (of the screen) function.
Now, if we want to organize our code further we call it ‘Syntax’; separating the code into different sections:
-
Setup: this section will set itself up only once, at the beginning
-
Draw: This section will keep looping over and over again
This is how they are written in code:
void setup(){}
void draw(){}
Now to animate things within these syntax you need to find variables (you can search for any kind of variables online) such as mousex and mousey which will allow our shape to move as the cursor moves.
There is also something known as ‘conditional statements’ where you are telling the computer to do this IF this happens, ELSE do this. Examples of conditional code include mousepressed, keypressed etc. That is how we made this fancy set of pipes for example 😀
We then discussed a really useful website: openprocessing.org where we would be able to find code written by other people, copy paste it and then apply it to our work, especially useful if you need to create something challenging. Some of the things we learnt as we explored openprocessing.org were:
-
getRandomcolor(){} means that the computer will pick the color for you
-
Int means integer
-
Float means the size of the object will keep changing.
-
Translate means move everything by (x,y)
And that was the end of a very very informative, challenging, and, in some ways, overwhelming live session. Here are some of the things I’d like to do following this recap:
-
Check out openprocessing.org to see what kind of code people create and garner some ideas about how it can be used in my work
-
Check out one or two more tutorials in order to solve a few funny questions I have about processing, for example, HOW does one apply it to one’s artwork!!! lol.