Spider is software that Curson developed during Rhizomes to allow the cyber-dancer to control, directly by mouse or joystick, and indirectly via a series of pre-recorded sequences, the movements of the virtual camera within the computer models. Spider was developed by a Practice As Research In Performance co-creative process (PARIP) in a performance laboratory.
The starting point for Spider was to take the functionality of VoS (Renderer, Joystick Control, Palette etc) and describe this functionality as a number of generic processes, or classes (also called VcObject types). The cyber-dancer creates VcObjects based on a particular type in the Plex and links them together into webs to describe the virtual choreography.
For example, a movement of virtual choreography could be described by a VcTimeLine containing a number of VcPlace and VcMoves (see VcObjects for a list of VcObject types). The VcTimeLine could then be put into a VcPallette to be used during the creative process of the performance laboratory in order to develop further choreography. Computer applications such as Isadora and Max/Msp originally inspired us to represent the virtual choreographies in this way. Generally, this kind of representation of knowledge is known as an ontology. The restructuring of our software in this manner became an important step in our theoretical development. Below is shown a representation of how various VcObject were linked in the plex for Living Room.
figure 2 - section of plex of Living Room (illustrative)
Spider was the second generation of software we developed. Because we had invested much time and development inDirector Spider was written in Lingo, the program language of Director. This untyped script language although relatively slow to execute compared to VC++, proved fast to develop and in some ways proved a good prototyping tool.
Unlike VoS, which was highly procedural and written as a single Director movie, Spider was written as a suite of MIAW types that could be cloned to create theoretically an unlimited number of instances of each MIAW type. In practice each MIAW instance exerts a heavy price on CPU resources, which places a big limitation on the sophistication of the plex that could be constructed in Spider. This was pushing Director to it's extreme and consequently uncovered many bugs. However, at the time I felt that the logical move to VC++ was too large a step to make in the time we had between the end of Flux and the start of Rhizomes.
This problem of balancing limited time against the development of flexible powerful software, creates challenging issues when developing software within a highly volatile framework of a creative research project. On the meandering path that is creation, you never know really where you are going to end up and can't really see very far ahead.