A later version of Firestorm VR Mod 6.3.9 is available. See this blog post.
On 28-Nov-2019 Peter Kappler provided an update to his Firestorm VR Mod Viewer at https://gsgrid.de/firestorm-vr-mod/ – go there to download the latest version and for usage information, source, advice on trouble shooting, etc.
Unzip the release file, install the version of Firestorm VR Mod provided. It is, by default, installed in its own directory and can sit alongside the standard Firestorm release. Then copy the provided openvr_api.dll file into the Firestorm VR Mod directory, at the same level as the .exe. You can then start the viewer and follow the on screen instructions. Usage information below.
The version of the Firestorm viewer on which the latest Firestorm VR Mod 220.127.116.11049 is based supports Bakes on Mesh [BoM] in both Second Life and OpenSim. Most of the time this will work fine, but if you use extended BoM features (e.g. Universal wearables) please don’t use this viewer to log directly into an OpenSim grid/region known to run on older 0.8.* server code (not updated for over 4 years!). Protective code to avoid the activation of extended BoM features for older OpenSim grids is planned to be included in a future Firestorm release.
Instructions are available via prompts in the viewer or via information on https://gsgrid.de/firestorm-vr-mod/. In short…
- Press CTRL+TAB to load or unload the SteamVR driver. Do this each time you want to enter VR mode after starting up.
- Press TAB key to enable and disable VR mode.
- Press F5 to open the settings menu, you should see a text menu in the middle of the screen. The settings menu works only when VR mode is enabled.
- Press F6 to increase the selected value. Press F7 to decrease the selected value.
- Press F5 again to switch to the next menu entry.
- By pressing F5 on the last menu entry the menu will close and save the settings in a config file which is located in
and can be edited directly. Pressing TAB reloads the config file.
- Hold F3 to see some debug info.
- Press F4 to disable and enable HMD’s direction changes. It is better to disable the HMD’s direction interface when editing and flying with the camera. This may be subject to change in future versions.
- Moving the mouse to the corners or the sides will shift the screen to this direction so menus can be accessed.
- In the camera floater two buttons has been added to offset the HMD’s base rotation.
In case you encounter issues with a black HMD display… Peter suggests the following:
- Create a program-specific profile for the viewer in your graphic card settings and enable FXAA.
- Second life only supports FXAA. Other types of Anti-aliasing can be disabled.
Advice on Frame Rate
You do need to ensure you have a good frame rate to have a comfortable VR experience. The Firestorm VR Mod Viewer will not work well if the Second Life/OpenSim region you visit cannot normally be displayed in 2D with a decent frame rate. In VR mode you can assume you will get roughly 50% of the frame rate that shows on the 2D normal screen. At low frame rates bad flickering will occur in VR mode. My suggestion is to look at the frame rate (in Firestorm it is displayed in the upper right hand corner of the viewer) and to adjust the graphics settings (especially draw distance, shadows and quality sliders) until you have around 100fps (and definitely more than 50fps) and then try VR.
Peter Kappler also suggested: Particles… a fireplace is going to eat 20 to 30 fps! So turn them off for VR.
In some situations the rendering of Linden Water, the water surface and its effects, can significantly reduce frame rates. In an environment that makes sense, such as a meeting room, disabling Linden Water can boost frame rates. Do that via Advanced (Ctrl+Alt+D) – Rendering Tyles – Water (or keyboard shortcut Ctrl+Shift+Alt+7).
Tips from David Rowe for using the CtrlAltStudio VR Viewer may also be relevant:
- To improve your frame rate, reduce your draw distance and/or tweak other display settings such as advanced lighting model, shadows, FOV, pixel density, etc.
- Make sure you don’t have Preferences > Graphics > Rendering > Limit Framerate enabled.
- To display avatar chat above avatars use Preferences > Chat > Visuals > Show chat in bubbles above avatars.
- With floating text you may want to adjust the distance the floating text fades at so that distant text is not so annoying in VR mode: Preferences > User Interface > 3D World > Floating text fade distance.
If you have issues with some of the Function keys (F5 or other Firestorm VR Mod keys) not working… look to see if the F keys involved are mapped to active “Gestures”. You can find a list of the gestures you currently have active and the keys associated with them using the “Gestures” toolbar button… or the Comm -> Gestures menu item (Ctrl+G shortcut)
Notes on Usage
Peter Kappler suggested the following process to establish suitable settings for your HMD:
- Set IPD to 0 (zero)
- Then adjust Texture Shift until image is sharp and focused
- Then adjust IPD which separates your cameras to left and right to get a good 3D effect
On my Oculus Rift DK2, I found that I needed to adjust the IPD setting to my usual setting (68mm), but otherwise the default VR settings (with Texture Shift of 0) all worked fine. On my Oculus Rift CV1 Texture Shift of +25 was needed to bring the images into alignment.
|Oculus Rift DK2||0||Ai Austin|
|Oculus Rift CV1||+25||Ai Austin|
An Xbox One controller as used with the Oculus Rift (or an Xbox 360 controller) can be enabled, as usual, in Firestorm via Preferences -> Move & View -> Movement -> Joystick Configuration -> Enable Joystick.
You will probably find the controls are under or over sensitive, or some buttons and triggers don’t do what you expect. See this blog post and the image here (click for a larger version) for some suggestions as to how to amend the settings…
You might want to enter “-1” rather than axis “5” as an indication that axis is not mapped. With the setup suggested the “A” button toggles between the normal avatar view and “FlyCam” mode allowing you to move the camera separately to the avatar.
As with all versions of Firestorm, the viewer supports other forms of “joystick”. One I find particularly useful is the 3Dconnexion SpaceNavigator (aka SpaceMouse) which is a “3D mouse” supporting both avatar motion and separate “FlyCam” camera control.
My recommendation is to install the SpaceNavigator just by plugging it into Windows and receiving default Windows drivers for the device. I do not install any special SpaceNavigator drivers as suggested on the Second Life Wiki, some of which are incompatible with Second Life viewers.
Firestorm VR Mod Source
This version of Firestorm VR Mod 18.104.22.168049 is based on the Firestorm source code at Commit 58049 (Fri, 20 Sep 2019 22:08:08). This is effectively the same as that used for the Second Life only Firestorm 22.214.171.124052. The version number difference is because of a revert that took place between commits 58049 and 58052.
With Firestorm VR Mod version 6.3.3, Peter has revised the way he injects VR capabilities into the Firestorm Viewer to make the mod easier to maintain in future and for others to repeat or adapt. The source is available from his web page at https://gsgrid.de/firestorm-vr-mod/.
Impressively, the source is written in a way that it requires only some editing in the llviewerdisplay.cpp and adding 2 files to the project. All changes are marked with #####P373R##### comments. Peter also included the openvr header and lib files you will need in the rar. For information about the rest of the files you will need, read how to compile Firestorm at https://wiki.firestormviewer.org/fs_compiling_firestorm.
Firestorm source is available at https://vcs.firestormviewer.org/phoenix-firestorm [previously at https://hg.firestormviewer.org/phoenix-firestorm-lgpl/].
VRLand – Test Area
VRLand on OSGrid is a metrics area for performance testing and to establish virtual field of view in your headset.