RenderableLabel

Inherits Renderable

Renders a single text label in 3D space. The label is rendered as a billboard, that is, it is always oriented to face the camera.

The label can be rendered with a fade-in effect based on the distance from the camera.

Members

Name

Documentation

Type

Description

Optional

BlendMode

This determines the blending mode that is applied to the renderable.

String

In list { Normal, Additive }

Yes

Color

The label text color.

Color3

Value of type ‘Color3’

Yes

DimInAtmosphere

Decides if the object should be dimmed (i.e. faded out) when the camera is in the sunny part of an atmosphere.

Boolean

Value of type ‘Boolean’

Yes

Enabled

Determines whether this object will be visible or not.

Boolean

Value of type ‘Boolean’

Yes

EnableFading

Enable/Disable the Fade-in effect.

Boolean

Value of type ‘Boolean’

Yes

FadeDistances

The distance range in which the labels should be fully opaque, specified in the chosen unit. The distance from the position of the label to the camera.

Vector2<double>

Greater or equal to: {0,0}

Yes

FadeUnit

Distance unit for fade-in/-out distance calculations. Defaults to “au”.

String

In list { m, Km, Mm, Gm, Tm, Pm, au, pc, Kpc, Mpc, Gpc, Gly }

Yes

FadeWidths

The distances over which the fading takes place, given in the specified unit. The first value is the distance before the closest distance and the second the one after the furthest distance. For example, with the unit Parsec (pc), a value of {1, 2} will make the label being fully faded out 1 Parsec before the closest distance and 2 Parsec away from the furthest distance.

Vector2<double>

Greater or equal to: {0,0}

Yes

FontSize

The font size (in points) for the label.

Double

Greater than: 0

Yes

MinMaxSize

The minimum and maximum size (in pixels) of the label.

Vector2<int>

Value of type ‘Vector2

Yes

Opacity

This value determines the opacity of this renderable. A value of 0 means completely transparent.

Double

In range: ( 0, 1)

Yes

OrientationOption

Label orientation rendering mode.

String

In list { Camera View Direction, Camera Position Normal }

Yes

RenderBinMode

A value that specifies if the renderable should be rendered in the Background, Opaque, Pre-/PostDeferredTransparency, Overlay, or Sticker rendering step.

String

In list { Background, Opaque, PreDeferredTransparent, Overlay, PostDeferredTransparent, Sticker }

Yes

Size

Scales the size of the label, exponentially. The value is used as the exponent in a 10^x computation to scale the label size.

Double

Greater or equal to: 0

Yes

Tag

A single tag or a list of tags that this renderable will respond to when setting properties.

Table, or String

Value of type ‘Table’, or Value of type ‘String’

Yes

Text

The text that will be displayed on screen.

String

Value of type ‘String’

Yes

TransformationMatrix

Transformation matrix to be applied to the label.

Matrix4x4<double>

Value of type ‘Matrix4x4

Yes

Type

The type of the renderable.

String

Value of type ‘String’

Yes

Inherited members from Renderable

Name

Documentation

Type

Description

Optional

DimInAtmosphere

Decides if the object should be dimmed (i.e. faded out) when the camera is in the sunny part of an atmosphere.

Boolean

Value of type ‘Boolean’

Yes

Enabled

Determines whether this object will be visible or not.

Boolean

Value of type ‘Boolean’

Yes

Opacity

This value determines the opacity of this renderable. A value of 0 means completely transparent.

Double

In range: ( 0, 1)

Yes

RenderBinMode

A value that specifies if the renderable should be rendered in the Background, Opaque, Pre-/PostDeferredTransparency, Overlay, or Sticker rendering step.

String

In list { Background, Opaque, PreDeferredTransparent, Overlay, PostDeferredTransparent, Sticker }

Yes

Tag

A single tag or a list of tags that this renderable will respond to when setting properties.

Table, or String

Value of type ‘Table’, or Value of type ‘String’

Yes

Type

The type of the renderable.

String

Value of type ‘String’

Yes

Asset Examples

 1local transforms = asset.require("./transforms")
 2
 3
 4
 5local CeresLabel = {
 6  Identifier = "CeresLabel",
 7  Parent = transforms.CeresPosition.Identifier,
 8  Renderable = {
 9    Type = "RenderableLabel",
10    Enabled = asset.enabled,
11    Text = "Ceres",
12    FontSize = 70.0,
13    Size = 8.66,
14    MinMaxSize = { 1, 100 },
15    BlendMode = "Additive",
16    OrientationOption = "Camera View Direction"
17  },
18  Tag = { "solarsystem_labels" },
19  GUI = {
20    Name = "Ceres Label",
21    Path = "/Solar System/Dwarf Planets/Ceres",
22    Focusable = false,
23    Description = "Label for Ceres, visible at the solarsystem overview zoom level"
24  }
25}
26
27
28asset.onInitialize(function()
29  openspace.addSceneGraphNode(CeresLabel)
30end)
31
32asset.onDeinitialize(function()
33  openspace.removeSceneGraphNode(CeresLabel)
34end)
35
36asset.export(CeresLabel)
37
38
39
40asset.meta = {
41  Name = "Ceres Label",
42  Description = "Label for Ceres",
43  Author = "OpenSpace Team",
44  URL = "https://openspaceproject.com",
45  License = "MIT license"
46}