Lesson 3 - Platforms and Paradigms Flashcards
3DOF 6DOF
xyz: 3DOF rotations; 6DOF rotations + movements
IMU
3DOF magnetometer, accelerometer, gyroscope = gravity, earth’s magnetic field
6DOF oculus rift
uses constellation
constellation
camera captures light positions of oculus hardware
vive
lighthouse
lighthouse
light sweeps across headset. sensors on headset can then determine position; how fast sweeps with known orientation.
Mobile vs Desktop
IMU vs optical + IMU, untethered vs tethered, less vs. more power.
game engine
software platform that makes easier to develop games 1. 3d render 2. physics 3. sound 4. scripting 5. animation 6. assets ...
In this lesson, we learned…
What is DoF?
DoF stands for degrees of freedom and deals with how accurately the VR system can track you.
What is the difference between 3DoF and 6DoF?
3DoF tracking will track how the headset is rotated, so it will know where we’re looking. Most mobile VR platforms use 3DoF tracking. A 6DoF headset will track rotation PLUS position. It will know where we’re looking and where we are in the world. This is how high end VR systems, like the HTC Vive and Oculus Rift, allow you to move around the room.
How does 3DoF tracking track our rotation?
Inertial Measurement Units (IMUs) are used to track the rotation. IMUs use a gyroscope, accelerometer and a magnetometer to detect rotations. All modern 3DoF tracking uses an IMU.
How does 6DoF tracking work?
There are many different ways to accomplish 6DoF tracking.
The Oculus Rift uses a large number of LEDs and external cameras that build a model and then it tries to fit a 3D model of the headset with the 2D model it sees of the camera. Then it uses information from an internal IMU to calculate head position.
The HTC Vive uses infrared lasers to measure the time it takes to sweep vertically and horizontally across a photo sensor. It uses the data it gets and an internal IMU to determine where your head and hands are located.
What are the key differences between mobile and desktop VR?
Mobile VR uses IMU tracking, so it only has 3DoF tracking. It can only track your head’s rotation - not it’s position. It’s also “untethered”, meaning that there’s no wires connecting your headset to a computer. You can use it anywhere. It has less powerful graphics and is powered by a battery.
Desktop VR uses 6DoF tracking and is typically tethered. It’s plugged into a computer and uses the computer to do the graphics work and to get its power. The graphics are generally more impressive. Most desktop VR headsets also come with hand controllers that allow for more interactivity and a more immersive experience.
How can we develop for VR?
Generally, developing for VR requires writing some code, using an editor, or a combination of both. We’ll be doing both over the course of this program.
For our editor, we’ll be using Unity, a popular game engine. A game engine is a software development framework that makes it easier to develop games. Game engines typically provide 3D rendering, physics, sound, scripting, animation, asset management, and more. This will enable us to develop quickly and learn.
Other popular game engines are: Unreal Engine, Cryengine, Lumberyard and more.
You can also use native development tools like OpenGL and Microsoft DirectX. These options offer more flexibility, but typically have much longer development times and writing more code.
WebVR is also an option. However, it’s not yet good enough for production apps.