Project 1 focuses on the
creation of a simple immersive environment to give everyone some
experience with the software toolkits. This project will be done
individually.
One of the most common 'hello world' VR applications is the VR
museum. While this is typically not a particularly good use of
VR in the real world, it does provide a nice testbed to try to
create your first world. So, your task is to create a small VR
museum. This museum should have one or more rooms with 'artwork'
on the walls and 'sculptures' in the middle of the room(s) that
you can walk around. This museum could be old tech, current tech
or future tech in terms of what the displays look like and how
they function. That is, maybe its a typical 'low tech' museum
with paintings hanging on the walls and sculptures sitting on
pedestals and guides walking around. Or maybe it has holographic
generators and android guides. The architecture itself does not
have to be physically constructable. It could have 'active'
sculpture like fountains or mobiles.
You should have some way for the patrons to get information
about the exhibits. Since text is rather hard to read in VR,
this is a good place to make use of audio. You could have areas
that describe the piece when the user gets close, or you could
have people as museum dosuns who explain the piece when the user
gets close.
The Museum could be layed out in normal human scale, or perhaps
the items are much larger or smaller than human scale. Perhaps
the person is walking through the space or maybe its an
underwater museum. Interesting lighting is something you can
play with. Maybe the rooms have very detailed lighting that you
burn as textures onto the surfaces. Maybe the rooms are
completely black and you have a flashlight. Make sure people can
easily and sucessfully navigate through the space.
What are the exhibits? That's up to you. Preferably there should
be a theme linking all the exhibits, but it could just as easily
be sugar coated breakfast cereals as Impressionism. It should be
something where VR is at least helpful to understand the
sculptures. You can use models you find on the web (as long as
they are properly cited) but you will get more credit for
creating your own rooms and models. Creativity and imagination
are very good things ... but you may want to run your incredibly
creative and imaginative idea past Andy before you progress too
far just to make sure its a good creative and imaginative idea.
To get a passing grade you need to create one low-detail square
room with artwork on the 4 walls and a static sculpture in the
middle that you can walk around with stereo visuals and head
tracking will get you a D. More rooms or more detailed rooms or
better looking rooms, or more interesting artwork will improve
your grade to a C. More connected rooms are better than one, but
each room should be unique - not just more of the same. It is
definitely possible to get an A with only a single well
developed room. In order to get a B you will need to have
interaction - allowing the user to do more than walk around the
space(s) ... the user should be able to dynamically interact
with the pieces of artwork, or move the artwork around, or
improve/destroy the artwork. Getting an A requires the
creativity and imagination discussed earlier.
There are a bunch of different possible langauges to use to
create this project. Last year the two most popular were Blitz3D
(http://www.blitzbasic.com/) and YG
(http://www.evl.uic.edu/yg/). This year another good possibility
is Electro (http://www.evl.uic.edu/rlk/electro/electro.html).
You can also use OpenGL or Java 3D or VR Juggler or Coin3D or
Open SceneGraph etc if you want, as long as you clear it first
with Andy. The resulting application must be interactive, have
stereo visuals, and do position/orientation tracking (head,
object, etc). You also must be able to demostrate it in EVL, and
you can bring your own hardware along if you wish (HMDs, gloves,
different trackers) to do so, or use our sgi-based CAVE or our
linux/windows-based C-Wall. Each languages has advantages and
disadvantages depending on what you want to do. Blitz3D is good
for making realistic looking scenes and is windows specific; YG
is good at user interaction and is better on linux than windows.
Electro is good for dealing with high-resolution tile displays
and runs on multiple platforms.
Project 2
Project 2 focuses on the creation of a immersive environment as
a historical or pre-historical reconstruction. That is you could
do a reconstruction of a historical site where human beings once
lived, or an exhibit on pre-historic creatures such as
dinosaurs, or an exhibit about the conditions on the early
Earth. The historical reconstruction should also at least be 30
years old, and preferably a lot older than that.
Your
exhibit
should be historically accurate, based on current generally
accepted scientific and historical records, and you should be
able to cite scientific or historical references for your work.
As a caveat, you could also create an exhibit on previous
scientific theories that have been proven wrong, since those
previous incorrect theories are still historical.
This project can either be done as individuals or in groups of
two or three. Groups of two or three are responsible for CLEARLY
delineating each persons role in the project. Groups of n people
are expected to do n times as much work as a group of one.
You have the same development langauge choices for this project
as in project 1. If you are motivated you can also work in
OpenGL, Coin3D, VR Juggler, Open SceneGraph, java3D, etc if you
want, as long as you clear it first with Andy. The resulting
application must be interactive, have stereo visuals, and do
position/orientation tracking (head, object, etc). You also must
be able to demostrate it in EVL on one of the C-walls or in the
CAVE, or on the varrier, and you can bring your own hardware
along if you wish (HMDs, gloves, different trackers) if you
prefer to use that hardware.
The
environment
should be educational - that is, the user should learn something
from the experience, and the experience itslef should obviously
benefit from being experienced in VR. The environment should be
designed to fit within a museum setting and give the user(s) a
15 minute experience. It should be highly interactive.
You can assume that the museum will have someone standing by the
display to help people with the equipment, but you should
provide an easy way to reset the application from the beginning.
The environment could be multi-user with different patrons at
different displays sharing the same space, or having different
roles in the same space. You may also want to consider linking
in other devices such as a pocket PC for displaying other visual
or audio information. You can assume that the museum will have
someone standing by the display to help people with the
equipment, but you should provide an easy way to reset the
application from the beginning.
You
should
describe how the VR display or displays fit into the museum
setting. That is, what does the overall room look like? Are
there other physical displays of artifacts, or videos playing
that share space with the VR display? How are you going to
control the lighting and the sound? Remember that you need to
think about the flow of people through the exhibit. If you
haven't been to a museum in a while then your group may want to
take a visit to the Museum of Natural History or the Museum of
Science and Industry and get a sense of how these kinds of
spaces are layed out. Most museums in the Chicago area have
student discounts, and one free day per month.
The work you did on project 1 should be a guide on how NOT to do
project 2. The goal here is not to recreate a museum, but to
create a VR exhibit that would fit within a museum setting.