I'm updating my post to include a guide to get TDM running with VR headsets using Vorpx. I'll leave the original post below, as it's not my intent to revise history. I think it makes sense to try to keep these discussions consolidated, but please let me know if you'd prefer I start a new topic. With the release of the 2.05, the unlocked framerate makes TDM work better with Vorpx. While the original post aimed to share what I discovered and start a discussion, I think people may find it more helpful now to have the necessary steps on display in the OP when coming across this topic.
If you're looking to play TDM with a VR headset and need assistance, please see the guide below:
Buy& install vorpx: http://www.vorpx.com/
. Vorpx is a stereo injector that allows you to play non-VR games in VR. There are other free options out there that are being worked on that may be worth keeping an eye on for the future (vireio, a re-shade branch), but as far as I know, Vorpx is the only way to get TDM working at present.
2. Open your TDM installation folder & find your Darkmod.cfg file. Back it up. I have a folder with a monitor cfg and one with a VR cfg. You can switch from one to the other just by dropping in the respective file and overwriting.
3. Open Darkmod.cfg and find the lines seta r_customHeight & seta r_customWidth to set an 8:9 aspect ratio. For example, 1280x1440, 960x1080, 1600x1800, and 1920x2160. Choose the highest your system can handle. I'm using 1600x1800, so my .cfg file has these entries:
seta r_customHeight "1800"
seta r_customWidth "1600"
Note: you may wish to try 4:3/5:4 or any other aspect ratio. Just keep in mind you'll need to tweak the fov_ratio to compensate. Which leads us to...
4. With the Darkmod.cfg still open, find seta r_fovRatio and change it to 0.9 if you're using an 8:9 resolution as indicated in step 2. It should look like this: seta r_fovRatio "0.9." If you're using a different aspect ratio, it may take some trial and error to find the right value to enter here. You'll know it's off if everything appears either "too zoomed in" or has a fisheye warping effect.
5. Save & close the Darkmod.cfg file.
6. Create an autoexec.cfg file in the same folder as your Darkmod.cfg and open it up. You can just copy the Darkmod.cfg file, rename it to autoexec.cfg and delete all of the contents.
7. In that file, add these lines:
seta com_fixedtic "1"
seta r_displayRefresh "90"
This will allow the game to go above 60fps and/or allow vorpx to set it's "Async render" to 45fps or 90fps (depending on your hardware) allowing for a smoother experience than would otherwise be possible, as far as I understand it.
8. Save & close the autoexec.cfg file.
9. (Optional) If you would like to eliminate the game's "head bob," which can help with motion sickness, you'll need to bind it to a key-press. First, create an autocommands.cfg file inside the same folder and add these lines:
seta pm_bobroll "0"
seta pm_bobpitch "0"
seta pm_bobup "0"
Unfortunately I could not get this to auto-load with this file or the autoexec file. So I bound it to F11 by opening the Darkmod.cfg file and finding bind "F11." "It should look like this:
bind "F11" "exec autocommands.cfg"
10. Save & close the autocommands.cfg file.
11. Download either grodenglaive's (Vive) or bucklebean's (Rift) vorpx cloud profile using the vorpx config app & follow the instructions to import it. Either profile may be a good starting point for either headset. It might be wise to try each & go from there.
12. Depending on your headset, you'll need to launch SteamVR or Oculus Home.
13. Lanuch vorpx
14. Launch TDM & disable post processing. Otherwise, you'll get flickering light sources. I also suggest disabling in-game AA to maintain decent FPS.
15. Vorpx translates mouse movement into head tracking. You should consider setting smooth mouse to off. You're going to want to tweak your in-game mouse sensitivity along with the vorpx head tracking sensitivity which can be found in the vorpx in-game menu.
16. Play TDM in VR - You'll probably want/need to press edge-peek (MMB default) to navigate the menu.
Some things to consider:
- Sometimes the main menu can flicker or completely disappear! Don't fear. Just press the edge peek button (MMB default) and your menu should come back.
- The skybox doesn't appear correctly in 3D. There's a console command to remove the skybox completely, but the sky will flash/flicker. I don't have a fix.
- Vorpx has a few 3D modes - G3D, Z-normal & Z-adaptive. The Z-modes DO NOT WORK. If you accidentally set one of these, you'll be greeted with blurry horizontal lines. You should be able to press your keyboard left & right arrow keys to set it back to G3D. If you can't, you're best bet is to shut down the game. You may not have saved that config, so a restart of the game might fix it. If not, you can try jumping back in and navigating the vorpx menu blind, but it's probably easier to just restore the cloud profile in the vorpx config app.
- The settings from the vorpx cloud profiles might not be to your taste. Once in-game, press the "DEL" key to open up the vorpx menu. Here you'll find several tabs where you can make numerous tweaks to personalize your experience. You may even want to create your own custom profile to share. Some of the tweaks need "advanced settings" to be enabled on the main page of the vorpx launcher.
- If you find that game objects, NPCs, doorways, etc... appear to be too large or too small, you'll want to adjust the stereo separation to taste.
- If you find the game too bright or dark, you can adjust the gamma. The in-game gamma & brightness does not work.
- You may want to adjust the sharpness setting to taste. My default profile has this all the way up.
- If you set "fluidsync" on, the game will lock to no greater than 45fps. You may find this more comfortable than a variable framerate. I prefer to have this off most of the time because the Vive, Rift, & vorpx all have built-in software solutions to help with this. I want to be clear, VR, especially with vorpx requires a lot of power to run. However, with these software solutions, framerates that drop even into the 20's or 30's are surprisingly playable. What you are willing to put up with is going to be a matter of personal preference. You can check your framerate by pressing att+f. It might be wise to take a look at the TDM wiki for information on how to improve performance. You want to maintain as high a framerate as possible for the most comfortable experience. If your framerates are just so bad & you can't handle it at all, you may want to try turning off 3D entirely in the vorpx menu. You will lose depth (obviously) but your framerate will skyrocket. It should be close to what you normally see outside of VR. While the 3D is particularly excellent for this title, even by vorpx standards, it's not everything. The performance hit is huge and it's a trade-off you may wish to consider.
- You may want to play with the letterbox & pixel 1:1 settings in the vorpx menu to assist with FOV adjustment. Use these in conjunction with the aspect ratio settings and the fov ratio settings.
- You can set how far the screen pops out for edge peek. You may find it preferable to move it closer to make readables easier. This requires the advanced settings to be enabled in the vorpx config app.
- You can play with motion controls as controller input. The controllers will be represented in the game world, but cannot interact with anything without a button press. It's interesting and may increase immersion, but I still prefer M+KB. YMMV. If you want to do this, you'll have to open the in-game vorpx menu by pressing "DEL" or the controller equivalent & remap the buttons to your liking.
Please don't hesitate to let me know if you have any questions.
Original Post below:
Apologies for the long post ahead...
I'd really like to thank everyone working on this project. You've truly created something very special here and I feel quite fortunate to have stumbled onto this a couple of years ago. When I received the DK2 last summer, one of the first things I did was attempt to get The Dark Mod working with 3rd -party injection drivers vireio perception (http://www.mtbs3d.com/new-vireio-site) and vorpx (http://www.vorpx.com/). Sadly, neither would hook because they are based on directx and TDM uses opengl. I talked to some folks working on the Doom 3 oculus implementation project and even downloaded TDM source code with the intent to try my hand at support, but quickly learned I was in WAY over my head.
Fast-forward to 10/23/15 and the latest version of vorpx has preliminary support for opengl titles. The first thing I tried was TDM and it hooked!
Huge disclaimer: the game does not have official support. There is NO 3D effect, nor is there positional tracking. Head tracking is intact, so your head movements are like mouse-look, but not the full 6-degrees of freedom (like leaning forward, backward, up, down...). Framerate is also a minor issue (see below). I want to be very clear that this is far from perfect. VR purists would probably not touch this. I am, however, quite pleased as punch. I learned a long time ago not to allow the perfect to be the enemy of the good. FWIW, in a very short time I have determined that this will be my preferred method of playing. I booted up Tears of Saint Lucia and I can't describe the feeling of looking up at the buildings. The sense of scale is spot on. And oh my god, this game is DARK on the OLED screen. The flickering torches and candles in the distance... the lighting in this game is glorious. The atmosphere is visceral. The slow, careful, stealth pacing is perfect for VR. Frantic movements are generally not good. This is the opposite.
There are some things that need consideration:
- Framerate - generally, a rock-solid 75fps is required to have a good experience on the DK2. TDM is locked to 60 (or 62/63?). I could not figure out how to unlock it again. I had done that before when I got my 144hz monitor, which I quickly learned was a mistake. The speed of the game was all out of whack. Still, I'd like to see how it operates at 75. Nevertheless, the very good news is the latest version of vorpx also incorporates asynchronous timewarp, which eliminates the stutter/judder that occurs when the framerate drops below 75. The game is smooth sailing and would not be playable without this feature.
- Resolution, FOV - because of the odd shape of the screen and the need to render 2 images, normally, when a game runs at a 16:9 aspect ratio, you need an FOV of around 120 to get it to look right. TDM used to allow you to set a custom FOV, but I cannot figure out if that's still possible. Instead (and likely for the better), you need to set a custom 8:9 resolution (I used 1280x1440) in the .ini files and set r_fovratio to about 0.85 (still playing with it, but a value somewhere between 0.85 - 0.888 should work). This gets the FOV almost perfect. See here for more info: https://www.reddit.c..._89_resolution/
- I created an autocommands file to eliminate the head bob. YMMV. For me, when in VR, head movements not controlled by the player can make me nauseous. Even on a monitor, honestly. See here: http://forums.thedar...-be-turned-off/
And that's it! Please let me know if you have any questions or suggestions. I'd be curious to see how others are getting on.
For reference, I have played the following in VR:
Deus Ex GOTY
Thief 2 + T2X
The first 3 on that list I have done complete playthroughs, including DLC. The rest to varying degrees. The stealth genre is so perfect for VR because combat can be avoided (if desired), you can usually move at your own place, exploration is rewarded, and the atmosphere in these games is among the best. I often find myself just sitting quietly listening to the patter of the rain or the crackle of a fireplace, soaking it all in.
p.s. - It's also helpful to be pretty familiar with the game mechanics because you can't see the m+kb.
Edited by BuckleBean, 03 April 2017 - 08:40 AM.