Virtual Modern Museum Room (CSE167 final project) @author Coram Bryant (cabryant) This project not only allowed me the freedom to employ my programming skills in a creative domain, but also allowed for the opportunity to express my sentiments in the most powerful medium of communication that is enjoyed by members of the human race. Through studies of vision in the field of Cognitive Science, and the research of art history in Visual Arts department, I have come to appreciate vision as the most powerful form of influential communication. In the spirit of this realization, this project marks my attempt to express my vision of art, aesthetics, and the richness that the visual arts can bring to our lives. What better medium for expressing these sentiments than the classic Graphics introductory program: the navigable museum room. The room I have created is an exercise of contrasts. The spacious room is contrasted with the intricacy of the paintings and the material patterns of the structure, to enhance the viewer’s experience. Benches on the back wall invite the viewer to relax, enjoy, and even honor the great artists of early Modern Art History. It is for this reason that I chose to display the paintings on backgrounds that would not distract from their quality. Thus, the viewer can visually navigate through the works of Picasso, van Gogh, Monet, Hokusai, Pollock, and Matisse without being distracted by noisy wall patterns or extraneous objects. Nevertheless, the room is not unworthy of these masterpieces. Golden stands lie interspersed throughout the room, guarding the masterpieces behind sloping velvet ropes. In addition, the floor offers a pleasing combination of wood trim and checkered tiles, while the walls provide a subtly textured background and the ceiling provides a rich tile pattern. Given freedom to navigate within the confines of the room, the user can appreciate the intricate details of the paintings at near and far views. For the most part, I was able to achieve my primary goals with respect to this project. Primarily, I wished to experiment with texture mapping to successfully display some fine works of art on a framed surface. In addition, I feel that I was able to create sufficient complimentary objects to provide the paintings with a suitable environment. I also experimented with Phong lighting, to achieve a balance of subtle gross light and sufficient light to add a three-dimensional feel to the scene. I was also able to successfully design some novel objects, including the posts (consisting of slanted cylinders and spheres), the ropes (created through the application of a sinusoidal curve on a quad strip), and some benches by combining fundamental OpenGL shapes. The room is also navigable through the use of the keyboard and other keys, to maximize the viewer experience. Of course, there are several areas that I would wish to improve upon. First, the navigational approach I employed is limited in that it is based on a central point of rotation. This still allows for translations and rotations to all parts of the room. The process of getting to that part of the room, however, may not follow entirely normal human conventions (e.g. backtracking is often helpful for navigating to a desired location). In addition, I would have liked to work on some more complex framing techniques to really offset the works from their surroundings and provide them with more depth. Finally, I wished to implement an alarm routine that caused red lights to flash when the user crosses the rope boundaries. I ran into complications however, such that the only option that exists for this is for the user to toggle the red lights him/her self with the use of keyboard functions. Of course, visual action speaks louder than words, so please take some time to experience the project for yourself. The following is a summary of the commands: * Executable Name: FinalProject.exe (This loads a virtual museum room) The following keyboard commands are available to (possibly) enhance the experience: * Press the following keys to control view position: > Press LEFT arrow key to rotate the viewpoint left > Press RIGHT arrow key to rotate the viewpoint right > Press UP arrow key to move forward > Press DOWN arrow key to move backward > Press "u" key to look up > Press "d" key to look down > Press "f" key to make step size bigger (if moving too slowly) > Press "s" key to make step size smaller (if moving too fast). * Lights: > Press “1” key to toggle light source 1 (a red light source that ideal for museum off-hours to avoid overexposing the paintings) > Press “2” to toggle the primary white light source (Note: deselecting lights 1 and 2 will result in low-level ambient light). * Press ESCAPE to exit. Have fun! -Coram Bryant (CSE167)