Posts

Singapore Grand Prix Project is Online

Image
I was helping a friend out with his project. It is a TV commercial for promoting the Singapore's Formula1 2012. We handed over to the client beginning of February 2012. It has begun airing on TV channels. My colleague spotted it on sports pay-TV channels. The video is also featured on the F1 Singapore official website: The page might get updated at the end of the year so I've decided to do a screen capture of the page.   The project ended looking pretty close to their storyboards, but the animation was quite different from the brief my friend first received. We spent a lot of time testing and refining a certain technique only to be discarded in favour of a very much simpler and computationally cheap method which can easily be achieved. I even wrote a PyMel script to set-up any polygonal object to enable lines to grow and join at every edge and thus tracing out the wireframe shape of the final object. But I believe nothing is ever wasted, that I've learnt som...

Tutorial: Creating and texturing a Simple Beach Ball in Maya

I've got an ex-colleague who is currently working with another animation software. However, he trying to pick up Maya skillsets and getting familiar with the workflow in Maya. Going through the pains of finding out how things work, and how stuff is organised in Maya is no fun, and can cost you lots of time if you are figuring it out on your own. So I've decided to put up a simple video showing how to create a beach ball using a polygonal sphere and a NURBS sphere. The video will also show how to work with Hypershade to set up a simple Lambert shader and apply it to the polygon and NURBS balls.

Expression - Reverse Seqeunce Frame Number

Today, I had the challenge of setting up a shot in Nuke that was shot in reverse. My CG element was rendered forwards. Therefore in the read node I needed an expression to evaluate the plate's current frame number to play in reverse. Frame range was 137-290. After thinking for a bit, I figured out the expression is lastFrame - (currentFrame - firstFrame). In my case this would be 290 - (frame - 137). (frame-137) would give me a positive zero-based frame number where if the current frame is 137, would return a zero. That number would be subtracted from the last frame of the sequence such that as the current frame increases, the relationship of the scan would be inverse and decreasing in frame number from the last frame, in the reverse order. This is just a reminder to myself in case I need to use this again :)

Universal's Centennial Logo!

Image
This article on GeeksAreSexy.net caught my attention: Universal launched a new opener logo to commemorate their centennial. This is really nicely done. I posted my humble observations at the comments section of that article: Did you realise that each of the first 3 letters catch the light at 0:14 to 0:16 timed to the music? ;)  At 0:07 there's a burst of flare at the edge of the letters coming out, also timed to the music.  AT 0:09 too, the sun has a tiny burst of flare, just done to match the timing of the music.  Really nicely timed and done. My observations geeky enough? haha!  

Lytro on PopSci

Image
  Image by John Mahoney, as posted on PopSci.com Its finally here! The last time I visited Lytro's website, they were demonstrating and talking about their new technology and in the midst of developing their camera. Now its finally out! PopSci did an introduction and product review of this new device based on the revolutional technology that opens up a whole new photography paradigm. Here's the PopSci article: http://www.popsci.com/gadgets/article/2012-02/testing-best-lytro-light-field-camera Here's another page with a review, including the a video that shows the camera in action. http://www.dpreview.com/news/2012/02/29/Lytro-Hands-On-Review-and-Video Do you like what you see?

HTML and Javascript Again

Image
I've been familiarising myself with Javascript from Codecademy  since my last post  about the free online learning website. Back in polytechnic, I was chosen to participate in the school's first ever HTML coding short-course. This was conducted by a couple of caucasian training staff. It was cutting technology back then. It was the hay-day of Netscape Navigator (more info on wikipedia ). I've just searched for it and found out that it's been discontinued at its last version 9.0.0.6, on 1st March 2008. In that course back then, they only taught basic HTML tags. However, I went on to dig deeper delving into a bit of Javascript too. I ended up with a personal website hosted on Pacific Net (my ISP for many years). I followed the evolving technology up to the point when they introduced frames and CSS. I stopped, and did not begin to webpages for the next 16 years or more. Now I am faced with an opportunity to again make use of HTML and Javascript to improve the work...

I Love Camel Case

Dan (my colleague) was talking to someone sitting beside me today, and he happened to mention "camel case". It actually refers to the "mashing" of two words together taking out the space, and capitalising the first letter of the second word. An example would be "helloThereHowAreYou". It gets its name from the shape made from the shape from the "ups" of the upper case letters and the "downs" of the lower case letters, making the compound word look like the back of a camel. In many scripting languages, (in my case just MEL and Python), I see a lot of it. That's when I came to know about this. However, I was doing it for a few years before I first heard the term "camel case" being used to describe arranging words like this. This is a huge space saver when it comes to naming variables, functions and objects in my code. Instead of having to name a variable $name_of_my_variable, I can just name it $nameOfMyVariable. It sav...