Vizard 8 » Reference » Vizconnect » Advanced GUI » Displays
8.1

Displays

Use Vizconnect's Display tab to configure Vizard's graphics output for your device.

Display and Viewpoint

Display options set properties of the graphics window such as field of view and stereo mode. Viewpoint updates are based on the display's position in the vizconnect scenegraph. To add a display and parent its viewpoint to a tracker, transport, or avatar:

  1. Add an object from the Trackers, Transports, or Avatars tab.
  2. Add a display from the Displays tab.
  3. Place the display directly under a tracker, transport, or avatar attachment point in the scene graph tree.

See the vizconnect tutorials for more on using displays in the configuration GUI. Use vizconnect API commands to get and manipulate display objects within a Vizard script.

Display Options

Display options fall into one of the following categories:

Sub Window

By default, when configuring a monitor or HMD, Vizard will render the scene to the main window. Check the sub window parameter to create a smaller sub window overlaid on the main window. Each window, including the main window and any sub window(s), has it's own associated viewpoint that can be linked to different trackers, transports, or avatar slots through the hierarchy. Sub windows are useful for showing different points of view within the scene (e.g. 3rd person, bird's eye).

Clustering

Note: Clustering requires the Vizard Enterprise edition

See the clustering section for information about clustering and using the cluster tools. The following are some common setups that use vizconnect and clustering:

 

CAVE with multiple machines/GPUs: Select the Cave Manual Configuration option. Each wall is automatically assigned to a cluster node. To change the physical wall a rendered window is applied to, re-order the clients in the cluster master application.

Co-Presence: Each display requires its own machine and vizconnect file. See the clustering section for more information.

Mirrored display: A typical use case a two node cluster, one that renders a 1st person view to a HMD and a second that renders the same view or a 3rd person view to a monitor. Add the two displays in the same vizconnect file, press the visibility button for each display, and assign the display's fullscreen monitor and cluster index.

Display API

The wrapped display wraps up a Vizard window object that the display settings are applied to. When initialized, many displays return an object that supports device specific commands. If an object is returned, Vizconnect saves it to the raw display as an attribute named displayNode. The following code checks to see if the display is an Oculus Rift and then gets a handle to the Rift object:

display = vizconnect.getDisplay('main_display')
# Check to see if the display is an Oculus
if display.getModel() == 'Rift':
    rift = display.getRaw().displayNode

Getting the display type can be useful for applications designed to run on different displays. The way GUIs are added depends on the display type; e.g. placing the interface onto cave walls for a cave, screen space for a monitor, and in the world for a HMD.

 

The following command returns a handle to the wrapped display using the name defined in the configuration:

Command Description
vizconnect.getDisplay(name) Returns a handle to the wrapped display.

Wrapped display objects have the following methods in addition to the base wrapped object methods:

Method Description

<WrappedDisplay>.getType()

Returns the type of the display (e.g. DISPLAY_HMD, DISPLAY_CAVE, DISPLAY_MONITOR).
<WrappedDisplay>.getViewpoint() Returns vizconnect viewpoint this display is assigned to, none if there's no parent viewpoint.

<WrappedDisplay>.setDebugEnabled(state)

Sets the state of the debug view for the display. Very useful for caves in order to debug stereo. Generally not as useful for other display devices.

state: viz.ON, viz.OFF, or viz.TOGGLE