Project 1 focuses on the creation of a simple immersive
environment to
give everyone some experience with creating a simple virtual world
before going on to something more complicated. This
project will be done individually and will focus on interaction
within
a life-size environment.
The world you create should have an interior area (one or two
rooms)
and an outside area (at least 500 feet by 500 feet or 150 meters
by 150
meters ) The interior
and exterior areas should have objects (furniture, trees, etc.)
The
world should be life-size, 1:1 scale. The world should have a
theme,
though the theme can be up to you. The world should make use of
the
built-in physics engine, and it should make use of the built-in
sound
capabilities. The user should be able to interact with the world
beyond
walking around in it.
The stereotypical environment that meets these needs is the 'cabin
in
the woods' but that same concept could be a cave on Mars or a
sunken
ship at the bottom of a lake. It could be in the present, past, or
future. Others things (creatures) can also be moving around
(swimming,
flying, levitating, crawling, etc) within the space.
Its important to make sure people can easily navigate through the
space
(e.g. are the doorways big enough, is the furniture or trees far
enough
apart.
All
of the models that you use must be created from scratch by you;
you can not make use of models that you find on the web. However
you
can make use of public domain textures and sounds as long as you
refence where you got them from. Creating your own textures and
sounds
is better. To get a passing grade
user
can move through a life-size virtual world that contains both
interior and exterior areas as described above
use
of the physics engine
at
least 5 unique models for objects in the world
at
least 1 good use of spatialized audio
ability
to interact with 1 object in the world
To get a B
everything
needed to get a passing grade
world
is
easy to navigate
at
least 10 unique models for
objects in the world
at
least 2 good uses of spatialized audio
interesting
interaction
To get an A
everything
needed to get a B
interesting
theme
clearly
moving beyond what is given in the simple demo application
The
language that we will be using this year is Electro
(http://www.evl.uic.edu/rlk/electro/electro.html).
There are various
modelling packages out there with different advocates. Blender has
been
popular lately (http://www.blender.org/).
It has a high learning curve but there are some nice tutorials. I
like
ac3d myself. You can
use any modelling package you want to create your models as long
as it
can correctly export .obj files for electro to use.
I highly suggest trying to create some simple objects and import
them
into electro early on. There can be issues in converting between
formats so its
better to deal with those issues early in development. It is also
very
important to maintain a high frame-rate, and modellers tend to
create
models that are too complex, so its also important to get a feel
for
the appropriate level of complexity early. Test on the C-Wall
early.
The C-Wall is being run by a SUSE 10.2 PC with the following
hardware:
Two
Dual Core 2Ghz Opterons
4GB
Memory
GeForce
8800 GTX
For turning in the assignment you should create a web page
containing a
description of what you created and what interesting special
things you
did. This page should
also contain a link to a file containing your well-commented
source
code and all related models, textures, and sounds.) When you email
Andy the link to your web page you should also include a 320x240
screen
snapshot of your world to include on the course presentation web
page.
Each person will be presenting his/her virtual world to the class
at
the C-Wall for roughly 10 minutes with an additional 5-10 minutes
for
questions.