Last update: September 30, 2024
Wireframe Update
The original wireframe animation of Time Lines was created at Simon Fraser University in 1982 using "GRAX" running on an Evans & Sutherland Picture System II, front-ended by a DEC PDP-11.
The film was output by recording one frame at a time with a 16mm camera pointed at a B&W high-resolution monitor, and controlled by the PDP-11.
As a reminder, here's the 29 second excerpt from the animation that I planned to recreate in 2024 using Houdini 20.5 running on a Linux workstation with a couple of nVidia graphics boards.
The animation of the 3x3 array of squares is just a linear interpolation between 8 keyframes positioned in 3D space.
The first step was to match Houdini's camera position and focal length to the camera used in the old animation. This was done by trial and error while translating and rotating the array of squares to match the keyframe positions in the original animation.
Eventually, I got everything to match, (close enough, anyway).
The last step was to render the linear interpolation between the new keyframes using the frame durations from the old animation.
It looked good.
Except... except...
The animations weren't really matching up, and what happened to those nice bendy, curvy sections present in the old animation?
WTF! It's just a simple linear interpolation between keyframes! Right?
It drove me crazy, and I spent a couple of days trying all kinds of things like; using various interpolation types, giving each x, y, and z transformation it's own interpolation method, re-building the geometry, etc.
Finally, I noticed something.
In the new animation, when an element travels from the foreground to the background, it appears to move faster when close to the camera, and slower when far from the camera.
This was the correct behaviour I've come to expect from years of making 3D animations.
However, the old animation was doing something different and not behaving like that at all. It looked as if it's interpolation steps were of equal distance... in screen space.
SCREEN SPACE?
Perhaps the Evans & Sutherland system I used in 1982 was converting all the 3D keyframes to 2D screen space BEFORE doing the animated interpolation.
This would make sense. Since it was a real-time system, a short-cut like that would definitely speed things up.
So, to test the idea, I needed to convert the geometry elements from their 3D keyframe positions to 2D screen space.
There are probably many ways to do it, but I went with this snippet of VEX code, (posted on the Houdini forums by "BabaJ"), to add normals pointing to the camera at each point in the geometry...
matrix Op_Matrix;
Op_Matrix = optransform('op:../../cam1/');
@N = (Op_Matrix * (@P - @P)) - @P;
Then, I used a Ray SOP to project the points onto a plane placed in front of the camera...
It worked! The linear interpolation between the new keyframes located in screen space matched the old animation.
YEAH!
And now, for your viewing pleasure, the 2024 digital remaster of an excerpt from the 1982 film Time Lines...
The experience made me wonder if the default behaviour of the Evans & Sutherland PS II was to convert everything to 2D screen space before animating the geometry.
But, the little research I did confirmed that these systems were powerful and would have no difficulty displaying and animating geometry in 2D or 3D space.
So, I've come to the conclusion that the "GRAX" software did the conversion to 2D space before interpolating, or it activated an option for the E&S system to function that way.
Either way, it may not have been accurate for 3D motion, but one positive side-effect was the way the geometry curved as it moved between keyframes. I kinda liked that.
Another positive side-effect of converting everything to screen space beforehand is that all the lines (tubes) could be set to the same width before rendering with Houdini.
I've done many 3D wireframe animations in the past where the thickness of rendered line elements (tubes) had to scaled depending on their distance from the camera. I didn't miss having to do that again.
And finally, it's hard for me to accept that the gnarly ¾" recording of that 29 second excerpt from Time Lines is all that remains of the original 2½ minute film.
Damn it!