The purpose of this project is to have you explore how you
can use VR or AR in
your own research.
Proposal phase - by 2/28 you should create a web page that describes the
project that you want to do, along with any reference material that
would help convince me that this is a good project. Tell me why VR will
be beneficial here and what you expect to gain. Tell me which platform
or platforms you want to develop your application for. You should then
email the location of that web page to andy. I will then make links to
all those projects available on the class web pages so everyone can see
what everyone else is doing. Once andy approves of your project you move
onto the implementation phase.
There is a default project if you can't think of one of your
own: Wheel in the Sky.
Over a decade ago we worked with the Adler Planetarium on a
visualization of the constellations, but one that allowed the user to
move away from the earth and see how the constellations involved stars
at very different distances from us, and keep flying even further away
through the stars of the Milky Way.
The default project is a rewrite and enhancement of this
idea to include not only the 88 official IAU constellations from 1930
but also those of other cultures.
It has
120,000 star systems with X, Y, Z locations (so you dont need to convert
from RA and Dec), the Hipparcos ID (for linking to other star lists),
the spectrum (for color) and the magnitude (for size and brightness).
has a
section on sky cultures and the constellationship.fab files in these
directories give pairs of stars that should be linked in various
constellations.
You
should start the user off looking at our home star at about waist level.
Galactic north should be up. By default a parsec should equal about a
foot. You should be able to look around and see all of the stars at
their proper distances, and see the 88 IAU constellations. The user
should be able to use a button on the controller to turn the current
constellations on and off. The user should be able to bring up a menu of
at least 5 other sets of constellations to choose from and have those
displayed instead.
The
user should be able to fly in any direction, and rotate (roll, pitch,
and yaw) in any direction using one of the hand controllers. There
should be a button or menu item that resets the location and orientation
back to the starting point. The virtual world should tell the user how
far they are away from Earth and it what direction it lies.
Everything
should be very smooth and look very classy.
There
should be an appropriate music file playing on loop in the background.
The user should be able to easily swap out that file for another of
their choice.
The
user should be able to bring up data on the number of planets in each of
the nearby solar systems.
Any
lines and text should look very nice, and very likely you will want to
use a shader for the stars to make them look like stars.
It
would be good to add in the larger star datasets such as tycho2 with 2
million stars, or even gaia with over 1 billion stars to allow the user
to travel even further.
Note
that unlike the first project this one will be done more in C# code,
reading in data files and creating the geometry at startup.
The
requirements above are for the one-person version of the project. For a
group of two the project should probably add the following:
some way to zoom out to
show where you are in the galaxy (which may be more of an image than
xyz stars)
show many more than 5 of
the different constellation sets
need to load in the more
current larger star datasets like gaia, and most likely page in sets
of stars based on location and distance
add in data on planets of
other star systems beyond the nearby ones
need to use shaders to
make the stars look nice
ability to turn on/off the
exoplanet information
about information panel
To turn in
your project you should set up a web page with several pages describing
your work, including the well-commented source code and required files
to be able to compile and run your program, and some photographs and
screen captures showing what your application looks like when its
running. You should then email andy with the location of this website
before the deadline. It would probably be a good idea to put a
backup copy of the web page at a second website just in case I can't get
to the first one.
These web pages should include:
1 page on how to use your
application and the things you can do with it.
1 page on the data you used
including where you got it, what you did to it.
1 page with links to the
source code and any instructions necessary to install and run it.
1 page on what interesting
things you found developing and using your application.
1 page on why you chose the
VR platform that you chose and how you tuned your application for that
platform. What changes do you need to make in your app for each
platform for the app to work better on that platform?
all of which should have plenty of screenshots or
photographs with meaningful captions.
Be sure to document any external libraries or tools that you make use of
- give credit where credit is due.
You should also create a 2-3 minute YouTube video in the
CAVE or using screen
capture showing your application running and feature the video
prominently on your project web page. The video should be narrated and
rehearsed to show off the important features of your project.
Remember that this website may be useful to you later on
when you are looking for a job and want to show off the projects you
have done.
When you send andy the location
of your webpage you should also email a scaled down version of your
favorite photo that is 1920 pixels wide by 1080 pixels tall in jpg format
named p3.<your_last_name>.jpg. This image will be used on the class
web pages along with the link to your project web page.
Each student will also give a short demonstration
about your project in-class and answer some questions about your work.
Be sure to practice your presentation so you finish within the allotted
time so everyone has equal time to present.