News
Last Minute Dot Com(plete changes) | Dan | HMC | AardmanThat's an exaggeration. Not a complete change, but we've had some impassible issues with memory regarding shuffling around 2000 HD images. So, we've had to take a compromise in the final visual quality, and rethink the way we're going to be building and displaying the scene. If the effect still works people are going to be too amazed to notice the lack of richness, but I'm sure we will. Ah well, next time!
Ok, not really got the time to explain more, but will try and post stuff as it comes available.
Processing and OpenGL and Black Magic | Mike | HMC | AardmanWe experimented with head-tracking and open GL recently in processing, even with a hefty graphics card, the 3d graphics seem to slow down quite a lot.
We think this is strange, unfair and suspect some kind of witchCraft based sabotage from one of the other teams
Gareth Williams - Interactive Developer
Our computer has been smoking dope. | Mike | HMC | AardmanOur computer has a memory issue, we warned it that the use of psychoactive drugs would not come without consequence but in HMC our
babieshumanoid robots
computers are free to make their own decisions and sometimes they make the wrong ones.Now, I am not about to blame our current difficulties on our
toolsbabiescomputers, so I hereby present our current challenge and our experiments into solutions:If you pre-render a 3D scene at a reasonable resolution you can save a lot of processing power, unfortunately (and there is probably a law in computer science for this) you trade it for memory consumption and we cannot store all the data required to pre-render the scene (2000+ images at ~2.5mb per image.)
The traditional solution to this problem is buffering - we only load images around the one we want to display; so, if this was a movie we would load some frames ahead and behind of the current one so that as the movie plays there are enough frames loaded to continue playing the film, while we load the ones further ahead in the background.
An initial experiment in processing revealed that it was quite easy to make a simple streaming program but there are two caveats:
- moving the playhead to a random point in the film requires rebuffering (think about when you skip ahead in a youtube movie) so we can only buffer effectively when the playhead is predictable. In the case of our pre-rendered scene we have no idea where the person will want to look so we can't buffer effectively.
- Images that are 2mb in size take approximately 80 seconds (!) to load on my machine, going back to the movie analogy, this means that the amount of buffering required to ensure that the next frame can be loaded in time is massive.
Our current experiments include using quicktime VR to display our pre-rendered scene in processing and using flash to see if the automagic memory handling for images loaded from the library is any better than the more explicit management in processing.
Tonight we will have a
father sonuser/machine talk with our computer so that it can understand the errors of it's ways.Gareth Williams - Interactive Developer
Different routes | Mike | HMC | AardmanSince we have re-started development on our
babyproject it has become apparant that we are now getting to the narrow end of our steep-learning curve - perhaps ourbabyproject isbecoming a teenagermaturing, the question we continue to ask ourselves is: Where do we go from here ?To this end we have looked into which platform we will develop on; how we are going to implement our 'magic
mirrorwindow' and how we are going to construct our beta interactive prototype.Processing is a rapid-prototyping java api and ide, which provides easy access to 3D graphics and basic visual programming whilst providing advanced functionality through the standard java packages. At the moment our development experiments favour this platform for it's extra versatility in a short time-span.
However, even with the advantages provided by Processing the implementation of our prototype poses a number of challenges to our success: Tracking the movement of a user's head (without peripherals) requires a lot of horsepower; rendering a scene in 3D requires some more horsepower and pre-rendering the scene we want to display requires a lot of donkey-work. So in short we need two or more Horses and a Donkey and our computers can only *do* Gigahertz…
Gareth Williams - Interactive Developer


