Bruce Cornwell

1974

Focal Press

Our objective in this chapter is to provide the potential computer user with a set of mental tools which will expedite his use of this electronic tool. Perhaps the word tool is poorly chosen. We are dealing with a machine that can duplicate the ability of the human mind to direct the execution of menial chores. Whereas our mind directs our hands, the computer, for our purposes, directs the microfilm plotter. It is useful to locate the quite variable boundary line between the task of man and the task of the machine, so that man can find for himself the best ratio of his time, the computing time, and the programmer's time.

Let us consider the tool-like attributes of the computer. Before you can use this tool effectively, you must of course, have a reasonable idea of what the computer can accomplish even before you set pencil to paper to sketch out an animation sequence. But, quite regardless of the individual capabilities of a certain computer it seems more sensible, and indeed more challenging, to select tasks that the computer can do with reasonable ease, or to try to simplify the more complicated tasks. This is where the designer and the programmer must interrelate their activities, or be one person. Luckily it is possible and quite practical for a novice programmer to launch his own designs or visual experiments, even if they are terribly inefficient from the programming standpoint. A lack of finesse in the program does not usually impair the perfection of the visual. The resulting picture is the same whether it was accomplished with a sophisticated fast program or a repetitive slow one. And to do the whole job for yourself does help you to acquire a feel for this tool.

In addition to the computer's adaptability to programs of varying quality, provided that the programs strictly follow rules set forth in the compiler and software instructions, it can also simulate other systems. As pointed out elsewhere, the computer probably has far greater flexibility than any other tool ever devised. And probably many uses to which present machines can be applied have yet to be imagined.

One of the few inventions that in any way rivals the computer for adaptability is the ordinary deck of playing cards. Cards can be used for games of chance, games of skill, magic tricks, a fortune telling device, a decision tool (cut the deck - red is yes, black is no), and so on. The deck resembles the computer in the infinite variation of playing rules, or programs, that have been and can yet be written.

In fact, it is rather unfortunate that computers are so generally associated with calculating machines. As far as their use as book-keeping machines is concerned, the association is quite valid. But when one considers scientific applications, the machine begins to take on a different character, worth examining, simply because the most readily available compiler languages for graphics applications at the moment are devised particularly for scientific work. To the scientist, and often to the engineer, the computer is an extremely versatile simulator. Anything that responds in a logical manner to a limited number of controlling conditions can be simulated with a computer. The performance of a nuclear reactor, a roulette wheel, the flow of water in hydrodynamic studies, or even the movements of aircraft on the taxiways of an airfield can be simulated. What is logical about roulette wheels when they are notorious for their fickleness? The fact that any given number is equally likely to result from any spin is not only demonstrable, but a sequence of such random numbers can be generated from a very simple computer program.

The idea of creating scientific simulations involves using the computer in two capacities simultaneously. With one program, often a very elaborate one, the computer guides or generates a running description of what is happening, or the sequence of motion or change. With another less elaborate program the computer accumulates data on what is happening, which can be later translated into statistics that summarize its efficiency, expense, loss, output volume, or whatever one wishes. Usually all of the happening is erased within the computer as it takes place and is measured; only the accumulated data is retained for statistical printout. In this mode of operation the computer is performing in a conversely mathematical manner. Whereas a mathematical formula is the essence of a relationship between two or among many interacting events, the computer simulation is the re-creation of these events, or the creation of new events with all of their details as appropriate symbolic entries. This is truly the long way round to solving a problem. It is rather like doing arithmetic by counting pebbles, one at a time, rather than by using numerals. But the power of this simulation method in the computer lies in the fact that within the computer can be organized and stored a problem structure far more complex than could be handled with any reasonable mathematical formula. The use of the computer as a simulator relates very closely to the task of creating computer animated films.

SIMULATION OF GRAPHIC TECHNIQUES

As we have already seen, the computer driven plotter can create a line, or lines, in any of several widths, of any length, straight or curved, within the plotting area. This suggests that we have a sketch pad, and it is true that almost any sketch or layout can be translated into a series of X, Y addresses which will cause the computer to draw a particular line image, and that this process can be repeated for additional frames. This may sound laborious, and it is. Used in this manner a computer would be simulating a sketch pad, which it cannot do nearly as well as a man can handle a conventional pad. Under such a program the computer has no critical facility with which to evaluate the line as it is drawn. All it can do is to grind its way through a string of numerical X,Y values, although it can do this at tremendous speed. The plotter alone can handle something in the order of 400 X-Y addresses in one second.

Fig 3.1: A storyboard is worked out, and a program written which will reproduce the desired pictures frame by frame. The graphics package routine helps to contain these with minimum effort. The program is then punched on cards or a tape input to the computer. Once inside, the program is compiled by the Fortran compiler into machine instructions, when the program is then executed. If successful, information is output to be reconstructed on an auto-plotting machine or mircofilm recorder, or on to magnetic tape reels for transfer to another machine which might generate an image on a cathode ray tube which is photographed by a cine camera.

If your graphic design can be handled with tools that are common to the drafting table, the next step is to put the computer to work at simulating a set of drafting tools. Many graphic software packages have already done this so that straight lines and circles can be described with a very minimum of commands. If families of graduated concentric circles, or arrays of parallel lines, are desired, the computer can easily be instructed to create them with three simple instructions, such as - where to start, where to end, and how many lines in between; or, where to start, what interval between each line, and how many lines. In this case the computer is simulating not only drafting tools but the draftsman too.

Another graphic technique that can be readily simulated is the creation of block printing patterns where a small motif is repeated in an ordered manner, or with slightly irregular placement of images, or in a totally random placement. The basic motif, or more than one if desired, can be stored in the computer memory as a string of X-Y values about a reference point. The main program describes where these motifs are to be printed but each is still drawn with vectors, one by one. As each reference point is cited by the main program, the computer takes the string of X-Y addresses and mathematically transposes them so that they can now cause the moving beam to draw the image exactly where desired within the plotting area.

Another device that the computer can simulate with ease is a hot-press, or composing machine. Fonts can be stored in memory. As they are called out letter by letter, each letter can be properly placed relative to the previous letter by computer stored instructions which give a visual uniformity of spacing impossible with foundry type. The height of letters can be adjusted independently of width, and vice-versa and italics can be created by computer control of slope. All of these refinements can be integrated with a subprogram that justifies the lines, or gives uniform margins on both sides. Present software intended for microfilm plotter use has only a limited number of fonts, most of which have a mechanical drawing style, but these shortcomings will certainly be overcome in the forseeable future.

So far we have only considered computer simulation of the static aspects of graphic art. Motions, however, can be simulated with comparable ease. A very simple example might be the playing of a chess game with pictographic symbols as used in chess books. A generalized program could be written which would translate the commands for designating squares, such as QR3, to the X-Y co-ordinates for the centres of the particular squares. The program could also contain vector descriptions of the symbol for each piece and a set of background cross-hatchings to be used whenever that piece is told by the computer that it is resting on a black square of the board. Finally, the program could contain a velocity specification so that the pieces would move by continuous animation as each move is called in sequence. All of this could be actuated by a simple list of moves in standard chess notation; for example, QB-QR5. Although this might be considered trivial as an example of motion picture animation, it demonstrates the capability of the computer for assuming a number of interrelated chores once the appropriate subroutines are written.

Now, if one preferred an oblique view of the chess board, with pieces standing erect upon their squares in a true perspective drawing, this could be accomplished by a yet more elaborate program, but still be driven by the same series of symbolic instructions that actuate the diagrammatic representation of a chess board. One could even include drawings of hands that reach into the frame to pick up and move the pieces. A program of this sort would take 10 to 100 times as long to write as that which gives the diagrammatic representation, especially since portions of many squares and pieces are hidden by other pieces and by the hands. (This is known as the hidden line problem, for which there are many solutions, but as yet none of them are simple.) So we have considered the movement of an image unit that is directed from point to point by continuous movement between specific addresses by calling off a string of address identifications.

A different type of movement, but equally feasible, might be a string of directions and distances stated in units that relate to the dimensions of the plotting area. The instructions might go: start at centre of screen; east 8; north 2; west 1; south 7; west 6 ... However, the programmer would probably put these in a form more compatible with the compiler language he is using. Instead of the programmer writing out the string of instructions as arbitrary decisions that he has made, he could turn the task over to the computer's random number generating program. Alternate numbers could specify direction by having one quarter of the possible range of numbers assigned to designate each of the four possible compass quadrants. The remaining numbers could designate distance. One might like to incorporate a subprogram to determine that each new destination in the string be within the plotting area. If a command falls outside, the subprogram would delete the plotting instruction and request that the next pair of random numbers be called up, and so on. This would keep the design contained with in the screen.

Once you start programming visuals of this sort, more possible variations come to mind which can often be incorporated into the original program as an extra subprogram, yet leave the original program intact, save possibly for one statement that calls in the subprogram at the appropriate times. For instance, the above mentioned program for the random walk, as mathematicians term it, could be modified to include the calling out of two more random numbers to introduce a slight deviation in both the north-south and east-west directions from the plotting point requested by the main program. If this revision of plotting point were not allowed to affect the next plotting point in the main program, all the lines of the diagram would fail to be either parallel or perpendicular to each other, except in rare cases, thus giving the whole design less of a machine-rendered appearance. (A five-digit computer generated random number can give all of the needed values in the above program without calling up three more numbers for each step of the diagram.)

Another example of an animation movement under complete control of the computer, once initiated, is the billiard table exercise. If the rectangular perimeter of the table is specified as four mathematical lines, one can initiate the location and direction of a moving ball. From there on the program can have the computer test the location of the ball in each frame of film to determine when it intersects with a rail. When it hits the rail the program can cause the ball to resume movement in a reflective direction, and so on until a predetermined limit in the program orders a halt. Although this might be a fairly realistic simulation of a perfectly efficient billiard table, if the program were written in general terms, it might be used to experiment with table shapes other than rectangular, even tables with curved sides. The visual might be more interesting if the sides of the table were not drawn.

Another variation would be to have the program simply draw a line to trace the movement of the ball, a line that lengthens with time. Having eliminated the table and the ball, why not eliminate all the frames except that of the final line plot which would include the path of a ball that has ricochetted maybe 200 times? Let this be the first frame of your animated sequence. The frames that follow could each display the same completed plot with the same initial location and direction of movement, except with one or more sides of the table shifted by a very slight angular or distance increment. The rails are fixed for each frame to determine the entire plot, but are shifted between frames. What will happen to that plot when viewed as a motion picture will probably be unlike anything that was ever created under an ordinary animation camera.

Granted that these examples, except for the oblique chess board, are very primitive exercises in computer animation, they do begin to suggest the possibilities for dynamic visual displays which can be achieved if the computer is approached as a tool that does not require heavy-handed human control. In this type of work the man-machine boundary line can be easily explored and visual results can be readily achieved.

SOURCES OF DATA FOR ANIMATION

As is probably apparent from these few examples, one very critical factor in the creation of computer generated films concerns the source of data that will specify the images, and how much effort is required to access that data. At one extreme, one could input a completed set of pencil drawings for an animated film. The data would be read off the drawings with a manual scanning device such an an X-Y digitizer, or it could be done automatically with a flying spot scanner. In order to create the desired film, the storage and manipulation problems within the computer program would be overwhelming unless one were attacking this as a long range application, with a very generous budget and at the very least one year to create the software. Even then the expense of the output might still be comparable to conventional animation shooting, and we have not yet taken into account the painting of colours into the image.

A computer film that can draw its data from a base that is already in computer readable form, punched cards, tapes, etc., is much more feasible to produce, and can often be accomplished with only a modest programming effort.

SCOPE FOR SIMULATION

An initial effort toward the utilization of existing simulation systems was undertaken by the engineering concern Tippets-Abbett-McCarthy-Stratton in their production of a film which showed ground movements of aircraft at the Dallas-Ft. Worth airport during a hypothetical heavy traffic hour five years in the future. In fact, when the film was made the airport was not yet built. The basic program was an IBM General Purpose Simulation System (GPSS) which had been programmed to provide relevant information regarding aircraft movement throughout the airfield and gate occupancy. From this base it was simple to extract snapshots of the approximate location of all craft at random intervals of time. This gave a picture whenever any plane arrived at any intersection, and hence, required a decision of the computer. From this rather sketchy data it was possible to logically deduce where each plane was at uniform intervals of time and in which direction its nose was pointed. This refined data was then fed into another program which wrote the graphic instructions to the plotting device, an FR-80. The programming effort to adapt GPSS to the problem at hand and to write all the subsequent programs necessary took about nine months to complete. The final computer run was about three hours, machine time on the plotter was about three hours, and the optical bench work to combine the background map of the airfield with the computer generated planes and gate symbols took less than one day. The completed film, ten minutes long, displays two hours of airfield operation.

The use of computer films as an extension of computer simulation techniques tends to either enhance, or conversely, to lower the validity of the simulation study. The people for whom the study is intended as a decision-making aid are no longer merely handed some computer-given figures for the efficiency of this or of that mode of operation. They can see the operation functioning. The resultant data is no longer mere numbers out of a black box. The viewers can form a judgement reinforced by the impact of the visual. However, if the simulation displays sequences purported to be human judgement, then the management level viewer may criticize the validity of the whole presentation from the standpoint of his working experience, if he has actually done what is being shown in the film and has done it differently. The net effect of the films in these cases is that management gets a much more intimate view of the workings of computer simulation and hopefully will exploit its strengths and avoid its weaknesses. As computer simulation visuals become more sophisticated and more widely used it is increasingly important to remember that the output is only as accurate and as objective as the input.

Although the exploration of two-dimensional images is sufficient to fully engross a number of serious artists, it is the creation of perspective images that seems to attract the most interest among producers and potential users of computer generated films. In some ways this seems to be an unfortunate direction; too often these exercises are aimed at making the computer create a visual which must be judged against the standards of ordinary photography, rather than at seeking new directions for this communication tool. For instance, could colour or time replace the conventional third dimension of at least some abstract concepts? However, the programmer and the designer of the software do seem to get tremendous and almost tangible satisfaction when they see the three-dimensional reality evolve on the screen, and it is the need to solve problems through seeing things in three dimensions that has attracted a large proportion of the funds and effort toward developing computer-generated film techniques.

The simplest software allows one to describe an object as a series of points in X-Y-Z space. Each corner of a cube, for instance, is given three numerical values that determine its unique location in three-dimensional space. Along with the instruction for connecting these points with appropriate lines, one enters the X-Y-Z address of the viewer's eye. With only this data the computer can plot the required perspective drawing of any object. If the viewer's eye, or viewpoint, changes position gradually from frame to frame, the object will assume appropriate change of shape in the drawings and appear to move. The geometry needed to accomplish this is not a great strain for the computer, if the figure can be shown as transparent, like a bird cage. However, if the figure is to appear as a solid and all the wires on the back side of the birdcage are to be omitted from the plotting, the hidden line problem, referred to earlier, becomes far more complicated.

Whenever an artist, or a group of artists, begins to use some new material or technique, it can be great fun to experiment with no more demanding an objective than to find what new degree of excitement can be aroused in an audience. The computer is an especially challenging tool for use with this type of non-directed experimentation. It is the one instrument that can become a thousand different instruments simply by rewriting the software. This can stagger the imagination, especially the unfettered imagination. But there are other tasks for this system to delight audiences, which involve a more clearly delineated scope of imagination, and which have an economic significance among the arts. This is cartoon animation.

CARTOON ANIMATION

In its present form the digital computer with a microfilm plotter operated with batch mode programming is a very cumbersome tool. Software innovation could overcome some of the drawbacks. An interactive light-pen coupled with the above hardware provides a system that approaches economic feasibility compared with common methods of rendering cartoon animation. And finally, for comparison, the Computer Image Corporation techniques are very inexpensive, provided that one does not try to duplicate the equipment that they have spent years developing. Let us examine these various alternatives a little more closely.

The digital computer with batch mode programming, or a time-shared teletype terminal, can be programmed to create modest images with plenty of movement. The simplest structural units within the images are geometric shapes - circles, ellipses and polygons. The obvious drawback is the monotony of style. The system is not sensitive to the artist's individual way of seeing animation in his mind's eye.

To increase the sensitivity of the system so that it can capture and replicate nuances of design, pacing, and movement as dictated by a particular designer calls for a vast increase both of software and of devices to facilitate input of drawings into the computer memory. These might range from a modest X-Y digitizer to an elaborate flying spot scanner. A thorough exploration of the requirements for this means of animated film production was undertaken by Ronald M. Baecker during his work at Massachusetts Institute of Technology. Many man-hours in creating conventional cartoon animation is devoted to tasks that are repetitive, methodical and logical. This type of responsibility can be assumed by the computer. Baecker has specified how present hardware can be adapted, through software, to these tasks. He pursues the goal of interactive computer mediated animation with a directness exemplary of the engineering profession. The development of such a system might require a financial expenditure somewhere up in six figures, and it might reach seven by the time the system has had a thorough shake-down by the people responsible for producing saleable film output.

The next question is, what if one went only half way in building such a system? One could settle for not quite the flexibility of movement, not quite the sensitivity to character design, not quite the ease of designer operation. This could spell failure if there is, in fact, a narrow line that divides a delightful film from a hack film, or that divides work that is of festival quality from that which doesn't quite have it. If this is true, it is depressing to pursue an objective which gives no satisfaction until it is fully workable. Of course, this is the usual condition under which most engineering problems are attacked. But most engineering problems have very tangible and predictable results, whether bridging a canyon or putting a man on the moon. Once the goal is accomplished the success is absolute. But if a thoroughly computerized animation system were developed to carry on with the present trends of cartoon animation, would the results satisfy? Is our projection of present trends valid? Or are visual tastes going to go through as great a change as has the taste in contemporary music? This is much more than an engineering problem, and it is just such questions that creative users of this new medium should be asking.

Looking again at the accomplishments of Computer Image Corporation, and their use of analog devices, their approach seems most valid. They have shaped their design standards to meet the limitations of their hardware, and they have built their hardware to approach their design needs. It is quite reasonable to assume that they did not envisage the precise character of their end product until it actually emerged. This is creative engineering.

Unfortunately, configurations of analog devices are not as readily available as digital computers, nor can they be modified as readily as digital computers through the writing of software programs. Actually the programs may be difficult to write, but at least the tools are modest; pencil, paper and card punch. As mentioned before, one of the strongest features of the digital computer and microfilm plotter combination is the rapid turnaround from written program to projected film. However, the search for the fullest potential of this system within the film-making community may be a slow process.

POTENTIAL FOR COMPUTER FILM

What is the potential for the computer generated film? Such a film based on the logic of mathematics can visualize the abstraction of motion and shape, so bringing to the viewer a new awareness, Of even new knowledge, of the subject. Consider just one or two examples.

Two lonely raindrops fall into a calm puddle with slightly different arrival times. The loci of the two intersections of their expanding circular pattern of waves create a perfect half hyperbola. Here is a conic section in a flat mud puddle! How was this created? And what is the relationship of the time interval to the size of the hyperbola, and to its shape? And where is the other half of the hyperbola? On film one can run time backward, but make the circles go forward in time. Everyone can see relationships in phenomena that only a very few could see previously.

When film is wound on to a reel that is turning at a constant rate, the film accumulates at a rate that exactly corresponds to compound interest. How many other ways are there to visualize compound interest? What would a computer generated picture of a loan shark look like? Or, practically, could growth of an exorbitantly high interest be visualized so that its impact equals that of a threatening loan shark?

One can immediately think of dozens of examples of shape and motion that involve randomness. Computers love to generate random numbers and the comparison of randomness of different programs is a matter of some concern to programmers. Nevertheless, for most problems the randomness of the computer will serve, and with endless fascination. A smooth Gaussian curve will emerge from a series of random events, tallied in the film as poker chips. The order emerging from randomness gives a continual feast for the visual gourmet.

These few examples only scratch the surface or even the directions one can go in when creating films that integrate shape and motion; as the initial films become more transparent with repeated viewing, they can still be enjoyed for their visual patterns, in the same manner that familiar music is listened to and enjoyed. Such films, with logical inter-relationships of space, shape, time, motion, and even colour and texture, are exactly what the digital computer with the microfilm plotter is prepared to deliver. All that is needed from the designer is imagination and programming patience.

At the other end of the spectrum of films that are currently feasible are the non-literal, nonobjective design films. These are computer-generated moving, or intermittent, images, presented alone or mixed with other media, including music, which would only be computer-generated incidentally. Actually, the formation of a non-objective pattern might lead to an identical film as the abstraction of a pattern from reality. And here again is where the artist can use the computer film as a research tool, to find patterns where none were suspected.

For many people the computer is only a labour-saving machine, which will eventually replace a lot of workers. It is a calculator which works very rapidly. Or it is a data generating device whose output can greatly exceed the input. The designer can input key drawings and the computer will output all the in-betweens. These are valid images and quite justification enough for most users and designers of computers. But one question the artist must constantly ask is, What can the computer do that men previously have not even thought about doing? (Gutenberg's press threw many people out of work who were literally manuscripting books, but there never would have been a single daily newspaper without movable type. Gutenberg brought reading to the level of the common man.)

Computer images are primarily related to the mathematics with which computers can be programmed. The mathematical relationships can be translated into visual relationships of form, movement, hierarchy, even of texture and colour. These computer-generated constructions can have as much variation as musical compositions, and can probably elicit a comparable range of emotional responses. To think in terms of this type of image requires that you feel your way into the medium. You can diligently storyboard image constructions, but the end result when continuity of motion is achieved is often a startling surprise.

This capacity of the computer to plot endlessly and to redraw a plot with only the slightest change in a parameter, might result in it differing quite radically from conventional animation or statistical graphing. It might prove to be a different in kind and lead to totally new insights. And, actually, although many people in the computer community are continually working to increase its capability, the potential has as yet hardly begun to be exploited.

Already within the computer are the arithmetic functions, trigonometric functions, random numbers, and the logic to correlate these in varying ways. The arithmetic functions can be used for sizing, for the location of image units and for in-betweens. The trigonometric functions can be used for movement relating to anything that rotates, such as circles, wheels and spheres. The random numbers are used in single-frame displays, for ordering (or non-ordering) image unit configuration, image size, intensity, duration, quantity, location and angular position. In frame to frame movements random numbers can also give the image unit direction and velocity, similarly the point of view.

Random numbers are used to give subtle irregularity to smooth or ordered data; the results may range from slightly erratic to completely random, depending on the ratio of weighting two data sources. They can be used to approximate natural phenomena by application of Gaussian or exponential distributions. One can visually match a mathematical model with statistical data, and with such matching one can see which, if any, of those natural phenomena which seem to be random are indeed cyclical. For any sequence or any number of sequences of random numbers are precisely repeatable when computer-generated.

The digital computer as a mathematical tool can offer a complex of simultaneous image controls far exceeding those of any animation stand, or the patience of any animator. Conversely, the computer film can present the simplest of images, such as an 8 being untwisted into a 0 in a smooth sequence of ten frames, or a sequence of a thousand frames, which would again defy the patience of any animator.

Although the researchers in the computer field will continually seek to devise new hardware, there are enough possibilities in the manipulation of the two-dimensional image available now to command the respect and to capture the interest of a multitude of artists of widely varying interests. If more imaginative persons would use computers, working with the facilities now available at fairly reasonable cost, they would not only find an interested and receptive public but they would be able to point out directions for others to follow.

Three questions should be asked when considering the production of the computer-generated film. What do you want to see on the screen? What unique images can the computer create? How much money and time is available? If designers concentrated on the second question, seeking the unique images the computer can create, with minimal emphasis on making the computer do tasks which are currently foreign to it, then both financial and temporal factors will be favourable, and the art will forge ahead expeditiously and excitingly. The computer is like a human subordinate. He can be quite versatile with thorough training (software), or with proper instructions for a given task (a program), but if he is going to work most efficiently for us, it is worthwhile to find, and to use, those talents at which he excels.