Specifications

1.7 Development Paths
This book covers several different approaches to Rift development.
Using the C APIs: If you plan to work directly with the Rift C APIs, head to part 2 and
start with chapter 2. It will introduce you to the C API and get you started writing your
first Rift integrations.
Using Java or Python: If you plan to use a language other than C, such as Java or
Python, we recommend reading through part 2 starting with chapter 2 on the using the
C APIs first and then reading chapter 11 to understand how to do the Python and Java
bindings.
Using Unity: If you plan to use the popular game engine Unity for your development,
head to part 3 and read chapters 7 and 8. It is possible to interact with the C API from
within Unity, so when you want a better understanding of the C API, you’ll find part 1
interesting reading.
No matter which development path you choose, know that you can develop for the Rift even
if you don’t yet have one yet as the Oculus SDK and Unity can be used without a headset. For
more information see the appendix on hardware setup.
1.8 Summary
In this chapter we covered
The Oculus Rift is a virtual reality head-mounted display.
Two versions of the Rift have been made available, the DK 1 and the DK 2. Only the DK
2 is currently available for purchase.
The Rift is immersive, can be used to create presence, and is inexpensive, both in terms
of supporting it in your applications, and in terms of hardware cost.
The Rift is two devices in one: a specialized input device and a specialized output device.
As an input device, the Rift uses a combination of several sensors to allow an application
to query for the current orientation and position of the user’s head so thw an application
can change its output in response to the changes in where the user is looking or where
their head is.
As an output device, the Rift is a display that creates a deep sense of immersion and
presence by attempting to more closely reproduce the sensation of looking at an
environment as if you were actually there, compared to viewing it on a monitor.
Rendering images properly for the Rift means you need to take into account the display,
how vision works with separate images for each eye, and the lenses used.
The lenses in the Rift distort the image on the screen (as all lenses do), introducing a
fisheye lens effect. That means that images shown on the screen inside the Rift must be
adjusted before they appear.
Only applications that have been specifically written to read the Rift input and to
©Manning Publications Co. We welcome reader comments about anything in the manuscript - other than typos and
other simple mistakes. These will be cleaned up during production of the book by copyeditors and proofreaders.
https://forums.manning.com/forums/oculus-rift-in-action
30