Skip to content

JuanOlaya/Virtual-Reality

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CARDBOARD VIRTUAL REALITY (OSVR + UNITY)

This repository is associated with the course Virtual Reality, taught in the university School of Arts and Letters (Bogotá) by Juan Olaya in the semester 2017.2.

For this course we use Unity 3D 5.6.3f1 and OSVR as VR framework. OSVR is able to run on any Android device provided of a gyroscope and accelerometer. To test if your Android device is compatible, download the Cardboard App. The following are the components required for the course.

1. VR Reticle

The VR Reticle or VR Gaze is useful to interact with GameObjects, as follows:

  • Rotate GameObjects
  • Change Color of GameObjects
  • Destroy GameObjects
  • Drag and Drop GameObjects in 2D/3D
  • Add Force to GameObjects (Normal Vector)
  • Impact Effect (Explosion Particles)

2. Moving in VR

For Virtual Reality in this course we focused in First Person Character Controller as movement for the most of the projects. This movement is able to manage with a Bluetooth Controller as is explained below. As well is possible to map the follwing movements:

  • Third Person Character Controller
  • Aircraft/Drone Controller
  • Motorcycle Controller
  • Car Controller

3. Software Patterns

OSVR, as VR framework, allows use concepts such Interactive Item and Eye Raycaster. In order, to use these concepts properly is relevant to add the VR Eye Raycaster script to only one GameObject. For instance, add it to the camera GameObject. Also, add VR Interactive Item script to each GameObject.

Assignment: Identify the software patterns that have been used by these concepts/scripts. Recommended Book: Game Programming Patterns, Nystrom (2014) - Online version

4. Class Diagram

Assignment: Elaborate a Class (Script) Diagram of the Unity project that shows: the relationship among scripts, their attributes, their methods and software patterns. Recommended Book: Object-Oriented Software Engineering: Practical Software Development Using UML and Java

5. Build and Run

Assignment: Install Android Studio in your computer, PC and Mac are supported. Then generate an Android app in Unity from your VR project. Remember that the Android device (compatible with Cardboard) must to be connected to the computer during the Build and Run in order to associate the Unity Main Camera with the device's gyroscope.

In order to enhance the performance of the App, setup the Texture Compression in the Build Settings, as is shown in the following image:

6. Interactive Experience

For the video game is relevant includ the concepts of Game Design, such as: goals, score, rules, awards, convincing mechanics and vivid interactive storytelling. In addition, it is important to enrich the video game experience with:

  • Non-Player Characters (NPC) from Mixamo
  • Waypoints (to move characters, animals or vehicles around)
  • Textures
  • Physics Simulation
  • Explosion Simulation
  • Sound Effects

7. VR Glasses/Headset and Game Input for the Remote Controller

For this course is highly recommended to obtain some budget VR Glasses and a Bluetooth Remote Control compatible with Android devices. The the VR-PARK Portable Wireless Bluetooth 3.0 Remote Controller and the cardboard VR Box are budget recomended devices.

In order to map the buttons between the bluetooth controller and the Unity app running on an Android device, please check the following information:

8. Agile Development for Video Games (Scrum)

According to the Agile methodologies of development, elaborate a Gantt chart in the online tool TeamGantt that takes into account the follwing components:

  • Game Design Document (GDD)
  • Requirements Elicitation
  • Two Scrum Sprints (2nd and 3rd term each)
  • Final delivery (5 minutes pitch)

Recommended Book: Agile Game Development with Scrum, Keith (2010)

VR Bibliography

STUDENT PROJECTS

The students designed and developed (3) Serious Games and (4) Entertainment Games using Unity and OSVR in the course Virtual Reality. This course was taught in the second semester of the year 2017. The video below shows these projects:


Developer VR Links

Check out the list of VR apps -> Social VR, Games VR, Apps VR, Exploration 360° and Augmented Reality

About

Cardboard (OSVR and Unity)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published