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

Transports

Transports move the user around the environment and are controlled using input device signals. They are similar to trackers in providing position and orientation information. However, transports are completely virtual and support navigation techniques not possible with real trackers. In Vizconnect, a transport can be used on its own or combined with a tracker to move the viewpoint or an avatar.

Using a Transport

To move a display, tracker, or avatar using a transport:

  1. Add an input device from the Inputs tab
  2. Add a transport from the Transports tab. Map the input signals to the transport in the Mappings dialog box.
  3. Add an object from the Displays, Trackers, or Avatars tab.
  4. Place the display, tracker, or avatar directly under the transport in the scene graph tree.

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

Transport Options

The following transport options are available:

Transport

Description

Driving Forward/backward movements with left/right steering.
Flying Moves around the scene in a flying style. Pitch and yaw rotation affect how moving forward and backward are determined. For example, looking up and moving forward results in moving both forward and up.
GrapplingHook An attachment point is cast from the base of the transport. The transport then moves to the target point. Movement takes a constant amount of time regardless of distance, so this is an excellent transport to explore large scenes.
Helicopter Tilts, rotates, and moves like a helicopter.
JumpTo Saves locations in the scene and jumps between those locations.

Orbit

Pivots around a target point.

Orientation

Provides rotational movement.

WandMagicCarpet A transport designed for a wand like device. The transport requires an orientation tracker. Directional movement (e.g. forward, back) occurs relative to the orientation tracker.

Walking

Position movement along all axes, left/right turning, and up/down looking. Turning affects subsequent position movements while looking does not.

Example

Link an object to the transport:

# Link a car model to the driving transport
transportNode = vizconnect.getTransport('driving').getNode3d()
viz.link(transportNode, car)

Set the transport location:

transportNode = vizconnect.getTransport('main_transport').getNode3d()
transportNode.setPosition([0,0,20])

Transport API

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

Command Description

vizconnect.getTransport(name)

Returns a handle to the wrapped transport.

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

Method Description
<WrappedTransport>.getEnabled() Returns whether or not the transport is enabled. Disabling a transport causes it's update function to be disabled.

<WrappedTransport>.getMovementSpeed()

Gets the scale value applied to the movement speed.

<WrappedTransport>.getTransportationMode()

Returns the transportation mode associated with the raw transport object.

<WrappedTransport>.setEnabled(state)

Sets the enabled state of the transport, disabled transports should not move or respond to input.

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

<WrappedTransport>.setMovementSpeed(

speed,

affectVertical=False)

Allows the movement speed to be set for transports, as a multiple of the base speed, e.g. 1x 2x, 3x.... The value 'speed' does not have to be an integer.
<WrappedTransport>.setPivot(node) Sets the pivot used by the transport. The pivot is the node the transport rotates around. So if a transport rotates the pivots position should remain constant.