I’ve mentioned my final Computer Science project a couple of times now on the blog without actually describing what it is. Now seems like a good time to do so, having just spent a solid afternoon and evening on it. The summary (which remains one of only two pieces of actual paperwork written for the project thus far — thank $DEITY this isn’t a group project with meeting minutes and the like) reads as follows:
To develop a networked simulation of a garden system that allows users to maintain the garden by interacting with individual plants, which are simulated using the principles of L-systems.
Put more simply, the idea is to build a client/server system that provides something like a SimGarden over the Internet. Fortunately, much of the theoretical work needed for this has long been done, and most of it is in The Algorithmic Beauty of Plants
, so that has largely left me to worry about the parts of the project that don’t involve quantifying plant physiology and behaviour, like rendering L-systems in a manner that can render a simple plant (without leaves) at more than 0.4 frames per second on my iBook.
I’m still working on that little problem, but the fact it’s rendering at all is progress — it means the 3D turtle is working (yes, it’s just like Logo, except in Python and with an extra dimension to confuse people), the L-system parser can at least deal with simple L-systems, and all in all, I’m feeling rather content with life, given that five weeks ago I didn’t even have a project (the project I had planned fell through due to the supervisor leaving the university) and four weeks ago I had no idea what OpenGL code even looked like. Of course, said contentedness is likely to evaporate any moment now, given the amount of work that’s still ahead.
I sign off tonight in the traditional fashion: screenshots.