homunculus.nimbus

 

Software

The challenge of developing nonlinear interactive systems in my work has led me to the ongoing development of a software framework, called WorldMaker Universe (WMU). The inspiration for the development of WMU was to provide a strong connection between the hardware, software, and conceptual components of my research in order to maintain a fluid connection between the virtual and physical aspects of my work [1]. The framework facilitates the creation of expressive and emergent behaviour in interactive installation environments by encapsulating common use elements of the software design of interactive environments into a ready to use set of abstractions. The organization of this framework is based on a model of nonlinear narrative that is a composite of operations (data generators), structures (scaffolds for data flow), and personae (the interactive input and output representation of data). Each of these elements can vary independently of each other. Many of the concepts and terminology that help define this framework are taken from design patterns, as used in computer science, such as those found in Design Patterns: Elements of Reusable Object-Oriented Software [2]. This system proved beneficial in the development of the behavioural aspects of the work described above.

The software was developed using OpenFrameworks a C++ framework for the development of computational art [3]. OpenFrameworks facilitated the deployment of the software on multiple platforms, which proved beneficial for both prototyping and dissemination. This software workflow was developed for the installation that included simulation, behavioural design, and deployment in the same code base. For speed and convenience the software was developed on the Apple Mac, while the deployment target platform was a RaspberryPi Model B [4], which was low cost and had a small form factor. Because of the versitility of OpenFrameworks, only a small software tweak (turning off the 3D visualizer) was needed to get the software to run on both.

[1]  see Hosale, MarkDavid. 2008. Nonlinear Media As Interactive Narrative. Santa Barbara: University of California, Santa Barbara.
[2]  Gamma, Erich, Richard Helm, Ralph Johnson, and John Vlissides. 1995. Design Patterns : Elements of Reusable Object-Oriented Software. Addison-Wesley Professional Computing Series. Reading, Mass.: Addison-Wesley.
[3]  http://www.openframeworks.cc

[4] http://www.raspberrypi.org/products/model-b/