Archive for June, 2008

Project Overview

Thursday, June 26th, 2008

I am supposed to be doing some work for my school project, but being that I am too sleepy to concentrate I will just describe what my project is about.

My project is about creating 3D meshes – a huge load of them! A big part of these meshes will be buildings, like this one:

buildingtest-render

This is my first test in creating such a structure (thanks to the excellent online tutorial by a fantastic guy named Yorik) using the absolute-blast-to-use open source, free-as-in-speech, free-as-in-beer Blender. Making 3D models is seriously hard work, and Blender’s feature-rich interface helps a lot in easing things out and adding some fun into the work.

But modelling isn’t everything. It’s just a preparation for the computer science part of the project, which is to put all the meshes and textures together into a proper graphics engine with proper rendering techniques and algorithms, and such. And I am supposed to put together this:

hkust

Oh my God it’s the entire campus! And I have to reproduce everything accurately enough (at least not dead-on), and as photorealistically as possible. The finished product would be this huge environment that can be explored as freely from afar as it is from within. That is, you are supposed to be able to navigate around like you would in a first person shooter game.

This graphics engine programming stuff is what I’m supposed to focus my work on academically, but it’s a work about the school, and one can’t help but think that someday it might be put into actual use by the school itself! And so I should be very meticulous about modelling and texturing, and try to recreate details that would pass the standards of, well, myself. (Because I am a gamer and I am used to living around 3D environments and so would not easily get impressed with things like this.)

It was only a few days ago that I realized I am on a very tight deadline – 2 more months to finish everything, and the whole thing actually looks like a group thesis! In any case, I am having fun. I think I will enjoy doing this to the very end…

I found that I actually like modelling. It makes me feel like part of Weta Digital, which I had wet dreams of working in some few years ago. But I am also equally excited to tackle on new software, and even a new programming language: Python! For the graphics engine, I would like to use either the top-of-the-line Ogre3D with the Python wrapper, if I finish modelling with more time to spare, or Panda3D for quick results under tight schedules. Can’t wait!

But first.. modelling. So here is what I have so far.

sundial-testrender

That is the university turkey, or sundial. Not yet very appealing, I know, but I am hoping it would look nicer after applying some good textures. And, well, it isn’t much work either!

Gotta sleep and get back to work early tomorrow!

This Sucks.

Wednesday, June 25th, 2008

Friggin’ 30!!!

Side Project as Intro to Big Project

Saturday, June 21st, 2008

I recently took a job to customize a couple of WordPress sites (here and here). It was a great learning experience: I got to know the WordPress architecture a lot better, appreciate the excellent new features of the latest WP 2.5.1 version, acquire a little more PHP coding skillz, and – most important of all – integrate two unrelated applications together.

Let me dwell on that last part a bit. The site makieduardo.net called for a modern-looking portfolio for showcasing the site owner’s photographs. As can be seen, images dynamically load when thumbnails stored under a “rolling” container are clicked. Seems simple enough, but it was HELL to implement with Javascript (Flash would have been cleaner and easier – if I knew Flash, which I don’t at all). The original plan was to simply copy over an already existing WordPress template and make custom changes from there.

Turns out, the javascript part was not trivial at all to change. This has more to do with my absolutely zero experience with javascript. So days passed without any progress with the code. Out of frustration, I decided to scrap the existing javascript, start over using something else, while still keeping the same template at the WP engine-side. I found the E2 Photo Gallery which does almost exactly what I needed. It also operates under javascript, but I found the app’s code somewhat easier to follow (remember, I am a javascript idiot). The problem is that E2 is a standalone app – there is no port or whatsoever relating to WordPress.

I decided to go ahead and integrate the E2 code with WordPress – probably a stupid thing to do, not knowing whether the entire thing would work at all! Fortunately, it did, and in doing so I was able to save a few hours figuring out site navigation logic at the WP engine side. So, with the E2 at the front end, the backend was drastically simplified, with the added bonus of improved aesthetics.

So I am particularly proud of this accomplishment. This is the first manifestation of my postgrad studies applied in practice! If this project were given to me a year ago, I am pretty sure I could not have pulled off the integration.

****

That one was loads of fun (but also at times utterly frustrating/depressing). Now that I am done with it, I need to move on with the real challenge: a HUGE project for my last ever postgrad course. I finish this one, and I graduate.

More about said project at a later time. And a note to self: try to chronicle your developments regularly! It will help you write your final paper. Don’t be lazy – do it!

Missing Feynman

Tuesday, June 17th, 2008

It has been more than a month since I started on Classic Feynman, and I have finally finished the entire book. The time it took had nothing to do with the book’s quality – in fact, quite the opposite.

Reading about the life of Richard Feynman was utterly fascinating stuff, in spite of the fact that I am no fan of biographies to begin with. The book’s power comes from Feynman himself as he narrates particular events at different points in his life.

It is really hard to summarize Richard Feynman. He’s a nobel-prize winning physicist, yes, but he is also a lot more than that. He has travelled to many places, tried so many things (some even so off-tangent from his scientist career). He just pursued anything and everything that interested him. From getting quite a reputation as a safecracker, to joining a samba band in Brazil, to playing percussions for a fairly successful ballet, to taking up painting and actually getting his work in an exhibit and actually sold!

So it is with great pleasure that I consider him the Ultimate Geek – well, he is a brilliant scientist to begin with, but his geekness not only stems from that trait, but also with his honest, even childish interest in all things, and having the guts to experience them.

Most of the book’s chapters are gems: not just very entertaining, but from which one can also derive some perspective about life. And myself, for one, found the book very inspirational. Now I can say, if someone asks who my greatest hero is, without any hesitation: Richard Feynman!

Thank you, Mr. Feynman. I will always try to live by the principles you have established for yourself.

Back!

Saturday, June 14th, 2008

I am back from a mostly-food escapade around Hong Kong island with my guest-of-honor girlfriend. I am proud to have eaten good stuff for 4 days straight, without fail – even then, just a tiny, tiny portion of what kind of unique and diverse dishes HK has to offer. Of course I also liked the trips to the museums, the lengthy strolls, etc. but I think even my girlfriend would agree: food’s the best!

The hotel we stayed in was very nice, considering the cheap price. It’s just a bitch to get internet connectivity there – the only consistent signal was from the hotel wifi, which you have to pay HK$40 per 3 hours to use! Here at my house and in school, internet is integrated into the fabric of mundane life, you hardly notice it. And the past days when that became luxury… I think I suffered some mild withdrawal symptoms. So hello, free internet, I have missed you so much.

In other news: I am excited about my new lens, baby! Details soon enough ;)