Cymatic Bruce Plays Doom 3 with the Oculus Rift

Cymatic Bruce joins us again for another Rift gaming session, this time it’s Doom 3 BFG! Inside you’ll find the game in action, how to set up Doom 3 BFG for the Oculus Rift, and recommendations for an optimal playing experience.

The Back Story

The first time many of us heard about the Oculus Rift was through the bold words of John Carmack at E3 last year: “I believe I have the best VR demo ever made.” That early Rift prototype, held together with duct tape and hope, was impressing people left and right with a modified version of Doom 3 BFG. Excited backers were elated to learn that Doom 3 BFG was promised as a pack-in when the Oculus Rift Kickstarter launched.

As with many hardware Kickstarter projects, things did not go according to the original plan. The 5-inch screen was replaced by a 7-inch due to supply issues. A new (and super awesome) Oculus-made sensor unit was created. The SDK and engine integrations became more robust. With all these technical changes, the old Doom 3 code became invalid. Soon after, the announcement was made that Doom 3 BFG would not be available on release; Oculus had some consolation offers for backers.

For those that dreamed of playing Doom up close and personal, have no fear! The Doom 3 BFG source code was released, and the VR dev community tackled the challenge of integrating Rift support. I decided to give this a shot in my latest video. Here is my experience!

How to Play Doom 3 BFG on the Oculus Rift

Big shout out to MTBS member 2EyeGuy for doing a huge amount of legwork to get this running!

First, I browsed the thread on MTBS here: Doom 3 BFG VR Fork.

Download the latest build posted. Currently, you can download it here: Doom3BFGTracking.zip. Be sure to check for the latest version on the thread once this article ages.

If you have not already, you will need to purchase Doom 3 BFG on steam. Although the code is open source, you still need the game assets!

Copy the build files into the folder location of Doom 3 BFG. By default, the path is C:\Program Files (x86)\Steam\steamapps\common\DOOM 3 BFG Edition. I renamed the original libfreespace.dll to libfreespaceOld.dll, because I am paranoid. Overwrite files at your own risk! You can now double click on Doom3BFGRelease.exe to get things started.

Before you start blasting demons, there are several settings you will want to dig into! First, you want to ensure that the game is running at the proper resolution. The game defaulted to 1280×720, so I forced it to 1280×800. I also changed the fps target to 120. After that, I checked out the 3D options and changed 3D view to “Side by Side Full.”

Once that is done, its time for console command action. Big props to MTBS member Jose for some incredible suggestions! Here are some commands that you want to consider entering into the console:

stereoRender_warpTargetFraction “0.8″
// This moves the center of the individual eye view-ports towards the center of the physical screen. Jose used a value of 0.86; since I am using C lens cups I made this a bit smaller. Set this so you can see as much of the screen as possible without seeing the edges.

stereoRender_convergence “0″
// When using an HMD you want your eyes to focus at infinity when looking at distant objects, to prevent strain or discomfort. Setting convergence to 0 ensures this.

stereoRender_warp 1
// This console command adds the barrel distortion to the side-by-side 3D. The stereoscopic view will never quite line up in the Rift if this is not turned on!

stereoRender_interoccularcentimeters “6.5″
// This is the virtual distance between your in-game eyes! If you know what your IPD number is (mine was 64.8mm, do the TF2 test or see your optician to find out) then put that in as a starting point. Remember to move the decimal point – Doom uses centimeters! If you don’t know your IPD, 5 or 6 is a great number to start from. Once you find a value that is close, go into the 3D options and tweak the View Offset value to a comfortable level.

g_fov 110
// This command sets your FOV. 110 worked great for me, but you may want to play around with this number after you have configured you IPD and warp target fraction.

pm_bobroll “0″
pm_bobpitch “0″
pm_bobup “0″
pm_runroll “0″
pm_runpitch “0″
pm_runbob “0″
pm_walkbob “0″
pm_crouchbob “0″
// If you want to disable head-bob, these are the commands you want. I did not use these, because I am one of those strange folks that loves the head-bob!

pm_maxviewpitch “989″
pm_minviewpitch “-989″
// These settings increase pitch range to allow upside down positions. Basically, it keeps the camera from going haywire when you look really far up or down.

pm_normalviewheight “72″
// Give the game your height in inches. It makes a difference!

g_skipvieweffects “1″
// This setting disables screen effects. According to Jose, sometimes screen effects only apply to one eye – and when that happens, it’s very uncomfortable.

g_kickTime “0″
// This should disable the head kick when enemies attack.

Impressions

Once all these settings are in and to your liking, you are ready to experience Doom 3 BFG. My experience so far has been intense. The game is not perfect: I believe the head tracking is based around the eye location instead of a head/neck model, which makes the head turning kind of strange occasionally. Videos do not play on screens because Bink Video code was not included in the open source release. Also the laser sight just clips through everything, which breaks immersion a bit. Basically nit-picky things; the overall experience was fantastic!

I am a big fan of Doom, and I have played this game multiple times before. However, playing it in the Rift was like playing it for the first time all over again! All those cheap scares suddenly gain a lot more impact in immersive stereoscopic 3D. The frantic pace and quality sound make Doom 3 BFG a quality Oculus Rift experience!

And there’s something to look forward to. John Carmack has said that Doom 4 will see full Oculus Rift integration:

One of the first things I’m going to do after the BGF edition of Doom 3 ships is move all of this code development work that I’ve done for virtual reality into the Doom 4 code base. [...] It’s part of my game plan to have [the VR code base] in for the entire rest of Doom 4 development, have it be something that goes through regular QA and is really part of the release cycle rather than something that’s tacked on as a weird extra at the very end of development.

Until the next VR experiment,

–Cymatic Bruce, http://cymaticsoftware.wordpress.com/

Comments

Leave a Reply