Viewer

The CtrlAltStudio Viewer is developed in order to try out and share a number of ideas, including: Oculus Rift support, stereoscopic 3D display, variable walk & fly speed, and Kinect for Windows control. It is based on the Firestorm Viewer which it tracks closely.

The viewer can be used with both OpenSim and Second Life. Windows and Mac OSX installers are provided, and if you have the know-how the source code should be readily updateable for Linux.

Current Version

1.2 Release: Oculus Rift; Stereoscopic 3D; Variable Walk & Fly Speed; Kinect for Windows

Windows installer: 1.2.0.40751 Release, 26 Mar 2014.
Mac OSX installer: 1.2.0.40755 Release, 14 Apr 2014. For Mac OSX Lion (10.7) or later.
Release notes.

Based on Firestorm 4.6.1.

Oculus Rift

This enables you to have a look around in Second Life and OpenSim with your Oculus Rift headset. Some preliminary UI capability is provided.

Use the viewer as normal to get to where you want to go, then toggle into “Riftlook” mode (“3D” toolbar button or Ctrl-Alt-3) and don your Rift headset. Move your head to look around and use the arrow or WASD keys to move about.

Setup:

  • PC configured to have the Rift display duplicate the PC display.
  • Viewer configured for Oculus Rift output — Preferences > Graphics > Display Output.
  • Viewer configured to run full screen — Preferences > Graphics > General.
    Note: You do not need to set your main display resolution to match the Rift’s 1280 x 800; instead, just use your normal display resolution and it will automatically be changed by the viewer when it starts.
  • Basic Shaders or better turned on (Advanced Lighting Model recommended) — Preferences > Graphics > General.
  • Also recommended is turning Antialiasing on (requires Advanced Lighting Model) — Preferences > Graphics > Hardware Settings.
  • Configure Rift-specific options as desired — Preferences > Graphics > Display Output.
  • A viewer restart is required after changing Display Output and Full Screen settings.
  • Use the “3D” toolbar button or Ctrl-Alt-3 to toggle in and out of Riftlook. You can also Esc out of Riftlook.

Tips:

  • You can use the Oculus Configuration Utility to measure your eye separation (a.k.a. interpupillary distance or IPD), calibrate your Rift’s sensors, and update your Rift’s firmware. [Details…]
  • With your Rift on, display the Display Output preferences page and adjust the Prediction Delta value until moving your head feels most comfortable.
  • If you have configured Oculus Rift output for seated operation, “forwards” is the direction your Rift was pointing when you toggled into Riftlook.
  • If you have configured Oculus Rift output for standing operation, “forwards” is the direction your Rift is pointing.
  • If you want to strafe instead of turn in seated operation, or turn instead of strafe if you have the “strafe” option selected, use Shift-Left and Shift-Right.
  • To increase your FPS (frames per second) in Riftlook reduce your graphics settings, e.g., halve your draw distance.
  • To display avatar toasts in the Rift — Preferences > Chat > General > Show chat in bubbles above avatars.
  • You can use keyboard shortcuts to show and hide dialog boxes such as the Conversations window (Ctrl-T), Inventory (Ctrl-I), e.g., if you want to select a landmark to teleport to, Ctrl-Shift-M to display the minimap, etc. Keyboard shortcuts are shown beside menu items.
  • You can use voice chat and toggle your microphone on/off using the middle mouse button or other key you configure in Preferences > Sound & Media > Voice Settings.
  • To get into 3rd person view, depending on your “Mouse moves cursor / view” setting, either scroll out with your mousewheel or press Alt and scroll out with your mousewheel. You can then orbit around points etc. with your mouse and Ctrl, Alt, and Shift keys as usual. Press Esc to get back into 1st person view.

Stereoscopic 3D

This uses OpenGL quad-buffered stereoscopic 3D. It works with NVIDIA GeForce and 3D Vision with driver 314.07 or later; should work with GeForce GTS250 or better. It should also work with NVIDIA Quadro cards plus AMD Radion HD 6000 or better and FireGL V7600 or better with recent drivers.

Using an NVIDIA GeForce graphics card and NVIDIA 3D Vision on Windows you need:

  • GeForce driver 314.07 or later.
  • Graphics configured to display at 120Hz.
  • Monitor configured to display at 120Hz.
  • Stereoscopic 3D enabled in the NVIDIA Control Panel.
  • 3D Vision set up and working. *
  • Viewer configured to run full screen — Preferences > Graphics > General.
  • Viewer configured for stereoscopic 3D output — Preferences > Graphics > Display Output.

There’s an option to set the display output to 120Hz for stereoscopic 3D. This is useful if you have shutter glasses and want to only display at 120Hz when you use the viewer.

* Note, however, that it doesn’t work with 3D Vision Discover anaglyph.

Variable Walking and Flying Speed

This enables you to walk and fly at speeds slower than normal and, if using the Kinect to control movement, walk and fly at varying speeds up to your configured maximum. Works best in Second Life; works reasonably well in in OpenSim 0.8.0; in OpenSim 0.7.6, walking is always at normal speed and flying is stuttery at slower speeds.

  • Configure “Walk speed” in Preferences > Move & View > Movement.
  • You can use keyboard shortcuts Ctrl-PgUp and Ctrl-PgDn to increase and decrease your walk speed.
  • When using a SpaceNavigator, speed depends on how much pressure you apply to its knob.
  • At slower walk speeds you may want to disable “Turn avatar around when walking backwards”.

Kinect for Windows

On a Windows PC with a Kinect for Windows sensor installed, this enables you to nominate the physical spot you are standing on to be “home”. Then you move off this spot to control the direction your avatar walks or flies, turn your shoulders to turn your avatar, and use gestures to fly up and down.

kinect-gestures

Miscellaneous

  • Uses the Second Life login screen instead of the Firestorm one if logging into Second Life.
  • CtrlAltStudio Viewer skin and colours.
  • Can be used with both Second Life and OpenSim.

Limitations

  • The menu bars and toolbar aren’t displayed in Riftlook.
  • Right-clicking on objects in Riftlook always displays the context menu in list form rather than pie form, even if “Use Pie Menu” is configured in the preferences.
  • Improper display during teleport while in Riftlook.
  • Flickering objects at the edge of the Riftlook screen.
  • With variable walk / fly speeds in OpenSim 0.7.6, walking is always at full speed and flying at slow speeds is stuttery.
  • Variable walk / fly speeds can be a bit jerky at slower speeds, and the avatar doesn’t necessarily animate smoothly.
  • Kinect for Windows control is available only when running on Windows.
  • So that it can be used with both Second Life and OpenSim, this viewer is compiled without the HAVOK library. This means that certain advanced features are not available when used with Second Life: visual display of the pathfinding navmesh and rigged mesh upload support.
  • No crash log reporting: Crash logs are not sent to anybody.

Previous Versions

For previous versions, see the list of release notes.

Acknowledgments

Many thanks the Firestorm viewer team for providing the codebase for building the CtrlAltStudio Viewer upon and to Cinder Roxley for providing the Mac OSX installer. Thanks also to other contributors per the viewer’s Help > About.

Source Code

ctrlaltstudioviewer.codeplex.com

Disclaimer: This software is not provided or supported by Linden Lab, the makers of Second Life.

 

The General Generic Disclaimer: THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.