Articles


Virtual reality

Creating Virtual Reality Games: The Fundamentals by Sebastien Kuntz (i’m in VR) - May 23, 2013
Virtual Reality: Creating Immersion by Rick Dillon - August 30, 2012
Why VR is Hard (and where it might be going) by Michael Abrash - March 31, 2013
Three Fundamental Ways that Virtual Reality is Changing the Future of Game Design by James Iliff (Project Holodeck) - December 2, 2012
The Dream and the Rift by Robin Arnott (creator of Deep Sea and SoundSelf) - June 20, 2013
Lessons learned porting Team Fortress 2 to Virtual Reality by Joe Ludwig (Valve) - March 2013
What VR could, should, and almost certainly will be within two years by Michael Abrash - January 17, 2014
Grand challenges in virtual environments by Mel Slater (eventLAB) - May 27, 2014
8 Tips For Making Virtual Reality Viable by Mike Woods (Framestore) - June 20, 2014
Taking the VR plunge? Some tips from a multiplatform VR dev by Alex Wawro (nDreams) - February 9, 2015

Best practices

VR Design : Best Practices by vrboy (dSky) - July 31, 2015
Advice on making believable VR games from Sony’s Heist designer by John Foster (SCEE) - August 3, 2015 (GDC Europe 2015)
Lessons from the Frontlines: Modern VR Design Patterns by Chris Pruett (Oculus) - June 9, 2017

Tracking

Sensor Fusion: Keeping It Simple by Steve LaValle (Oculus VR) - May 22, 2013
Help! My Cockpit Is Drifting Away by Steve LaValle (Oculus VR) - December 20, 2013
Interactive course on Extended Kalman Filter and Simultaneous Localization And Mapping by Joan Solà (PhD in robotics) - April 20, 2010
Modeling the human spine for VR Avatar representation & animation by dSky VR.Engine - August 14, 2015

Latency

Exploring Input Lag Inside and Out by Derek Wilson (Senior CPU & Graphics Editor at AnandTech) - July 16, 2009
Latency – the sine qua non of AR and VR by Michael Abrash - December 29, 2012
How fast does “virtual reality” have to be to look like “actual reality”? by Kyle Orland (Senior Gaming Editor at Ars Technica) - January 3, 2013
Understand the Speed of Light of Game Input Latency by Timothy Lottes - January 2013
https://web.archive.org/web/20140719085135/http://www.altdev.co/2013/02/22/latency-mitigation-strategies/ by John Carmack - February 22, 2013
es_core: an experimental framework for low latency, high fps multiplayer games. by Timothée Besset (former id Software's Linux guy) - May 11, 2013
Modern Racing the Beam is a Great Idea by Timothy Lottes - August 28, 2013
Oculus Rift latency won't be an issue at launch, says developer at Gamespot - September 3, 2013
Measuring Input Latency at RenderingPipeline - September 26, 2013
DK2 and Latency Mitigation by Cass Everitt (Oculus VR) - July 10, 2014

Immersion

The Trouble with Immersion, or the Opening of Metro: Last Light by Adrian Chmielarz
A Sense of Scale in VR by Alexander Kondratskiy - October 6, 2013
11 Quick Oculus Rift Development Tips for Architectural Visualization by ARCH Virtual - October 7, 2013

Presence

What is Presence in Immersive Augmented Reality? by William Steptoe (University College London) - July 15, 2014

Perception

Why virtual isn’t real to your brain by Michael Abrash
Why virtual isn’t real to your brain: judder by Michael Abrash
Down the VR rabbit hole: Fixing judder by Michael Abrash - July 26, 2013
Scanning Backlight FAQ by Mark Rejhon

Resolution

When it comes to resolution, it’s all relative by Michael Abrash
Notes on the Resolution and Other Details of the Human Eye by Roger N. Clark - November 25, 2009

Head

Head over heels: Upper body movement in gameplay by Simon Unger (IO Interactive lead animator)

Stereoscopy

Good stereo vs. bad stereo by Oliver Kreylos - August 29, 2012
Some Preliminary VR Metrics by Boon Cotter - July 4, 2013
How to Measure Your IPD by Oliver Kreylos - April 9, 2014

Simulator sickness

Can your eyes make you sick?: Investigating the Relationship between the Vestibulo-ocular Reflex and Virtual Reality by Mark H. Draper (HITLab) - April 29, 1996
Are You Sick of Games? by Jeff Solomon (loonygames) - 1998
VR Sickness, The Rift, and How Game Developers Can Help by Tom Forsyth (Software Architect at Oculus VR) - July 12, 2013
Cybersickness effects : http://www.cs.wright.edu/~jgalli/cybersickness.ppt
How to make players sick in your virtual reality game at Joystiq - August 30, 2013
On Motion Sickness and the Handling of 2D UI Elements in Virtual Reality Environments by Isla Schanuel - December 12, 2013
Fighting Motion Sickness due to Explicit Viewpoint Rotation by Oliver Kreylos - April 4, 2014
Simulation Sickness and VR - What is it, and what can developers and players do to reduce it? by Ben Lewis-Evans - April 4, 2014

Prediction

The Latent Power of Prediction by Steve LaValle (Oculus VR) - July 12, 2013

Distortion

Understanding the Oculus Rift Distortion Shader : http://rifty-business.blogspot.fr/2013/08/understanding-oculus-rift-distortion.html
Reducing stretch in high-FOV games using barrel distortion : http://www.decarpentier.nl/lens-distortion

Filtering

Related to Filtering for VR by Timothy Lottes - March 28, 2014

Rendering

VR And Multi-GPU : http://www.reedbeta.com/blog/2014/04/03/vr-and-multi-gpu/ by Nathan Reed (NVIDIA) - April 3, 2014
Advanced VR Rendering by Alex Vlachos (Valve) - GDC 2015

Detection

Using basic statistical analysis to discover whether or not the Oculus Rift headset is being worn by Alex Benton (Oculus Rift in Action - August 22, 2014

Time warping

Optimizing VR Graphics with Late Latching by Atman Binstock (Oculus VR) - March 2, 2015
Asynchronous Timewarp Examined by Michael Antonov (Oculus VR) - March 3, 2015

Vection

More than a cool illusion? Functional significance of self-motion illusion (circular vection) for perspective switches Bernhard E. Riecke et al - August 10, 2015

Animation

Animating for VR sucks, and I couldn't be more excited by Dormant Games - January 18, 2016

Publications


Virtual Reality

Oculus VR Best Practices Guide by Oculus VR - January 2014 (latest version and up-to-date information)

Latency

Priority Rendering with a Virtual Reality Address Recalculation Pipeline
New method to measure end-to-end delay of virtual reality by Massimiliano Di Luca
Scene-Motion- and Latency-Perception Thresholds for Head-Mounted Displays by Jason J. Jerald - 2009

Prediction

Understanding Predictive Tracking and Motion Estimation Algorithms in Virtual Environments

Simulator sickness

Motion Sickness publications at HITLab
The Adaptive Effects Of Virtual Interfaces: Vestibulo-Ocular Reflex and Simulator Sickness by Mark Heider Draper
(HITLab) - 1998
Appropriate Use of Virtual Environments to Minimise Motion Sickness by Willem Bles & Alexander H. Wertheim - March 1, 2001
The effects of simulated fog and motion on simulator sickness in a driving simulator and the duration of after-effects by Dziuda et al. - 2013

Motion simulation

How to cheat in motion simulation – comparing the engineering and fun ride approach to motion cueing by Markus von der Heyde & Bernhard E. Riecke (Max-Planck-Institut) - December 2001

Pre-warping

Improved Pre-Warping for Wide Angle, Head Mounted Displays and Intel Claims It Can improve Image Quality for HMDs – Daniel Pohl Tells Us How by Daniel Pohl (Intel) - September 3, 2013

Reprojection

Stereoscopic 3D using Reprojection by Marries van de Hoef & Bas Zalmstra (Utrecht University) - May 5, 2011

Calibration

Automated Calibration of Display Characteristics (ACDC) for Head-Mounted Displays and Arbitrary Surfaces by J. Adam Jones (University of Southern California), Lauren Cairco Dukes (Clemson University), Mark Bolas (University of Southern California) - 2014

Interpupillary distance (IPD)

Variation and extrema of human interpupillary distance by Neil A. Dodgson (University of Cambridge Computer Laboratory) - January 19, 2004

Experiments


Ambilight

Ambilight clone for FOV extension.

Dual displays

Setting up the Rift for DualDisplay and best image quality

Third-person

VR and 3rd Person: An Unexpected World of Possibilities?
Oculus Rift Support in 3rd-Person
Mars Tank Demo - 3rd Person Test
3rd person game and Oculus Rift

V-sync

Rift and V-Sync
how to get vsync on RIFT, not monitor??? : http://www.mtbs3d.com/phpBB/viewtopic.php?f=140&t=18308
Question about VSYNC not reliably working : https://developer.oculusvr.com/forums/viewtopic.php?f=20&t=5084

Rendering

When there's no need to render twice : https://developer.oculusvr.com/forums/viewtopic.php?f=33&t=4155
on "rectilinear renderings" in game engines and what can be : http://www.mtbs3d.com/phpBB/viewtopic.php?f=140&t=15381
Bump mapping : https://developer.oculusvr.com/forums/viewtopic.php?f=32&t=8518

Down-sampling

Oculus Rift automatic down-sampling and Duplicated displays
AA vs downscaling from higher resolutions

Pre-warping

Bicubic Warp Reconstruction

Simulator sickness

Getting you VR legs at MTBS3D forums
Questions about Oculus and Motion sickness. at reddit
I tried the rift for the first time today, and I have a question... at reddit
Disturbing Nausea Association at the Oculus Developer Forums
Designing around motion sickness at the Oculus Developer Forums
Best Practice Rift Motion Sickness Guideline at the Oculus Developer Forums
Best games/demos to ease into the Rift and earn your "V-Legs" : http://www.reddit.com/r/oculus/comments/1i6pw9/best_gamesdemos_to_ease_into_the_rift_and_earn/
VR Discussions - P1 First Step in VR : http://www.reddit.com/r/oculus/comments/1i97pf/vr_discussions_p1_first_step_in_vr/
Constant dizziness for the past few days - A little concern : https://developer.oculusvr.com/forums/viewtopic.php?f=26&t=2832
The sickness... : http://www.reddit.com/r/oculus/comments/1ib4j1/the_sickness/
Question For Motion Sickness Sufferers : https://developer.oculusvr.com/forums/viewtopic.php?f=26&t=5127
First Person Locomotion UNITY

Latency

More Tools for Great VR about the Oculus Latency Tester
Building a Sensor for Low Latency VR
John-Carmack's Latency Mitigation Strategies
Measuring Responsiveness in Video Games
Oculus Rift automatic down-sampling and Duplicated displays : https://developer.oculusvr.com/forums/viewtopic.php?f=20&t=1758
Rift latency : https://developer.oculusvr.com/forums/viewtopic.php?f=20&t=1027
Perfect prediction, Rift improvement idea : https://developer.oculusvr.com/forums/viewtopic.php?f=55&t=5018
Idea - How to get fast head tracking with any frame rate : https://developer.oculusvr.com/forums/viewtopic.php?f=20&t=5307
Latency : https://developer.oculusvr.com/forums/viewtopic.php?f=26&t=1829
reducing latency : https://developer.oculusvr.com/forums/viewtopic.php?f=26&t=1880

Positional tracking

If you haven't tried positional tracking yet - do. : http://www.reddit.com/r/oculus/comments/1i60md/if_you_havent_tried_positional_tracking_yet_do/
Crystal Cove sim : http://mkeblx.net/crystal-cove-sim/83j40g6k http://www.reddit.com/r/oculus/comments/1zry9x/crystal_cove_simulator_v01_positional_tracking/
http://www.reddit.com/r/oculus/comments/1zry9x/crystal_cove_simulator_v01_positional_tracking/cfwktoq
positional tracking solution :
http://www.reddit.com/r/oculus/comments/29ufwt/i_was_browsing_lpf_as_usual_when_i_caught_this/
http://www.reddit.com/r/oculus/comments/212nci/a_little_hung_over_when_i_thought_of_this_but/

Full body tracking

Full Body Movement with Razer Hydra and Unity : http://serrarens.nl/en/full-body-movement-with-razer-hydra-and-unity/

Motion blur

Slow pixel switching time observed on Rift under 240 FPS camera at reddit
Home-made Arduino scanning LED backlight to simulate 480Hz or 960Hz in a 120Hz LCD? at 120hz.net
Zero motion blur LCD!!! (nVidia LightBoost hack, looks like CRT, looks like 480Hz) at overclock.net
Motion Blur Reduction Backlights at TFTCentral
Home-made Arduino scanning LED backlight to simulate 480Hz or 960Hz in a 120Hz LCD? at HardForum

Black screen

OculusUnityDemoScene.exe black screen : https://developer.oculusvr.com/forums/viewtopic.php?f=34&t=79

Interpupillary distance (IPD)

If you haven't measured your IPD yet, do this now! at reddit
Measure your pupil distance online using our online PD tool
Digital pupilometer Optical PD meter DPM-10 : http://www.ebay.com/itm/DIGITAL-PUPIL-METER-PUPILLARY-DISTANCE-METER-DPM-10-NEW-/261031866234
New Optical Digital PD Ruler Pupilometer Interpupillary Distance Scale NJC-12 : http://www.ebay.com/itm/New-Optical-Digital-PD-Ruler-Pupilometer-Interpupillary-Distance-Scale-NJC-12/230957094376
IPD Measuring Website : https://developer.oculusvr.com/forums/viewtopic.php?f=33&t=4223
A Simple IPD MM Tool for Group Demos : https://developer.oculusvr.com/forums/viewtopic.php?f=26&t=11125

Cleaning

Cleaning the Rift : http://www.reddit.com/r/oculus/comments/1gn2lj/cleaning_the_rift/
Dead Pixels on your Oculus Rift? A quick fix. : http://riftmod.com/dead-pixels-on-your-oculus-rift-a-quick-fix/

Cables

How are you dealing with your cables? : https://developer.oculusvr.com/forums/viewtopic.php?f=26&t=1909

Comfort

Rift need more eyebrow and cheekbones friendly design : http://www.mtbs3d.com/phpBB/viewtopic.php?f=140&t=17561
Rifted Ear: User error, or redesign opportunity? : https://developer.oculusvr.com/forums/viewtopic.php?f=26&t=2649
Please make the rift more suitable for large heads : https://developer.oculusvr.com/forums/viewtopic.php?f=34&t=2654

Wanted features

Unsexy but helpful Rift Features : http://www.reddit.com/r/oculus/comments/1gl4li/unsexy_but_helpful_rift_features/

Galvanic Vestibular Stimulation

Galvanic Vestibular Stimulation prototype device : http://www.mtbs3d.com/phpBB/viewtopic.php?f=138&t=18173
Galvanic Vestibular Stimulation : https://developer.oculusvr.com/forums/viewtopic.php?f=26&t=905
Galvanic Vestibular Stimulation : http://www.mtbs3d.com/phpBB/viewtopic.php?f=120&t=15403

Body awareness

Realistic Rhino- Rendering : http://www.reddit.com/r/oculus/comments/1jcitm/realistic_rhino_rendering/

Gamma correction

https://en.wikipedia.org/wiki/Gamma_correction
LOWER THAT GAMMA CURVE: Surprising added realism for free :) : http://www.mtbs3d.com/phpBB/viewtopic.php?f=140&t=18858

Accessibility

Accessibility in VR : https://developer.oculusvr.com/forums/viewtopic.php?f=30&t=5202

Calibration

Calibration fails in SDK 2.5 : https://developer.oculusvr.com/forums/viewtopic.php?f=34&t=4668
Calibrate your DK1 and enjoy better visual quality : http://www.reddit.com/r/oculus/comments/249jiw/calibrate_your_dk1_and_enjoy_better_visual_quality/
Calibration DK1 and HD to sRGB - very improved viewing experience! : http://www.reddit.com/r/oculus/comments/246zkw/calibration_dk1_and_hd_to_srgb_very_improved/
Do we get to know the color gamut of the display? :
https://developer.oculusvr.com/forums/viewtopic.php?f=26&t=8252

Wireless

Wireless Rift using Steam In-Home Streaming Guide : http://www.mtbs3d.com/phpBB/viewtopic.php?f=140&t=19159

Prescription lenses

Oculus Rift and prescription lenses : https://developer.oculusvr.com/forums/viewtopic.php?f=20&t=6589

Close objects

Focusing to infinity and nearby objects : https://developer.oculusvr.com/forums/viewtopic.php?f=20&t=6965

Controls

Simple experiments with gamepad controls and VR : https://developer.oculusvr.com/forums/viewtopic.php?f=37&t=7987
I found previous research on control schemes for navigation : https://developer.oculusvr.com/forums/viewtopic.php?f=32&t=8576
A different approach for 1st person controls in VR (demo) : https://developer.oculusvr.com/forums/viewtopic.php?f=32&t=14018
Third Person Platformer Controls Best Practices : http://www.reddit.com/r/oculus/comments/2gaqd3/third_person_platformer_controls_best_practices/

Chromatic aberration

Chromatic Aberration Issues Download

Gaze detection

http://tore-knabe.com/virtual-reality#CoffeeWithoutWords
http://tore-knabe.com/experiments-with-head-animation
http://www.cse.psu.edu/~rcollins/CSE597E/papers/Itti_etal03spienn.pdf
http://dl.acm.org/citation.cfm?id=566629

Locomotion

VR Locomotion: "Ludicrous Speed" : https://www.reddit.com/r/oculus/comments/3j0046/vr_locomotion_ludicrous_speed/
Introducing Limbo, a VR camera movement technique by the developers of Colosse : http://uploadvr.com/introducing-limbo-a-vr-camera-movement-technique-by-the-developers-of-colosse/
An Investigation into programming techniques to reduce simulation sickness while using the Oculus Rift : https://sites.google.com/site/yosefportfolio/home