Computer Generated Three-Dimenional Movies

A. Michael Noll, Bell Labs, Murray Hill

November 1965

Computers and Automation

INTRODUCTION

Animated movies for educational presentations of scientific concepts are increasingly interesting a small but dedicated number of scientists, engineers, educators, and animators. The value of animated movies for presenting complicated concepts has long been recognized. Now a new method for producing animated movies has been devised, and has led to the present renewed interest.

Previously, animated movies were made a single frame at a time - a time-consuming and tedious process. Now, however, special photo-optic equipment under the control of a high-speed digital computer is being used to generate animated movies. For example, such computer-generated movies have been used at the Bell Telephone Laboratories to demonstrate the effects of different gyroscope constraints on an orbiting satellite.[1] Also, an ingenious computer-programming language has been devised for producing computer movies. [2]

In a previous issue of Computers and Automation, I described a computer technique for the production of three-dimensional pictures. [3] This technique utilized the same equipment that others had also been using to generate movies. Since a movie is essentially a series of related still pictures, the extension of my previous work to produce three-dimensional movies was quite obvious. This extension is described in this article along with a few examples of some computer-generated three-dimensional movies.

Computer-Generated Movies

Digital computers are very adept at manipulating numerical data under the control of a program. If this numerical data consisted of the coordinates of points which when connected by straight lines would produce some desired object, then the computer would in effect be able to calculate and specify a numerical representation of a picture. These points could be printed-out on paper by the computer; then they could be connected together manually; but this procedure would be far too tedious. Instead, the coordinates are used to position the electron beam of a cathode-ray tube and in this way trace out the desired picture on the face of the tube. A 16-mm camera, also under control of the computer, photographs the tube face while the picture is being traced out. In this manner, the coordinates computed by the computer are automatically connected together to produce the desired movie.

Although the computer is fast enough to compute the coordinates for most movies at a rate of about 20 frames per second, the plotting equipment is unfortunately not so fast. Hence, the coordinates of the points and the camera control instructions arc more efficiently all written by the computer on digital magnetic tape, and then the tape is later used as input to the plotter.

Three-Dimensional Pictures

A three-dimensional effect can be created by presenting two slightly different pictures separately to each eye. These two pictures are the perspective projections of some object as seen from two slightly different positions. Although the two perspectives are quite similar, the human brain translates their minute differences into a very realistic depth effect.

The mathematics for producing a perspective drawing is quite straightforward and is easily derived from simple geometric relations. The analytic approach results in formulas that give the two-dimensional coordinates of a three-dimensional point viewed from any specified position. These formulas were incorporated into a computer program so that the computer could calculate the points for the left and right perspectives of the three-dimensional coordinates specifying the desired object. The program also generated instructions for the plotter to produce a single frame of 16-mm film containing both the left and right perspective drawings.

Computer Method

The computer method for generating a three-dimensional movie is first to calculate, at some particular instant in time, the three-dimensional coordinates of the points in a line drawing representation of the desired object. The three-dimensional movie program then calculates the points required for the two perspectives and also generates the instructions for drawing the perspectives with the plotter. The three-dimensional coordinates of the object at a small time increment later are then computed, and the three-dimensional program generates the instructions for another frame of the movie. This procedure is repeated on a frame-by-frame basis until the desired movie sequence is completed. The movie then exists on magnetic tape which is used as input to the plotter. The plotter decodes the instructions on the tape and repeatedly advances the film and deflects the electron beam until the entire movie is completed. Figure 1 is a simple block diagram of this process.

THREE-DIMENSIONAL MOVIE PROGRAM MAIN PROGRAM FOR COMPUTING POINTS DIGITAL COMPUTER M A G N E T I C T A P E INSTRUCTION DECODER 16-MM CAMERA CATHODE RAY TUBE PLOTTER
Figure 1: Block diagram of computer technique for producing three-dimensional movies.

Since the three-dimensional projection calculations are somewhat lengthy, the projection program has been written so that only the lines which have changed from the previous frame are recalculated. The program notes any line changes and automatically recalculates only the coordinates of that line. All the points for the projected two-dimensional patterns are then connected by line segments.

The distance between the two viewing positions, the distance of these positions to the origin, and their angles of inclination and rotation with respect to the object are all easily varied so that the object can be viewed from any position and distance. The program also has provisions for plotting single characters (such as * , +, or . ) at specified three-dimensional points.

Most practical problems can usually be represented by only two spatial dimensions, so that any time variation can be introduced as the third dimension; a single three-dimensional plot is thus sufficient.

Any three-dimensional problems that do require time as a fourth variable can be adequately displayed by a two-dimensional perspective movie in which monocular depth clues provide a pseudo-depth effect. However, three-dimensional random objects have no monocular depth clues and therefore must be presented three-dimensionally. If the pattern changes with time, then a three-dimensional movie is required. For these reasons. the first three-dimensional movie was of a randomly-changing abstract design a form of kinetic sculpture.

Figure 2 shows a few frames from a computer-generated three-dimensional movie of a kinetic sculpture. The object consists of 39 line segments sequentially connecting 40 points chosen at random to fall uniformly within a cube. At random times, one of the points is changed to a new random location within the cube, and the two lines attached to this point are instantaneously twisted to produce the new shape. These jumps occur very slowly at the beginning and end of the movie but at the relatively fast rate of one jump per frame during the middle portion.

The left and right perspectives are shown adjacent to each other in Figures 2, 3, and 4. A depth effect can be obtained by decoupling one's eyes sufficiently to produce double images. This task is made easier by first gazing beyond the page and then dropping the eyes to the page without refocusing; sometimes a piece of paper placed between and perpendicular to the two perspectives may be helpful. The third image usually is blurred, but if one focuses his attention on this center image, it will become clear and look remarkably solid.

Figure 2,3,4: Left: Sequence from three-dimensional movie of a random line pattern. Centre: Selected frames from movie of the three-dimensional projection of a rotating four-dimensional hypercube. Right: Example of a stick figure representation of human motion.

Rotating Objects

Rotating objects can be displayed very effectively by three-dimensional movies, particularly if the object is geometrically complicated as in Figure 3. This cube within a cube is the three-dimensional perspective projection of a four-dimensional hypercube. The hypercube is specified mathematically and is rotated in four dimensions by a matrix operation. The program and technique, incidentally, are very general; other four-dimensional objects can be similarly displayed. Extensions to even higher dimensions are also quite simple.

Motion of Stick Figures

The last example, Figure 4, is a simple attempt at stick-figure motion on a stage. The stage positions of the stick figures are chosen at random, and the figures move at uniform rates. Arm motion has also been programmed into the figures. The real goal of this project is to draw a complicated stick figure which can then be used in computer investigations and optimization of human movement.

Motion of a Membrane

Three-dimensional movies are presently being used to show simulations of the motion of the basilar membrane of the ear in response to an acoustic pulse. Such applications are being used by scientists in their explorations of the hearing mechanism.

The movies just described were generated with an IBM 7094 digital computer in association with a General Dynamics SC-4020 microfilm plotter equipped with a 16-mm camera.

Increase of Speed

The preceding examples indicate several possible applications of computer-generated three-dimensional movies in both the sciences and the arts.

Unfortunately, a time lag of a few hours exists between the actual running of the computer program and the final 16-mm movie. Most of this delay is contributed by the slowness of the plotter itself and the time required for processing the film.

Ideally, the programmer-user should see the results while the program is running. Equipment has recently become available for immediate real-time visual displays of computergenerated data. This equipment usually uses a large cathode-ray tube to display the data, and provides light pens and other facilities for interacting with the computer while the program is running. Then, when the final desired results arc obtained, a hard copy can be made with a conventional film plotter.

As the technology progresses, increasing numbers of scientists, animators, artists, and others will use the graphic capabilities of computers coupled with devices for producing visual output. Completely new approaches to presenting complicated concepts will become possible. The computer-generated three-dimensional movies described in this article are only a small glimpse at what the future may bring.

References

1. Edward E. Zajac, Computer-Made Perspective Movies As A Scientific And Communication Tool, Communications of the ACM, Vol. 7, March, 1964, pp. 169-170.

2. Kenneth C. Knowlton, A Computer Technique For Producing Animated Movies, AFIPS Conference Proceedings, Vol. 25, 1964, pp. 67-87.

3. A. Michael Noll, Stereographic Projections By Digital Computer, Computers And Automation, Vol. 14, No. 5, May, 1965.