William Saar


back to my website

user interface wings

Nevermore's physical interface.


screenshot of the flight engine

The virtual world built in Maya and rendered using Java3D.


cut-scene capture

Nevermore uses cutscenes to

tell its story.


ghost of Lenore

The ghost of the deceased Lenore speaks to the Raven.






by William Saar.

New! Added short documentary that shows the project and where I talk about the project (in Swedish). Filmed and edited in 2003 by Peter Gunnarsson at Dramatiska Institutet. 


New! Nevermore featured on Parallax Inc's site (the makers of the Basic Stamp microcontroller used in Nevermore's interface).



Nevermore is an interactive art installation based on Edgar Allan Poe's poem The Raven and was developed during nine weeks as the final project of a one-year course in interactive media at Dramatiska Institutet.


Nevermore uses a wearable physical interface in the form of wings. The experience starts with a participant entering the location where the Nevermore is exhibited and is strapped into the wings. The participant can then use the wings to control a raven inside a virtual 3D-world by flapping the arms and rotating the shoulders to turn.


The world contains the house from the poem where a man is mourning his lost love, Lenore. The visitor can fly around the house as the raven and use the supernatural abilities that the poem attributes to the bird to discover the tragic love story that has taken place in the house.


Physical interface

The physical interface consists of the location where Nevermore is shown and the wings that the visitor uses to control the raven inside the virtual world. The virtual world of Nevermore is projected onto a screen in a dark room. A spotlight creates a circle of light directly in front of the projection. A thick cable that can be attached to the wings lies in the middle of the circle of light and leads behind the screen underneath the projection like an umbilical cord.


The layout of the room creates ritualistic connotations and integrates multiple visitors into the experience by making their roles as watchers, standing in the darkness just outside the circle of light, contribute to the connotation. A visitor starts his experience by stepping out from the darkness into the circle of light and getting strapped into the wings.


The wings are made of rattan, leather, and feathers and are attached to the body using seven antiqued brass buckles. A person can not free himself without help. When the person has been properly strapped into the wings, the cable on the floor is attached to the belt of the wings and the projection comes to life.


The materials used in the wings connote the time period in which Nevermore is set and the act of getting strapped into the wings conveys the dangerous tension of the poem and of the dark subject matter for which Poe is famous.


Nevermore's use of wings as an interface, instead of just keyboard and mouse, puts a natural limitation on the visitor's ability to navigate and makes it easier for him to accept a slower pace of exploration than what he may have come to expect from many realtime-3D games. This was crucial to Nevermore's success since most of the story is presented using audio dialogue and since the virtual world is very small compared to the worlds, or even levels, of many games.


A Basic Stamp microcontroller attached to five potentiometers mounted in the rattan wing skeleton captures the motion of the wings at 50 times per second and transfers it to a computer via the serial port.



Virtual environment

The virtual world of Nevermore was modeled in Maya and is shown in real-time by a 3D-engine in Java using the Java3D API.


Writing the 3D-engine gave me a good overview of the graphics content pipeline for games and gave me an opportunity to implement some features that are found in many popular games today:


  • Skeletal animation with skinning lets me animate the different parts of the bird separately but still makes them hang together in a natural way (if you don't have skinning, the parts either disconnect from each other or cut into each other).
  • Collision detection for the bird and some detection to keep the camera out of the walls when the bird turns around.
  • Simple flight physics model for the bird.
  • Particle systems to simulate fog and fire.
  • Simple occlusion culling prevents rooms that the user can not see from being drawn.
  • Realistic lighting by combining interpolated vertex lighting with the textures. I would have preferred to use light maps, but Maya was not able to export multi-textures using VRML or X3D and I did not have time to write my own exporter.


The engine uses the Xj3D loader to import VRML-models from Maya. The engine also uses the Java Communications API to communicate with the physical interface and the Java Media Framework to show video cutscenes.


I was able to reuse an EDL-parser (Edit Decision List) that I had written for my interactive film project to manage all the video and audio dialogue in Nevermore. It allowed me to store all video clips in one video file and have Final Cut Pro generate an EDL-file with timecodes that I could use to jump between the clips in the video file.


Interactive narrative

Nevermore contains a story in three short acts. Each act is preceded by a short cutscene where the grieving male lover introduces the act by speaking to the user, in the same way as the man in the poem speaks to the raven.


The user discovers the story by moving close to objects in the virtual world. When the user comes close to an object, his supernatural abilities as the raven lets him hear the memories that have been stored in that object. One of the objects is a mirror where the ghost of Lenore appears to speak to the raven.


Each object contains a different memory depending on in which act the user activates the object. Each object also has a theme to its memories through all the acts (for instance, the love object contains three different scenes about love).


The next act begins and is introduced by a cutscene once the user has activated two objects. This introduces time into the production and means that a user can experience the same act differently by interacting with different objects.


Final comments

I think The Raven is a good work to interpret as Poe claimed that the only thing that mattered in poetry was the emotion that each poem created, rather than the intellectual truth or moral wisdom it contained. I have tried to stay true to the mood of "beautiful sadness" that The Raven was meant to inspire, and have also taken the chance to include my feel for the time period when the poem was written.


I think one enjoyable aspects of the work is the mix between old and new, wings made of genuine materials that are used to navigate in a virtual 3D-world based on a 19th century poem.


Thanks to Johan Andersson at Dramatiska Institutet for help with mechanical construction and Johanna Selin, Daniel Rytz, Mikael Rotstein, and Silvia Man for voice and on-screen acting.