Push/Pop

an MFA thesis project by
Tom Coffin

Introduction
Push/Pop
The Sculpture
The Prints
The Code


Introduction

"Plato's concept of shadows in a cave as an analogy to our perception of truth
reveals that we already live in a virtual reality."

Computer graphics is on a quest, an obsessive mission, to perfectly replicate reality. This Michelangelo envy has resulted in the focus and advancement of computer graphics technology on rendering complex images and animations. Real time computer graphics also yearns for this duplication of the world we experience, but at a much different pace. Whereas, rendered images can take up to hours to complete, the real time computer graphics image must be rendered at least thirty times per second. Virtual reality environments depend upon this real time computer generated imagery to create a sense of immersion and interaction. Because of current computing technology it is extremely difficult to depict a natural realism in virtual reality. Never the less, that goal is the obsession.

Push/Pop

Push/Pop depicts a crude but effective rendering of the Gallery400. The application starts with the user facing a simulation of the Immersadesk. Using a joystick mounted on a wand, a user is allowed to navigate through the gallery. Five columns of the gallery are used as portals for entering into abstract spaces. The term Push/Pop (though technically is derived from pushmatrix and popmatrix GL function calls in coding language) refers to the action of pushing from depicted reality into an abstract environment. After experiencing these abstract spaces a user can then "Pop" back into the real gallery space. In the virtual Gallery400 there are two sculptures on pedestals. These two pieces represent a couple things. The sculptures presence directly illustrates the power and illusion capable with three dimensional stereo graphics. When the user gets close to one of the objects they can then extend a hand towards the illusion and conceptually touch the object. This illusion is the most powerful quality of virtual reality environments. A little closer though and the user is pushed into an alternative gallery space. This dynamic change of environment creates a desire to return to the sculpted objects in the realistic Gallery400. You can get close but not too close. The objects also represent the potential design tool which a virtual reality environment can become. These objects were designed by writing a computer program which allows for the designer to manipulate, rotate and repeat various sized rectangular objects until the desired shape and form is conceived. The resultant matrix of vertices points can then be translated into other software packages in which they in turn can be translated into file formats readable by commercial manufactures. The virtual environment allows a designer to examine in great detail a sculpture previous to any physical modeling.

The alternative gallery space is a half way point between the realist rendering of Gallery400 and the completely abstract spaces of the alternative applications. It is this alternative space where the user is introduced to another unique virtual reality quality. The quality of endless space in a downward direction. As we stroll through the landscape one thing escapes us and becomes cemented into our perception of real space. When we look down our feet are planted onto terra firma. Highlights of tourist attractions are places where the viewer can look down. Whether it is down into a large canyon, over a bridge or looking out from an airplane window seat, we test the limits of this spectacle by spitting as if to extend ourselves to the ground below. These experiences are part of this downwards quality which virtual reality can induce. In the alternative gallery the user can look down into a grid which seems to extend downward for a long distance a spiral image creates a boundary for this expanse further developing the halfway notion. The alternative gallery space allows the user to fully explore the sculpture models from many angles. There are external views as well as internal views. Also featured in this space are six images which change over time. An animated composite of two images reveal a word. This word is the title for each individual abstract application for which these animated images are also portals. The entire experience twists and turns into each other creating a complex whole experience. The journey through Push/Pop is cyclical in nature and controlled by the user. There is a finite number of options which can be fully explored by the user.

The abstract spaces are a complete departure from the realistic and semi realistic views of the gallery spaces. These abstract applications are not navigable, rather they are environments for the user to simply experience. The portals in the alternative gallery and the columns in the virtual Gallery400 all lead to these spaces which can be switched by using the Wand buttons. Either the right button or the left button will sequentially switch from application to application. The middle button will "pop" the user back to Gallery400. There are five abstract spaces: Soup, Fire, Jaws, Grow and Spin. Each of the abstract spaces evoke a meditative type of environment. The looping graphics and audio create a mesmerizing effect.

The Sculpture

The sculpture is a result of a computer program I wrote initially in RT1. RT1 is a programming language developed by the Electronic Visualization Lab to teach artists how to program. The simple function calls of RT1 enabled a quick understanding of basic computer programming logic. This program allowed a user to quickly assemble a series of rectangular volumes and rotate them at various angles by using simple commands at a text prompt. The resultant series Red Trees can be found at my "Art on the Net" cyber-studio. The Red Trees series was a result of combining many years of constructivist working techniques with the symetrical nature of working with computer graphics. This combination is most effectively created on the computer platform. The resulting forms, complex and symetrical, would have taken many years to form using traditional sculpting techniques such as woodworking or metalurgy. In designing these forms on the computer, I was able to quickly create forms which I could then analyse and recompute. In order to move these sculptures into the virtual reality hardware system of the Immersadesk, I then rewrote the vertex lists provided by the output file from RT1 into a format which the graphics library (GL) could understand (see vectorsforc07c.h below for an example). It was really exciting to see the shapes spring to life in the form of three dimensional stereo imagery. After visualizing the sculptures in a virtual reality environment, I knew that I had to take the next step which was to physically manufacture one of the sculptures. In order to do this, I again reorganized the vertex list provided by the RT1 output file by reformating the vertext points into the format of an .OBJ file. This format allowed me to import the objects into commercial 3D modeling software such as Softimage and Alias. Once in those commercial software packages I was able to export the objects as an .STL file. The .STL file is a standard output file for service bureaus which can then output a stereolithographic model. Stereolithography (SLA) is a technology that creates precise physical parts directly from CAD data. This technology uses a laser to scan and solidifiy a liquid polymer. The resulting SLA part is produced in a matter of hours without machining or tooling. These parts can be used for detailed engineering prototypes, concept models, tooling masters, and low volume production. This manufacturing technique was a perfect match for physically imaging the virtual sculptures which I had designed.

The Prints

The prints are direct output from a .TIF file onto film. Multiple layers were composited together to achieve the final image. The images appear in the alternative gallery space as the animated portals which lead into the abstract spaces. Words, which are the titles for the abstract applications, appear as the image fades in. The images are a composite of images taken from the World Wide Web (WWW) and scanned original artwork. There are a lot of opposites at play in these images. The most notable imagery is from Michelangelo's Sistine Chapel. The significance of this appropriation has many roles. The Michelangelo images reflect the thesis that computer graphics is obsessed with realistic representation. They also represent the past and the work of a mature and accomplished artist. These images are also captured in a low resolution format. The Michelangelo imagery is composited with high resolution images of pornographic material also found on the WWW using computer generated masks from the SPIN application. The skin color and sexual imagery subconciously adds a feeling of sensousness to the final image. Also, the resultant combination and interplay between low resolution and high resolution creates unusual depth perceptions. A final composite is made using the first gestures created by my infant daughter Cara. The juxtaposition of infant gesture, mature gesture, low resolution, high resolution, religious and pornographic imagery creates a friction which is visually stimuating. The final print product was then framed in a gold frame. This act is symbolic of the unrecognition digital imagery receives in the current art world.

The Code

Writing the code for these virtual reality applications has been one of the most challenging exercises I have ever experienced as an artist. In learning to write computer code I found that the logic was very easy to understand in that the step by step methodology of computing, closely resembled the organizing structures of printmaking. It was my printmaking organizational skills which ultimately allowed me to step back from the thousands of lines of code that I was writing and deconstruct it into working sections. By seperating my code into sections such as navigation, objects and textures, I was able to develop a set of "building blocks" to easily construct these VR applications. I broke my code into the following seperate files: These files were then liked together using a Makefile and a series of header files:

coffin@art.net