First day of the week again. Kevin is not around as he flew off to the USA for a conference. I started of the day by having breakfast with Bernard opposite Fusionopolis. After breakfast, I tried to make the 'Pong' game start when a laser is detected instead of pressing the spacebar. It doesn't work because Ming Hong said that it is due to the 'cvWaitkey()'. So I used the 'usleep()' method instead of the 'cvWaitkey()' and it worked fine. Ming Hong also showed us a video from a website. Here's the video:
Cool huh? Click here to find out more. Bought lunch from the 'Market Place' after watching the video as it was raining. After lunch, I worked on getting the paddles to move smoother; I reduced the movement to just 2% of the canvas's height. It seems to be moving a lot smoother compared to the last version. However, Leonard commented that the movement seemed a little slow. So I guess I'll fix that tomorrow or something.
Ryan spent the entire day trying to make the paddle move towards the laser while Leonard and You Hock worked on the 3x2 tile display. Here are some pictures of them working on the 3x2 tile display:


By the end of the day, Ryan only managed to make the paddle 'teleport' to where the laser was shone while I managed to read up on 3 chapters of the Quartz Composer notes given by Kevin. Shall try to complete reading and doing the tutorials on Quartz Composer by tomorrow so that we could start working on the application in Quartz Composer.
18 November 2008
Had breakfast with Bernard in the morning again. However, we were joined by Ryan, You Hock and Leonard. After breakfast, I started to do the tutorials for Quartz Composer. I followed the tutorial closely and managed to make my composition into a screensaver and a QuickTime Movie. Here are some screenshots of my work before lunch:




Continued on the tutorials after lunch. Managed to create 3 Cocoa applications based on the tutorials. The first example was fine, but I faced some problems on the second example. After I completed the second example and ran it, the example did not work properly. So I tried re-doing but still faced the same problem. So I decided to skip and move on. So by the end of the day, these are the Cocoa applications that I did:



So I'm left with the last 2 chapters of the tutorial. Shall complete it before lunch tomorrow and start fixing our 'Pong' game before converting it in Quartz Composer.
19 November 2008
Had breakfast with Bernard and the rest again today. After breakfast, I continued with my final 2 chapters of the tutorial. Had some difficulties with the first tutorial because the tutorial did not really give very clear directions on where to find the example files to edit. Managed to find the file and complete the 2 tutorials before lunch.
Wanted to continue fixing our 'Pong' game after lunch. However, I encountered some problems because the function I did 2 days ago, doesn't seem to work. The game does not start when it detects the laser. I still needed to press a key on the keyboard before the game starts. Ming Hong tried to help by using the Lightdraw's key listener for Mac. The game starts when a laser is shone, but is unable to exit because the key listener does not read from the keyboard(according to Ming Hong). At the end of the day, we decided to revert back to the previous version and ignore the laser problem. We had to move on to the Quartz Composer soon. Will start working for the 'Pong' on Quartz Composer by tomorrow.
20 November 2008
Met up with Bernard and the rest for breakfast in the office again. After breakfast, Ryan and I wanted to test and fix the 'Pong' game. However, we were unable to test it because there was a meeting going on. So I tried to get Lightdraw to work with one of the example provided in Quartz Composer. The example application was working fine with the X11, but I would like it to work with the OSC to enable a multi-user mode. With reference from the 'Clouds Multi-User' application, I tried doing it but was unsuccessful when tested.
Had lunch after testing and was asked by Ming Hong to try fixing the existing Quartz Composer's applications to work with the existing Lightdraw. He explained to me what was the difference between the old and the new Lightdraw. Here are the differences:
- blobCount now sends an int of 0-12 instead of 1-12
- hold now is a string type instead of a boolean
21 November 2008
Arrived early, but did not have breakfast with Bernard as he already ate. So I continued to study before modifying 'Fusionworld' application to make it work with the new Lightdraw. Before lunch, I managed to finish modifying the application. Waited till after lunch to test it. The application works with the new Lightdraw(yay!). However, only the 3D models are not displaying properly. The images and videos are all working fine. Ming Hong and Cheng Teng tried to see what was wrong, but was unsuccessful.
We decided to leave the application as it is and set up for 'Bring your kids to work day', where those working in IHPC could bring their kids to work for a day. The applications used for showing Lightdraw to the kids were:
- Google Earth
- Cooliris
- Puzzle Game
- Drawing Board
Here are the pictures I took for the day:




After the demo, we had some light refreshments in the pantry. After having our fill, I continued working on the sample application. By the end of the day, I was still unable to get the sample application to work with the OSC. I guess I'll continue with on Monday and get it to work by Monday.
Reflection for the week:
Learning a new programming language is never a simple task. Although we were given tutorials and notes, the best approach to learning a new programming language is still hands-on.
So my week was spent on learning the Quartz Composer, a node-based visual programming language provided as part of the Xcode development environment in Mac OS X v10.4 "Tiger" and Mac OS X v10.5 "Leopard" for processing and rendering graphical data(taken from wikipedia). Picking up this programming language is no easy task as "codings" are kept to the minimal. However, I managed to understand it rather quickly as I was given notes and tutorials on it. Moreover, help is easily available online.
I've heard that interns here have a 'special' floor in Fusionopolis where all interns are assigned to that level. However, Ryan, Leonard, You Hock and I are thankful that we were not on the same 'special' floor as them because we get a chance to experience more things than them.
No comments:
Post a Comment