CS 491 - project 2 -- Here Comes the Sun


Project Description

For the second project of the AR/VR class, we were asked to build a viewable solar system with the tool Unity3D. For this project, we were tasked to create a visual representation of different solar systems from data that we collected from a variety of given resources given to us by Professor Andy Johnson.

The navigation is through the VR controllers. The navigation includes being able to walk around in the space as well as being able to move the camera with the controls. Currently, no teleportation is in place because of the limiation of an unbounded area of which is displaying all of the planets and their paths. If we created a 'box' where the users have to stay in, then having teleportation would have worked, but because the size and space required to show all the planets and their orbits, it would not be a very effective system on allowing the user to teleport because of an infinite depth into space.

To fly around, you use the LEFT joystick and point it in the direction you want to go. We did that because that's just a part of the default controls. To trigger menu items or the paging event, you first point the RIGHT controller to the general area and then you hold down the trackpad. When you release, that is what get's clicked.

Some features that the project includes is that we created a menu system where you can adjust various details about the view you're looking at. When first loaded in, you are brought to a view where the system is in a three-dimensional view. We chose this to be the default view because it is more visually appealing to be a part of the system than to just look at it from the side view. But to show the side view, we have a two-dimensional view that allows the system to be viewed from a sideways perspective. So, if the user is just trying to view the system from a whole, it would be fast to understand the distances between the sun and the planets from a two-dimensional view than from a three-dimensional view. We also allow the user to be able to scale the system. We did this because it allows a user to get a more broad view of the system as well as a more close-up view of the system. Having the user choose which way they want to view the system allows for a better learning experience. We also allow users to change

We also allow the user to be able to scale the system. We did this because it allows a user to get a more broad view of the system as well as a more close-up view of the system. Having the user choose which way they want to view the system allows for a better learning experience. We also allow users to change the speed of the systems as well. This was to also allow for a better learning experience. Being able to see a full rotation of a planet's revolution around the sun in respect to other planet's revolutions around the same sun shows how slow, or fast, a planet is moving is not only cool to see, but it allows a user to undertand different gravitational pulls between different suns and different planets.

All of the adjustable features are in a menu that the user can pull up from the controllers that are included with VR sets and that allows for a versatility of users from the plethora of different VR systems out there.

We also allow the user to page through a set of systems and take a look at different systems. This way, the user can view all the different systems in a nice manner. Before we did this, we had all of the systems show in one giant column going down. It was a miserable sight to see. But after paging, the user can see 10 different systems at a time and then just page through the different systems that we have available. And another thing on top of that, is in the two- dimensional view, the user can see different habitable planets and the habitable area. We also show the users their relative distance away from the sun in two-dimensional view and we have a visual representation of when a planet is too far out of range of the two-dimensional view.

Unique Finds

This project had a few unique finds, or intersting things. In terms of planetary information, many planetary systems had only one star and one planet. It is unique to us because one would thing that many stars would have graviational pulls that would attract different meteors create an orbit from the meteor. As seen by many different applications on the web, there are frequent meteor showers in different parts of the world that are visible to us people through telescopes and sometimes just by staring up at night. We, as people, do not see every different meteor traveling through space, but one can assume that there are more than we can see. With that, we did see data on some systems with a ton of planets as well.

The systems with many different planets also had a nice range of 'livable' conditions for us humans. This also peaked our interest as we found a lot of planets, in different systems, that could potentially house us when Earth becomes overpopulated. That is, if we ever find a way to do light speed travel or even long distance travel across millions of miles of open space. But I digress, seeing many systems with habitable planets is intersting. What classifies a planet as habitable versus not habitable? Do we have the technology to determine if a planet is even in a condition that we can cleary state as habitable or not? Whatever the case may be, space companies were able to clasify more planets as hibitable than I had originally thought.

Source Code and Assets

Data from Exoplanet Archive -- Our team didn't use any assets outside of the ones that our professor, Andy Johnson, had provided to us from his templates. In terms of actual data though, we got all of our data from the link. We used this site, aside from the others because the data seemed to compliment how we wanted to implement the data into this project. The Exoplanet Archive had given us all the information that we needed as well as more than 600 different systems! We had over 2200 different systems from that website. Many of them, as stated in the 'Unique Finds' section, had systems with one star and one planet.

Audio for the Suns -- In terms of another feature we had, we added in a sound for the suns. Each sun, within the system, has their own sound effect given from the link in the beginning. We did this so that when a user is flying around, they would be able to know if they are virtually close to the sun or not. Having another sense of position via audio allows for an easier time to use the application as well as an easier time to understand solar system's positioning.

Resources/Extra Info

Find our code here: executable

Find our code here: Code

Here's our video to show what we have done: Video Demo

Pictures from the Project