Finally, the World Cup has started. I am so happy, but also a bit sad. Because of the time difference, it is difficult for me to watch the matches, especially during my working hours, but that’s fine, I can follow the score from time to time and watch highlights.
Apart from World Cup, I have worked on my project and discovered so much about the capabilities of Unity, which allows me to do projects on VR.
Day1
I attended the DSSF workshop about building webpages with HTML & CSS, GitHub, WordPress in the library. It was a very interesting course and I have learned very important basic components in HTML and CSS. Also, I was able to create my first public website under school domain. It is a very simple website though, you can find it here.
Day1- 3
Before Day3 I was studying for the FAA Remote Pilot Test with Alyssa and on Day3 we went together with Dr.Remy to take the test. Fortunately, we have passed the exams and we get the certificate of remote pilot for Small Unmanned Aircraft System, usually called drones. So now I can legally and responsibly fly the drone and implement the drone into my own project, which can be very helpful in creating 3d models using photogrammetry.
Day4
On Day4, I focused on embedding the 360 videos to VR environment in Unity. Actually, it is a bit funny how the 360 video is projected in Unity. We have to use a sphere to put the 360 video on the surface of the sphere, but then we have to “reverse” the film and put the film not on the outer surface of the sphere but inner surface. Then, we can watch the film from inside the sphere and look around to watch the film like a 360 video. I also used teleporting, so that there is a way for an user to teleport into the film, when she/he wants to, and there is also a way out, after getting bored with the film.
Math fact: In order to reverse the film to play inside of the sphere rather than outside, we have to reverse the normals of the vectors that are projecting the film on the surface of the sphere.
Day5
Apart from video, what makes VR experience more “realistic” is audio (more human senses are “fooled”). I played with audio by adding some sound effects to objects once triggered or to object collisions, when at least two objects are interacting with each other. Moreover, Unity gives the possibility of using 3D audio by implementing the Doppler effect, which makes the sound have higher frequency when closer to the user. Furthermore, I even tried to add some sound when the user is walking to make it even more real.
Next week I will try to build the scene and start filming some videos to add to my project.
With the beginning stages of my project underway, I have found that Unity3D as well as utilizing HTC Vive with Steam VR is much more difficult than it seems at first glance 😉 Nevertheless, I am very excited to work for the first time in my life with Virtual Reality and be able to build my own projects for it.
Day1
On my first day I met my DTSF team and went to the Library to meet other fellows from DSSF. It was very friendly to get to know other people and their projects. Later, I was planning my timeline for my whole project for 8 weeks ahead. I found out that it’s not easy to plan so far ahead. However, it is important to plan so that you are more confident of what you are doing and reduce the risk of running out of time (or on the other hand if you finish before time, you know what you can do more). I also downloaded the Unity program to get to know the program interface. It is possible to download the program for free for personal use here.
Day2
I started the tutorials to make a simple 3D game on Unity, Roll-a-ball, which showed me so many possibilities of Unity and that there still so much more to discover. The tutorial was quite straightforward and anyone who is interested can do it. I learned to build the simple plane with some cubes and spheres in Unity and could add some physics to the objects. Therefore, the objects will behave more realistic and so the game will be authentic. Even though the game was simple, I was so excited that I could build that game and even tried to test it with the HTC Vive headsets.
The rest of the week
For the rest of the week, I tried to get to know the Unity more from the VR perspective. I read many articles and youtube tutorials to find more about VR and Unity program. I learned how to integrate the camera in the headset with the camera in the Unity program. In fact, SteamVR plugin, which we can get for free in the Unity asset store, is very helpful for that mission. It allows me to connect with the VIVE camera rig and the controllers.
I learned a lot about movements and interactions in VR. I made two models of gun simulations, where you could shoot with a gun, using a trigger button. It also had a bullet that shot out of the gun with the sound effect. The simulation was simple but looked quite real to me. Moreover, I tried some interactions with some objects, e.g. grabbing the cube, throwing it, catching, opening the door, etc. I also focused on movement in VR, e.g. you can walk in VR, by simulating the hand movements, you could use the buttons to move, or you can also teleport, which is very helpful in movements in bigger areas. It is also important to learn the C# language, which is the main language for writing Unity scripts. Fortunately, there are many tutorials showing and teaching C# scripting in Unity. Also, there is a very important toolkit, called VRTK, which has many necessary scripts for SteamVR, so I don’t have to write scripts all over again.
As you can see, the Unity above looks different on 2 screens. I used different versions of Unity on different computers and I encountered problems when I tried to import a game from one Unity to another, so now I know that it is better to work on 1 computer only, or use same versions on both computers.
I am looking forward to my project. I will start building more developed environment in the Unity and I hope this will bring me closer to my final goal.
Below is my timeline with end goals for each week, I hope I can at least fulfill them.
Timeline development with milestones:
Week1:
Goals:
I want to start creating environment with assets and material in Unity, eg. Creating a room.
I want to implement it with VR and use with VR headsets.
End Goal for week 1:
I will be able to build simple scenes in Unity.
Week2:
Goals:
I will start building one of the general green area of the Gettysburg and adding hotspots where I can later add 360 video to certain hotspots.
I want to pass drone exam that might be helpful later for me for photogrammetry.
I will find places where I have to take pictures and videos next week.
End Goal for week 2:
I will start building more developed environment and prepare for the next week shooting.
Week3:
Goals:
I will drive to areas to shoot the 360 videos of the Battlefield. I will make photos.
If I will have drone license, I will use droning photos to create the 3D models of statues and monuments in the Battlefield
I will use photogrammetry to create 3D models.
I will try to add videos to my VR environment.
End Goal for week 3:
I will have the initial environment in Unity with videos (and if have drone license, then 3D models)
Week4:
Goals:
I will improve the VR scene and user interaction with 360 videos.
I will add user movement to the scene and boundaries.
Add some mountainous area.
End Goal for week4:
The VR environment will be more interactive for the user.
Week5:
Goals:
I will add more Battlefield areas to the VR scene.
I will make more 360 videos regarding the new area.
End Goal for week5:
I will add more Gettysburg Battlefield places to the environment.
Week6:
Goals:
I will add some physics to the scene by adding some pickable leaves.
I will make the movements more interactive (teleporting), hints (the path) for users where they can go.
I will add specific spots where user can read information to specific things.
End Goal for week6:
I will make the VR environment more interactive for the user to boost the VR experience.
Week7:
Goals:
Hamilton Project
Week8:
Goals:
I will add some final embellishments, such as sound, shades.
I will find any errors and fix them.
Finalizing the project.
I will improve my speaking skills in order to present my project to the public.