| Type Name | Description |
| boolean |
Logical value; can be set to the literals true or false. |
| enumerant |
One out of a fixed set of possible choices, expressed as literals. Allowed literal values are listed in the setting's description. |
| key name |
Name of a key on the keyboard, expressed as a literal. Labeled keys have their own names, and the following "special" key names are recognized: Space, Tab, Return, Backspace, Left, Up, Right, Down, PageUp, PageDown, Home, End, Insert, Delete, Num0, Num1, Num2, Num3, Num4, Num5, Num6, Num7, Num8, Num9, Num/, Num*, Num-, Num+, NumEnter, NumSep, LeftShift, RightShift, CapsLock, LeftCtrl, RightCtrl, LeftAlt, RightAlt, LeftMeta, RightMeta, LeftSuper, RightSuper, LeftHyper, RightHyper, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, Esc, Print, ScrollLock, Pause, Menu. |
| qualified key name |
Name identifying a combination of a keyboard key and a set of currently pressed modifier keys, expressed as a sequence of any number of modifier key names followed by a non-modifier key name, separated by plus signs (+). Supported modifier key names are Shift, Ctrl, Alt, Meta, Super, Hyper. |
| integer |
Positive or negative integer number. Consists of an optional plus or minus sign, followed by a sequence of at least one decimal digits. |
| number |
Positive or negative floating-point number. Consists of an optional plus or minus sign, followed by a sequence of at least one decimal digit defining the number's integer part, and an optional dot followed by a sequence of at least one decimal digits defining the number's fractional part. |
| string |
A sequence of characters enclosed in double quotes. Strings support C-style escape sequences using the backslash escape charater; e.g., \t gets translated to a TAB character, \" is a double quote, and \\ is a backslash. If a string only contains letters, digits, underscores, or escape sequences, the quotes are optional. |
| list |
A list of values of another arbitrary setting value type. A list is encoded as a pair of parentheses containing a comma-separated list of an arbitrary number of values. |
| point |
A point in 3D affine space, encoded as a list of exactly three numbers (x, y, and z components). |
| vector |
A vector in 3D affine space, encoded as a list of exactly three numbers (x, y, and z components). |
| plane |
An oriented plane (half-space) in 3D affine space, encoded as a vector (non-normalized normal vector) followed by a comma and a number (origin distance in terms of normal vector length). |
| 3x3 matrix |
A projective transformation in 2D projective space, encoded as a list of exactly three vectors, which are interpreted as the matrix' column vectors. |
| tracker state |
A position and orientation in 3D affine space, encoded as a sequence of basic transformations separated by multiplication signs. The basic transformations are:
- identity
- Denotes an identity transformation.
- translate <translation>
- Translates the coordinate system by the given translation vector.
- rotate <axis>, <angle>
- Rotates the coordinate system about its own origin around the given non-normalized axis vector, by the given angle number in degrees.
- rotateAround <pivot>, <axis>, <angle>
- Rotates the coordinate system about the given pivot point around the given non-normalized axis vector, by the given angle number in degrees.
|
| orthogonal transformation |
A transformation consisting of any combination of translations, rotations, and uniform scalings, encoded as a sequence of basic transformations separated by multiplication signs. The basic transformations are:
- identity
- Denotes an identity transformation.
- translate <translation>
- Translates the coordinate system by the given translation vector.
- rotate <axis>, <angle>
- Rotates the coordinate system about its own origin around the given non-normalized axis vector, by the given angle number in degrees.
- rotateAround <pivot>, <axis>, <angle>
- Rotates the coordinate system about the given pivot point around the given non-normalized axis vector, by the given angle number in degrees.
- scale <factor>
- Scales the coordinate system about its own origin by the scaling factor number.
- scaleAround <pivot>, <factor>
- Scales the coordinate system about the given pivot point by the scaling factor number.
|
| affine transformation |
An affine transformation in 3D affine space, encoded as a list of exactly four vectors, which are interpreted as the column vectors of the transformation's 3x4 matrix. |
| color |
An RGB color with opacity component, encoded as a list of three or four numbers (red, green, blue, and (optional) opacity components, scaled from 0.0 to 1.0). If the opacity component is missing, it is initialized to 1.0. |
| material |
An OpenGL material property, encoded as a pair of curly braces containing a sequence of semicolon-terminated component settings. Omitted components are set to the OpenGL default values. The available component settings are:
- Ambient = <ambient color>
- Ambient color of the material.
- Diffuse = <diffuse color>
- Diffuse color of the material.
- AmbientDiffuse = <ambient and diffuse color>
- Ambient and diffuse color of the material.
- Specular = <specular color>
- Specular color of the material.
- Shininess = <shininess>
- Shininess exponent number of the material.
- Emission = <emissive color>
- Emissive color of the material.
|
| glyph type |
Type of a 3D icon, encoded as a literal. Available values:
- None
- No icon.
- Cone
- A cone with the apex at the origin, oriented along the y axis.
- Cube
- A cube centered around the origin.
- Sphere
- A sphere centered around the origin.
- Crossball
- A sphere centered around the origin, with three cylinders oriented along the x, y, and z axes, respectively.
- Box
- A "wireframe" box composed of oblong rectangles as edges and cubes as vertices.
- Cursor
- A regular 2D mouse cursor, projected onto the screen directly behind the input device from the eye position.
|
| screen protector device |
Description of a sphere around an input device that triggers a visual alarm when approaching the configured boundaries of the environment. Encoded as a set of parentheses containing a string (the name of an input device), followed by a comma and a point (the center of the sphere in the device's coordinate system), followed by a comma and a number (the radius of the sphere). |
| window point |
A point in 2D window space, encoded as a list of exactly two numbers (x and y components, scaled from 0.0 to 1.0). |
| window size |
The size of a display window in pixel units, encoded as a list of exactly two integers. |
| window position |
The position and size of a display window in pixel units, encoded as a list of exactly two integers (window position), followed by a comma and a list of exactly two integers (window size). |
| axis value mapper |
Defines a mapping from a device's raw absolute or relative axis values to the range [-1, 1] used by Vrui, using a "broken line" model. Encoded as a list of exactly four numbers: the raw value mapped to -1, a pair of raw values defining a "flat zone" such that all raw values between the first and second are mapped to zero, and the raw value mapped to 1. |
| axis descriptor |
Mapping from a tool valuator to a translational or rotational axis on a navigation tool. Encoded as a pair of parentheses containing an integer (the index of the mapped valuator), followed by a comma and a vector (the rotation axis or translation vector). |
| feature assignment |
A list of input device features (buttons or valuators) to use in a tool binding. Encoded as an opening parenthesis, followed by a string defining the name of the input device containing all following features, followed by a comma, followed by an arbitrary number of comma-separated strings defining the names of the button or valuator features on the input device to be used in a binding, followed by a closing parenthesis. |