31.5.11

Next stage of progress

By this point I decided to reconsider what the ultimate goal of this project was.
I am well aware of how complicated and detailed I make some of my projects - while at the same time bypassing the whole point of the project.

I put my foot down, and decided to make my interactive application with fewer options
to the user.
The fewer there are, the more likely the point will get across.
The point being - 'if'/else' loops are simple and
come with conditions to be met before the loop is entered.

Below is my description of an 'if/else' loop to a non-programmer:



***************************************************************



An ‘if/else’ loop is only one of many types of loops within programming. Loops are blocks of code that run in order from top to bottom over and over again before moving onto the next bit of code. With an ‘if/else’ loop, there are conditions to be met before the computer can run through that block of code.
Some loops can run infinitely but most loops aren’t designed to.
For the ‘if/else’ loop, the computer will run through the ‘if’ block of code if one condition is met, else it will run through the ‘else’ block of code. Regardless, it will run through one of the options. An example of a real life ‘if/else’ loop would be as follows:


If it is raining, it is a week day, and I have work – I will drive my car to work.
Else if it is sunny, it is a week day, and I have work – I will walk to work.


***************************************************************


Okay... now, after talking to my lovely, funny and smart tutors (Ben and Luke, Luke and Ben) ...hee hee -
I made the decision to start my application with a picture on the screen of an artist and his easel.
Instead of having options to - change the type of material paint on, and whether the lamp is on or off -  on a separate tool bar down the bottom of the screen, one of my tutors suggested I incorporate those functions into my image. There for, I made the lamp, three rolls of paper on the ground all interactive.

To turn the light on and play through the different levels of the painting, one must simply left click on the lamp, else if you right click and the light is off, you see the result of a painter painting in the dark!


The three paper options lying on the ground for the user to choose are clickable too.

Initially I would have liked to have drawn the sketch of the artist and his easel with great detail but sooner , rather than later (lucky), found it would take away that special 'oomph' of the painting illustrated on the canvas placed on the easel.


Below is my description of my project:


***************************************************************


My exhibition - ‘Painters Easel’ was painted using Photoshop. ‘Painters Easel’ is in fact an interactive Processing application, allowing the audience to change the outcome of the painter’s narration (animation) by clicking on items within the display prior to starting the animation. If the lamp is switched on, this will ultimately change the result of the painting, as will the choice of material the artist is painting on. The painting animation will play once from start to finish, followed by an exit from the loop, there for completing the ‘if/else’ loop.  


***************************************************************




The above description was written and submitted before I finished writing the code for this project on Processing. I suppose the development stage isn't over until the second you hand in the end result.
Between submitting the Exhibition Description, and handing in the end result at the exhibition, I had successfully changed a few major things within my processing code.



I changed the automatic animation of the array of painting images, to one image per click. This means it would be less messy when the user decides to switch the light on or off. Effectively, when the state of the lamp changes, it starts pulling images from a completely different array of images. One array is the 'lamp on array', and the other is the 'lamp off array'.


With regards to the three paper options, I made them single separate images which are placed on the easel. It actually places the paper on top of the painting but this is how I designed it. I've made the arrays of images slightly transparent there for revealing some of the texture of the paper below. 
Also, I did have a minor hic'up when it came down to painting the glow of light surrounding the lamp in 'on' position. Firstly I had trouble removing that circle of light once it was switched on, but I figured I could just replace the image at half transparency of the background right over everything to minimize the glow.

This didn't pose any issue in relation to illustrating the painting on the canvas. Each time the lamp is clicked, the code knows which array index it got to on the last click and it starts with the next in the index whether it is from the same array or the other.



YAY! It was eventually finished!!!

No comments:

Post a Comment