Archive entry by Ste Pickford on Sun, 26 Nov 2006
In the late 90s our Zub character was briefly resurrected for an internal tech-demo at Zed Two. John had come up with a clever idea for a game engine on the N64, called Zed Space, which was based on rendered backgrounds created by the N64 itself, with models being added and removed from the background by the engine and turning into live interactive polygon objects, rather like a Resident Evil or Final Fantasy VII rendered background, but with the ability to pick up and move any part of the background and fully interact with it.
Zed Space is another story, but for the playable tech demo we wrote we needed an animated character taking the smallest possible number of polygons.
I decided to build a 3D version of Zub for the demo, and for reasons I can't remember now (I think we wanted quite a few of them moving around on the screen at once) I had to try and make the character model out of only 100 polygons, which most 3D artists will tell you isn't really possible.
I managed it by using the cheapo trick of substituting circular 'sprites' - triangles mapped with an alpha channeled circle texture which always faced the camera, like the big bomb boss early on in Mario 64 - for tricky round bits of the model (shown as polygon spheres in the render above). As a square sprite these should only take 2 triangles each, but I think I pushed it a bit further and made them out of single triangles, with the circle bitmap mapped to the centre of the triangle with transparent space around it.
I used these single triangle sprites for the head, two eyes, elbows, knees and hands (9 triangles in total) - the joints hid the parts of the model where the polygons didn't join up properly. I then made the limbs out of simple pyramids (4 triangles each), then a simple two section body (25 triangles), fingers and thumbs (9 triangles per hand), and simple 3 section feet (14 triangles each). The result was pretty ropey, but it animated surprisingly well, was recognisably Zub, and took around 110 triangles - just short of my target!