Wednesday, 7 May 2014

BBC Live Brief - Best Retailer

The final animation short footage I worked on was Best Retailer. There was not much editing needed for the video footage itself, just some colour correction and small enhancements:


















Original unedited footage:

























As you can see without any editing it looks pretty bland and boring. The vignette focuses your attention on the middle of the screen where the main action takes place.

However our main problem on this category was that we had no idea how to present the title of the award in a suitable way. We came up with the idea of presenting the title on an old classic cash machine, but we couldn’t get our hands on one and neither could the BBC. So I came up with the idea of finding an image of an old cash machine online and edit the title onto it digitally. I then looked into how I could do this; after a couple of hours of research I found a way to animate an odometer effect within After Effects. This was a perfect way to present the title on an old cash machine. We also had the idea of using this odometer effect to animate the cost of the items in between shots.

I took it upon myself to create the odometer. This was my Process:

I started off with this image I found on the internet.























I then edited it within Photoshop so it was cropped to the appropriate size, colour corrected and a suitable background image placed behind it:























Next I imported the Photoshop file into After Effects and began to work on the odometer to edit over the cash machine image.

 To make the odometer I began by typing in the numbers 0-9 vertically on a new black composition:

















Then I created a new composition same in length but 4x the size in width. I copied and pasted the numbers comp 3 times into the new composition and fit them in together within equal distance. I also put white lines between each bar to separate them:

























I then applied the effect under distort called offset to each number column. This means that when a number moves off of the screen area it reappears on the opposite side. I set the shift to center values to 75.0 , 750.0. Moving the Y value up and down causes the numbers to loop over and over seamlessly.

However on an odometer each number section rotates at a different speed, animating those by hand can be very tricky. This is where I pushed myself much further than I had ever done before within After Effects. I slowly started to learn how to use very advanced techniques such as expressions. I researched how expressions worked by pouring hours of time into figuring out coding and understanding mathematical equations. I needed to create a situation in which every number section of the odometer cycles at 10% or 1/10th the speed of the layer to its right. For example every time the ones column goes from 0 to 9 and back to 0 the tens column would go from 0 to 1 or 1 to 2 and every time the tens column goes from 0 to 9 and back to 0 again the hundreds column should only change from one number to the next. To animate this I will be controlling everything through a slider expression controller on a null object:


























I then right clicked on the slider controller and selected edit value. This dialog box allows you to change the slider range values. I set the right side to 0 and the left side to 10000. I used 10000 because takes the value all the way back to 0. On the odometer it will go from 0 to 9999 the next number is 10000 but it becomes 0:






















Next I opened up the effects on the ones layer and twirled down offset to reveal the shift center to property. Alt clicking on the stop watch next to it allows you to add an expression in the dialog box. The expression I used was this:








“x=value[0];
offset=thisComp.layer("Null 1").effect("Slider Control")("Slider")%10;
y=linear(offset,0,10,1500,0);
[x,y]”

X=value[0] means the term or variable called x is equal to the first value of this property. The shift center to value has two values, a value for x and a value for y. The first line of code in the expression says that the variables called x are equal to whatever value is written in the shift center to X value box.

The next line of code variable is called offset which is equal to whatever value we have in the slider added to the null layer. I also added a JavaScript modulus operator which is the ‘%10;’ at the end of the line. This takes the value of the slider and divides it by ten and whatever is the remainder that’s the number.This means x can never reach a value of 10, it can go from 0 to 9.999 etc but as soon as it hits 10 it jumps back to 0.

In the next line of code the y value is being generated by a linear function. Linear translates one range of values to another. As the value of offset varies from a range of 0 to 10 convert that value to fit within the range of 1500 to 0. This means that when offset is equal to 0 y will be equal to 1500, when offset is equal to 10 y will be equal to 0. When offset is 5 y will be 750. For every whole number we gain in the offset variable the liner function is subtracting 150. So offset going from 0 to 1 means that y goes from 1500 to 1350. That’s a difference of 150. Each number in it’s column has its own 150 pixel by 150 pixel space around it. I can use this change to offset the numbers composition by 150 pixels or speaking visually to go from one number to the next.

The order of numbers in the liner function in this case is saying the value for offset which always falls between 0 and 10 should be converted to a value between 1500 and 0.

All of these lines of code are just a definition of terms for whats in the next line. The next line ‘[x,y]’ translates everything above into x y coordinates that the offset effect can use.

Next I applied this expression to the other number columns. However the code needed a slight alteration for each one. For the tens column I changed the %10 value to %100 and in the liner offset I changed the 10 to 100. I did this for the hundreds and thousands column just adding another 0 each time for both of the values. 

Now when I animate the offset slider on the null object the numbers rise and the numbers on the slider match the numbers in this area:





















Now I wanted to somehow edit these numbers onto the cash machine I created earlier and make it look 3D. To do this I began by moving the numbers composition into a new composition which makes it the same size and length. I then changed the name of this new composition to rotated numbers and rotated it 90 degrees. I then changed the composition size to 1500px by 640px:
























I rotated this composition because later when I add a 3D cylinder effect it wraps around on the y axis.


Next I moved the rotated numbers composition into a new composition. I changed the name of this composition to odometer and set the dimensions to 640px by 480px. I then used the effect CC Cylinder. Using these settings as show below I got this effect:







I made sure the rotation and size of the cylinder would match the correct position to go on the cash machine:
























I think the final result of this was excellent and I think I surpassed what I was previously capable of doing in After Effects. Working out how to create this took all my knowledge of the program combined.


I managed to blend the odometer convincingly into the cash machine and had it animate very realistically like a real odometer would by simply key framing the slider control at the appropriate moments:







My original goal with the odometer was to present the title, so using the skills I had just learned with expressions and so on I applied the same techniques in creating the title:








































The final animation can be viewed here: https://www.youtube.com/watch?v=bglqNA24R7M