I set out on this practice based research, to look at the question of how the physiological and psychological constraints of human visual perception, through the lens of restaging and interpreting the early works of John and James Whitney.
The result of this process is the short film Navagraha, available on vimeo (and embedded below) - it is an expression of a system used to generate images in a manner similar to and inspired by John Whitney's work on his computer aided graphics process, making use of an army surplus analogue targetting computer. My system, the Harmonograph, was initially designed as a common test bed onto which various techniques, that explored the nature of time, how we capture images and create moving images, could be implemented.
However as a result of this process, it became apparent, that there was much to explore within the mechanics of that system, and within certain misreadings / inspirations of previous techniques - that whilst not directly answering the questions I had hoped to, still provide some indirect insights. Perhaps most importantly, this research, represents the beginning of what I suspect will be a long journey, looking at the many different questions, this area of research raises.
Specifically it raises an important question, about how machines which can create images or sound, are subject to rules and constraints - and that it is these rules and constraints which lead to the generation of things of interest. We then walk an interesting tightrope as we enter the virtual world of software, where choosing those constraints we apply becomes more and more important.
The following write up, looks at the creation of the Harmonograph, and how the film Navagraha was created.
John and James Whitney
John and James Whiteny were american artists, regarded as pioneers in the field of computer graphics - in the context of this research, I am primarily interested in the mechanical analog computer system John developed, seen in both his own films - most notably Catalog 1961, and his brother James' film Lapis 1966.
John Whitney worked at Lockheed during World War II, which exposed him to the work being carried out on analogue targeting computers - complex combinations of electronics, that took various inputs, and assisted any operator in targeting by predicting the likely path of a target. He realised that these would provide a way of plotting / guiding movements in a repeatable manner - thus opening up all sorts of possibilities in animation.
I don't know how many simultaneous motions can be happening at once. There must be at least five ways just to operate the shutter. The input shaft on the camera rotates at 180 rpm, which results in a photographing speed of 8 frame/s. That cycle time is constant, not variable, but we never shoot that fast. It takes about nine seconds to make one revolution. During this nine-second cycle, the tables are spinning on their own axes while simultaneously revolving around another axis while moving horizontally across the range of the camera, which may itself be turning or zooming up and down. During this operation we can have the shutter open all the time, or just at the end for a second or two, or at the beginning, or for half of the time if we want to do slit-scanning.
Persistence of vision, and motion Graphics.
In order to create moving pictures, that the human brain can perceive as a credible moving image, we find ourselves constrained by specific limits. Motion is perceived when we see a sequence of images, presented in a time frame, where around a minimum of 24 frames per second is needed to create a smooth and acceptable sense of motion. For any system, computational or not, to create moving images in real time - it has to be capable of generating a new image every 41.666 milliseconds - for higher frame rates, such as 60fps as typically found in television and general computing - that drops to 16.66 milliseconds.
Putting that into context - by looking at the number of instructions a computer can carry out per second (typically a million instructions per second, the MIP) we see a development over time from the UNIVAC 1 in 1951 of 0.002MIPS, all the way up to the latest processors being able to carry out over 2 million MIPS - the landscape has most obviously changed, in terms of what can be achieved in real time 3
This fixed limit, creates a boundary around which we must make choices - when John and James first worked on their films, and the associated technology - they had little choice, but to work in a manner similar to that of stop motion animators - creating individual frames of a film, in non real time - admittedly the technology they worked on presented huge advantages in automation 12. We can see this in the time James took to create the film Yantra, by hand between 1950 and 1955, and Lapis, using the computer in about two years.
The developments in technology, mean that at this point in time, we have the opportunity to explore the techniques they used to create their films, in real time, and in an interactive manner - and it is this, that my research has looked at.
There are it seems very few specific descriptions of exactly how the technology John developed worked - it seems likely that it was a system that evolved over time, and that it was much in demand for commerical work through Johns company Motion Graphics, Inc4. This proves to be both a blessing and a curse - as it allows me to define a system which is inspired by their work - rather than an exact recreation.
There are two key elements to the Harmonograph, and the combination of these elements is what provides the way in which individual scenes were composed and generated for the film.
- A rotor system, which is primarily concerned with determining movement of objects within the system5
- Drawable objects, a wide generic class which covers anything which can be placed on a rotor, and drawn into the 3D scene
Navagraha makes specific use of a single drawable object type - the perforated mesh - a 3D object, which consists of a surface with many holes, and can have it's individual points deformed to create more interesting three dimensional shapes.
The Rotor system
A rotor is defined as a torus like object, which has a position in space, a size, and a rate of spin in the X, Y and Z axes. To this object, other objects - including further rotors can be attached using a relative position - these primarily are attached at a point on the torus diameter - though there is no reason why this constrain needs to be followed.
This allows us to create, in a three dimesnional space a movement effect simmilar to that, most children will be familiar with if they have plated with a Spirograph, a toy introduced in 1965, and still ame today, which allows the creation of patterns by allowing multiple rotations to take place through plastic templates of various rounded shapes. This is also similar to the outline images that can be drawn using Fourier Tranform6 - where the terms of a series, determine the ardius of subsequent rotations, allowing complex images to be built up from a simple set of terms.
Early experiments with defining this system - showed how it creates very compelling animations, from very simple systems. Some examples of just the rotor system from early testing are shown below - with the rotor, drawn as either torus or disc.
Whilst the rotors are objects which can be drawn into a scene - they are not designed to be the source of any imagery - for this, a generic class of drawable object was created, which could be positioned on a rotor at a give point in space on that rotor. Initial testing and development was done in threejs using spheres, and in some more advanced tests objects were given trails by capturing their position over time and updating subsequent child objects.
Examples of early tests using three.js are shown below - in this case using objects which also track position.
The description of the cards James prepared for his films Yantra and Lapis, provided the inspiration for the perforated meshes used in the system for my film Navagraha. Specifically the description of James punching holes in index cards for Yantra, to use as a template for painting the cards used in the eventual animation provoked thoughts of how using holes in objects to enhance the visual experience, and how they interact with each other.
A plane in two dimensions is divided into a smaller number of segments on a grid basis - though the use of two different processes I was able to create a more interesting shape than just a flat solid plane.
- Perforations / holes - though three different algorithms triangular, diamond and square shape perforations could be created in each mesh by defining which triangles would represent a face, and not including those which should remain a hole.
- Distortion of vertices from there regular grid like positions - each dimension could have one or more functions applied to it, to transform it - these in this stage of build include
- Noise based transformations - using Perlin noise and appropriate coefficients to add points of structured random interest
- Trigonometry based functions using Sine and Cosine transformations
- In all cases, the driving input value can be chosen from the nominal x, or y coordinates of a point being transformed, ot it's index number
(x * y) + y
This ability to distort meshes became invaluable in creating interesting visual effects which will be discussed later. Specifically in the generation of moiré effects in a single object.
The use of repetition is an extremely important aspect of computational art - compared to physical arts, it is generally a low cost activity, so it's prevalence is not surprising - and as is often the case, something done once or twice is not that interesting, but when done thousands, or more time times, attains qualities, that are often difficult to predict from a few instances.The attraction of I'm sure John's computer system, and certainly my Harmonograph is this ability to take something and quickly replicate it many times.
As a result, I created factories, which allowed individual Harmonographs, Rotors, and Meshed objects to bre created, with variations in their parameters - thus allowing the creation of much more complex scenes. This relationship between individual objects, and massed objects, was to become key in the narrative oif the film, as well as the ability to change the distribution of parameters - the last two scenes show replicated objects with primarily the same parameters - but a small difference in how noise was used to manipulate certain elements - creating a transition from a stately and graceful vision, to a more turbulent, and chaotic one as the film closes.