Fantasy Device

Exploring the intersection of hardware fundamentals and creative technology innovation

October 1, 2009

Physical ComputingHardware3D ModelingVirtual RealityITP

In the third week of physical computing, working with hardware still feels quite new to me. This is great because even the most fundamental devices – blinking lights, variable resistors and so forth – seem to hold endless possibilities. That is to say, I don't feel jaded. In software development, I am already capable of building a somewhat complex system, given the time and thought to do so. As a result, the prospect of building something of a Photoshop (or let's say Kid Pix) imitation is not all that thrilling – I can imagine the sorts of data structures, the UI and so forth that I would need for a project of this kind.

But I have not been thinking about the fine points of hardware development for very long and so the prospect of considering preexistent technologies in this field for the purpose of learning about their component parts and the synergy between them feels beneficial. As Bob Dylan astutely noted, "To live outside the law, you must be honest." I believe that taking a deep look at the fundamental building blocks of hardware – from potentiometers to digital i/o with a microcontroller – and thinking about how these fundamentals combine into more complex devices is the best way for me to come to new ideas in this field.

I have much to learn about leveraging hardware components in clever ways. I think of my first introduction to the notion of recursive algorithms. What a clever and inspiring idea! When you apply it to your own premises, you start seeing entirely new applications and methodologies within your own preexistent concepts. I guess all of this is to say that in learning hardware, I don't want to rush towards the first semblance of a new idea I might have. I want to take the time to explore the grammar of the medium because this will enable me to reach not only new ideas but also my best new ideas.

With this in mind, I propose two fantasy devices, which are technologies that already exist. The spin, however, is that I have chosen technologies that I believe can be produced (at least as proof-of-concept devices) for much less money than their commercial counterparts by taking clever approaches to the fundamentals of electronics that are available to us at the introduction of this course. The devices are the virtual camera and the 3D vertex-scanning stylus.

My aim is to consider how these devices can be built in some form using the means available to us in Physical Computing. First, the 3D vertex-scanning stylus (which is not its commercial name, or a particularly catchy one for that matter). Modeling objects can be quite difficult in a 3D environment. So, in some cases, it is easier to build a physical model in clay and then scan the geometry into the computer. Nowadays, the film industry uses 3D scanners for this task. But for a long time, another device was used – a stylus that you ran over the surface of the physical model and collected volumetric data in the manner depicted in the drawing below.

3D vertex scanning stylus concept drawing
Concept for a 3D vertex scanning stylus using potentiometers and mechanical armature

Ed Catmull (a founder of Pixar and a forefather of 3D graphics) used a device of this kind in his early work in 3D modeling. I believe a crude version of this device could be built with little more than a series of potentiometers, which are used in determining the position of the stylus in relation to the physical model.

The device would work in the following manner. A sculptural model would be placed on a Lazy Susan. The bottom of this Lazy Susan would be attached to a potentiometer so that as the model is rotated, we may track its angle of rotation by utilizing the analog value reading from this variable resistor. At some given point along the circumference of the Lazy Susan, an armature is mounted. This armature has 3 "bones" and 2 "joints." The length of each bone is fixed and known to us and each joint is formed by a potentiometer which enables us to take a reading of the angle between two bones.

When the tip of the armature stylus is pressed against a point on the sculptural model, a button is triggered which tells the device to take a reading of each of the three potentiometer values. With the knowledge of these angles and of the length of each bone, we may compute the location of the stylus tip in 3D space and may therefore associate a point on the model with a Cartesian coordinate in a 3D environment.

There are some difficulties to machining the joints (anyone know how to spot weld?) and the degree of freedom will depend on the capabilities of available potentiometers, but I believe this device can be built at a relatively low cost.

My other fantasy device is a Virtual Camera. This device would take the shape of a camcorder. But it would have no lens or image sensor. Instead, it would use gyros and accelerometers to collect data on the camera's movement through physical space. Using a wireless transmitter, this data would be sent back to a computer and would comprise the location of a camera within some virtual scene in a 3D environment.

Virtual camera concept device
Concept for a virtual camera using gyros and accelerometers for motion tracking

The camera's perspectival view of that scene would then be sent back to the LCD screen of the Virtual Camera as a video signal. A potentiometer would serve as a focus ring and a set of buttons would enable virtualized implementations of other real world camera features. The virtual camera can be moved in physical space but correspond to a virtual space depicted on its screen, allowing filmmakers to apply a natural, physical camera style to CG or special effects films.

The device can also be used in a Pre-Viz stage of production for the purpose of allowing a director or cinematographer to experiment with and develop a particular shot style. Peter Jackson used a device of this kind for Lord of the Rings. Any commercial implementation of this tool is extremely expensive. Yet, the necessary components are quite available to us and the main challenge in producing such a device would be to fine tune the algorithms used in interpreting the gyro/accelerometer data.

I would very much like to build both of these devices this semester. Though, each could be a big project and I want to leave myself open to the prospect of building a final project that does not already exist in any form.