ScreenSpaceDashboard
Inherits ScreenSpaceRenderable
Displays dashboard content as a 2D overlay on top of the scene. Unlike world-space objects, it is anchored to the screen rather than to any location in the 3D environment, which makes it suitable for HUD-style information displays.
The class acts as a container and renderer for DashboardItem instances. These items can present textual or status-oriented information such as time, camera state, mission data, frame rate, or other runtime values. The dashboard is rendered into a framebuffer-backed screen-space surface and then composited into the final view.
ScreenSpaceDashboard supports two usage patterns. It can either render the application’s shared main dashboard, or it can host its own independent dashboard instance. This makes it useful both for reusing a global information overlay and for creating dedicated screen-space panels with their own item composition.
Members
Name |
Documentation |
Type |
Description |
Optional |
|---|---|---|---|---|
|
The type of the |
|
Must name a valid ScreenSpaceRenderable |
No |
|
A fixed color that is combined with the screen space renderable to create the final color. The actual color of the screen space renderable is alpha-blended with the background color to produce the final result. |
|
Value of type ‘Color4’ |
Yes |
|
The color of the border. |
|
Value of type ‘Color3’ |
Yes |
|
If this value is enabled and a border width is set, the border will be rendered as a feathered border rather than a hard corner. |
|
Value of type ‘Boolean’ |
Yes |
|
The width of the border. |
|
Greater than: 0 |
Yes |
|
Determines the position of this screen space plane in Cartesian three-dimensional coordinates (meters). |
|
Value of type ‘Vector3 |
Yes |
|
Determines whether this sceen space object will be rendered or not. |
|
Value of type ‘Boolean’ |
Yes |
|
If enabled, the object will be rotated to face the camera position. Any local rotation is then applied after this rotation. |
|
Value of type ‘Boolean’ |
Yes |
|
Sets the gamma correction of the texture that is applied in addition to the global gamma value. |
|
Value of type ‘Double’ |
Yes |
|
The unique identifier for this screen space renderable. It has to be unique amongst all existing screen space nodes that have been added to the scene. |
|
An identifier string. May not contain ‘.’, spaces, newlines, or tabs |
Yes |
|
|
An identifier string. May not contain ‘.’, spaces, newlines, or tabs |
Yes |
|
|
A list of DashboardItems that are added automatically upon construction of the ScreenSpaceDashboard. This value must not be specified if |
|
Yes |
|
|
If set, the plane’s texture is multiplied with this color. Useful for applying a color grayscale images. |
|
Value of type ‘Color3’ |
Yes |
|
The name of the |
|
Value of type ‘String’ |
Yes |
|
The opacity of the screen space object. If 1, the object is completely opaque. If 0, the object is completely transparent. |
|
In range: ( 0, 1) |
Yes |
|
Determines the position of this screen space plane in a coordinate system based on radius (meters), azimuth (radians), and elevation (radians). |
|
Value of type ‘Vector3 |
Yes |
|
If true, this screen space renderable is going to ignore the global blackout factor from the Render Engine and will always render at full opacity. If false, it will adhere to the factor and fade out like the rest of the 3D rendering. |
|
Value of type ‘Boolean’ |
Yes |
|
An Euler rotation (x, y, z) to apply to the screen space object. |
|
Value of type ‘Vector3 |
Yes |
|
A scale factor for the plane that can be used to increase or decrease the visual size. The default size is determined separately for each screen space renderable type and may for example be affected by the size of an image being displayed. |
|
Value of type ‘Double’ |
Yes |
|
Defines either a single or multiple tags that apply to this |
|
Value of type ‘String’, or Value of type ‘Table’ |
Yes |
|
If true, this ScreenSpaceDashboard will use the main dashboard instead of creating an independent one. |
|
Value of type ‘Boolean’ |
Yes |
|
Determines whetether the z/radius values affects the size of the plane or not. |
|
Value of type ‘Boolean’ |
Yes |
|
Determines whether the location of this screen space plane will be specified using radius, azimuth and elevation (if ‘true’) or using Cartesian coordinates. The Cartesian coordinate system is useful if a regular rendering is applied, whereas the radius azimuth elevation are most useful in a planetarium environment. |
|
Value of type ‘Boolean’ |
Yes |
Inherited members from ScreenSpaceRenderable
Name |
Documentation |
Type |
Description |
Optional |
|---|---|---|---|---|
|
The type of the |
|
Must name a valid ScreenSpaceRenderable |
No |
|
A fixed color that is combined with the screen space renderable to create the final color. The actual color of the screen space renderable is alpha-blended with the background color to produce the final result. |
|
Value of type ‘Color4’ |
Yes |
|
The color of the border. |
|
Value of type ‘Color3’ |
Yes |
|
If this value is enabled and a border width is set, the border will be rendered as a feathered border rather than a hard corner. |
|
Value of type ‘Boolean’ |
Yes |
|
The width of the border. |
|
Greater than: 0 |
Yes |
|
Determines the position of this screen space plane in Cartesian three-dimensional coordinates (meters). |
|
Value of type ‘Vector3 |
Yes |
|
Determines whether this sceen space object will be rendered or not. |
|
Value of type ‘Boolean’ |
Yes |
|
If enabled, the object will be rotated to face the camera position. Any local rotation is then applied after this rotation. |
|
Value of type ‘Boolean’ |
Yes |
|
Sets the gamma correction of the texture that is applied in addition to the global gamma value. |
|
Value of type ‘Double’ |
Yes |
|
The unique identifier for this screen space renderable. It has to be unique amongst all existing screen space nodes that have been added to the scene. |
|
An identifier string. May not contain ‘.’, spaces, newlines, or tabs |
Yes |
|
If set, the plane’s texture is multiplied with this color. Useful for applying a color grayscale images. |
|
Value of type ‘Color3’ |
Yes |
|
The name of the |
|
Value of type ‘String’ |
Yes |
|
The opacity of the screen space object. If 1, the object is completely opaque. If 0, the object is completely transparent. |
|
In range: ( 0, 1) |
Yes |
|
Determines the position of this screen space plane in a coordinate system based on radius (meters), azimuth (radians), and elevation (radians). |
|
Value of type ‘Vector3 |
Yes |
|
If true, this screen space renderable is going to ignore the global blackout factor from the Render Engine and will always render at full opacity. If false, it will adhere to the factor and fade out like the rest of the 3D rendering. |
|
Value of type ‘Boolean’ |
Yes |
|
An Euler rotation (x, y, z) to apply to the screen space object. |
|
Value of type ‘Vector3 |
Yes |
|
A scale factor for the plane that can be used to increase or decrease the visual size. The default size is determined separately for each screen space renderable type and may for example be affected by the size of an image being displayed. |
|
Value of type ‘Double’ |
Yes |
|
Defines either a single or multiple tags that apply to this |
|
Value of type ‘String’, or Value of type ‘Table’ |
Yes |
|
Determines whetether the z/radius values affects the size of the plane or not. |
|
Value of type ‘Boolean’ |
Yes |
|
Determines whether the location of this screen space plane will be specified using radius, azimuth and elevation (if ‘true’) or using Cartesian coordinates. The Cartesian coordinate system is useful if a regular rendering is applied, whereas the radius azimuth elevation are most useful in a planetarium environment. |
|
Value of type ‘Boolean’ |
Yes |
Table parameters for Items
A list of DashboardItems that are added automatically upon construction of the ScreenSpaceDashboard. This value must not be specified if UseMainDashboard is specified.
Optional: Yes
Name |
Documentation |
Type |
Description |
Optional |
|---|---|---|---|---|
|
|
Yes |
Asset Examples
Basic
This example shows how to display dashboard items in a screen space. In this specific example it is show the date in the simulation, but any #DashboardItem is supported.
1local Item = {
2 Type = "ScreenSpaceDashboard",
3 Identifier = "ScreenSpaceDashboard_Example",
4 Name = "ScreenSpaceDashboard Example - Basic",
5 Items = {
6 {
7 Identifier = "ScreenSpaceDashboard_Example_Date",
8 Type = "DashboardItemDate"
9 }
10 }
11}
12
13
14asset.onInitialize(function()
15 openspace.addScreenSpaceRenderable(Item)
16end)
17
18asset.onDeinitialize(function()
19 openspace.removeScreenSpaceRenderable(Item)
20end)