VideoNode

lumin. VideoNode

A Node that represents a simple 2-d rectangle that video resources can be played on.

Extends

Methods

addChild(a_pChild) → {boolean}

Inherited From:

Adds a child to the current Node, removing it from its current parent.

A child can only have a single Parent

Parameters:
Name Type Description
a_pChild lumin.Node

The Node to add as a child to this Node.

Returns:

true if successful, false if failed

Type
boolean

addMoveCallback(trackopt)

Inherited From:

Adds a client-side callback event to the move list. When the event is reached during the
animation playback, the ServerEventCallback function set in Client will be called
with an event TransformAnimationEventData.

Parameters:
Name Type Attributes Default Description
track number <optional>
0

addToLayer(a_layer)

Inherited From:

Adds this node to the specified node layer. Nodes can be members of multiple layers.

Parameters:
Name Type Description
a_layer BigInt

delayMove(durationSecs, trackopt)

Inherited From:

Adds a delay to the current move sequence.

Parameters:
Name Type Attributes Default Description
durationSecs number

How long to delay, in seconds.

track number <optional>
0

which animation track to add the delay to.

enableVisualState(value)

Inherited From:

Enable//Disable the Prism Visual state changes

Parameters:
Name Type Description
value boolean

Enable/Disable the state changing

findChild(name) → {lumin.Node}

Inherited From:

Find the first named child in the node hierarchy, including this Node.

Does a breadth-first search of the child node hierarchy
for the specified named Node and will return the first encountered match,
or nullptr if no named Node found.

Parameters:
Name Type Description
name string

The name to search for.

Returns:
Type
lumin.Node

findChildren(a_type, a_bExactTypeopt, a_bIncludeSelfopt) → {Array.<lumin.Node>}

Inherited From:

Does a breadth-first search of the child node hierarchy
for the specified Node type.

Parameters:
Name Type Attributes Default Description
a_type number

The type of Node to find in the child hierarchy.

a_bExactType boolean <optional>
false

Flag to indicate if the child node must be the exact type or can be derived from the type (default false).

a_bIncludeSelf boolean <optional>
false

Flag to indicate if the search should include this Node (default false).

Returns:

A vector of Node pointers containing the results.

Type
Array.<lumin.Node>

findParent(a_type, a_bExactTypeopt) → {lumin.Node}

Inherited From:

Searches up the tree parentage for the specific Node type.

Parameters:
Name Type Attributes Default Description
a_type number

The type of Node to find in the parent hierarchy.

a_bExactType boolean <optional>
false

Flag to indicate if the parent node must be the exact type or can be derived from the type (default false).

Returns:

The parent node, if found, null if not found.

Type
lumin.Node

getAABB() → {lumin.math.AABB}

Inherited From:

Get the AABB of this Node's full hierarchy, including all descendants,
with all Node transforms applied.

The returned AABB encompasses this Node and all descendant Nodes
and is aligned to the coordinate system the Node resides within,
i.e. the Node's parent coordinate system.
Note, the returned AABB is not guaranteed to be the minimal,
tightest fitting AABB to encompass the Node's descendant hierarchy,
but it will fully enlose the Node's hierarchy.

Returns:

The bounding box

Type
lumin.math.AABB

getAnchorPosition() → {vec3}

Inherited From:

Returns the anchor position of the node.

Returns:

The anchor position.

Type
vec3

getChild(a_iIndex) → {lumin.Node}

Inherited From:

Gets the n'th child from this Node's children

Parameters:
Name Type Description
a_iIndex number

The index of the child.

Returns:

Child Node

Type
lumin.Node

getChildCount() → {number}

Inherited From:

Gets the number of immediate children this Node has

Returns:

Count of immediate child Nodes

Type
number

getColor() → {vec4}

Inherited From:

Get the custom color, which is by default white: { 1, 1, 1, 1 }.

Returns:

The color.

Type
vec4

getCurrentPrismTransform() → {mat4}

Inherited From:

Get the Cached Prism Transform of this Node

Returns:

Transform Matrix

Type
mat4

getCurrentWorldTransform() → {mat4}

Inherited From:

Get the Cached World Transform of this Node

Returns:

Transform Matrix

Type
mat4

getCursorHoverState() → {lumin.CursorHoverState}

Inherited From:

Get the cursor hover state for this Node.

Returns:

the cursor state.

Type
lumin.CursorHoverState

getLocalAABB() → {lumin.math.AABB}

Inherited From:

Get the local AABB of this Node only, not including children,
aligned to this Node's local coordinate system.

A local AABB of math::AABB::EMPTY indicates the Node either
has no visual information or that local AABB is not supported
for the Node.

Note: The local AABB for ModelNodes is currently not supported
and will report math::AABB::EMPTY.

Returns:

The bounding box.

Type
lumin.math.AABB

getLocalPosition() → {vec3}

Inherited From:

Get the Local Position of this Node

Returns:

Position

Type
vec3

getLocalRotation() → {quat}

Inherited From:

Get the Local Rotation of this Node

Returns:

Rotation

Type
quat

getLocalScale() → {vec3}

Inherited From:

Get the Local Scale of this Node

Returns:

Scale

Type
vec3

getLocalTransform() → {mat4}

Inherited From:

Get the Local Transform of this Node

Returns:

Transform Matrix

Type
mat4

getName() → {string}

Inherited From:

Get the name of the Node.

This call returns EMPTY_STRING if the Node's
name has not been set.

Returns:

The name of the Node, if set.

Type
string

getNodeId() → {BigInt}

Inherited From:

Gets the Node Id of this Node

Every Node is assigned a unique ID per Prism

Returns:

Node id of the current Node

Type
BigInt

getParent() → {lumin.Node}

Inherited From:

Gets this Node's immediate parent

Returns:

Parent Node, nullptr = no parent

Type
lumin.Node

getParentedBoneName() → {string}

Inherited From:

When parented to a parents bone with setParentedBoneName

Returns:

Parents bone name we are attached to

Type
string

getPlanarResourceId() → {BigInt}

Returns the ID for the resource that the video will be displayed on.

Returns:

the resource that the video will be displayed on or INVALID_RESOURCE_ID if not set

Type
BigInt

getPrismId() → {BigInt}

Inherited From:

Returns the id of the prism the node belongs to.

Returns:

the prism id (0 = invalid prism)

Type
BigInt

getPrismPosition() → {vec3}

Inherited From:

Get the Prism Position of this Node

Returns:

Position

Type
vec3

getRenderingLayer() → {BigInt}

Inherited From:

Get the rendering layer of this node.

Returns:

: the uint16_t value of the layer.

Type
BigInt

getRenderResource() → {lumin.Resource}

Inherited From:

Returns the underlying Resource

Returns:

Resource The underlying resource, can be a nullptr

Type
lumin.Resource

getRigidBody() → {lumin.PhysicsRigidBody}

Inherited From:

Returns the PhysicsRigidBody attached to the node, if the node is participating in the physics
system.

Returns:

the rigid body

Type
lumin.PhysicsRigidBody

getRoot() → {lumin.RootNode}

Inherited From:

Gets the root node of the node tree this node belongs to.

Returns:

The root node, or nullptr if none.

Type
lumin.RootNode

getShader() → {lumin.utils.ShaderType}

Inherited From:

Returns shader type that is currently used

Returns:
Type
lumin.utils.ShaderType

getShaderType() → {lumin.utils.ShaderType}

Inherited From:

Get the type of the shader that will be applied to the QuadNode.

This depends on the render resource; see setRenderResource().

Returns:
Type
lumin.utils.ShaderType

getSize() → {vec2}

Inherited From:

Get the custom size, which is by default one: { 1, 1 }.

Returns:

The size.

Type
vec2

getTexCoords() → {Array.<vec2>}

Inherited From:

Returns the texture coordinates used by the QuadNode.

Returns:

The coordinates.

Type
Array.<vec2>

getVertices() → {Array.<vec3>}

Inherited From:

Get the vertices that define the quad geometry.

Returns:
Type
Array.<vec3>

getViewMode() → {lumin.ViewMode}

Inherited From:

Get the current ViewMode value.

Returns:
Type
lumin.ViewMode

getWorldPosition() → {vec3}

Inherited From:

Get the World Position of this Node

Returns:

Position

Type
vec3

isDrmContent() → {boolean}

Inherited From:

Check if this Render Node is marked for DRM

Returns:

True = Marked as DRM Content

Type
boolean

isInLayer(a_layer) → {boolean}

Inherited From:

Checks to see if node subscribes to the specified node layer.

Parameters:
Name Type Description
a_layer BigInt

The layer to test if this node is a member of.

Returns:

True if this node subscribes to the specified layer.

Type
boolean

isInSubtree(pParent) → {boolean}

Inherited From:

Determines if this Node is within the subtree.

Parameters:
Name Type Description
pParent lumin.Node
Returns:

true if this Node is within the subtree, false if not.

Type
boolean

isLooping() → {boolean}

Checks whether the node is looping or non-looping.

Returns:

true if the node is currently looping, false otherwise

Type
boolean

isPlaying() → {boolean}

Checks whether the MediaPlayer is playing.

Returns:

true if currently playing, false otherwise

Type
boolean

isProtectedContent() → {boolean}

Check if content is protected

Returns:

true if protected

Type
boolean

isSkipRaycast() → {boolean}

Inherited From:

Returns the skip raycast state of the node.

Returns:

True if the node is skipped during raycasting.

Type
boolean

isTriggerable() → {boolean}

Inherited From:

Returns true if this node should handle trigger presses directly.

Returns:

true if this node will handle trigger presses directly when focused,
false if trigger press will instead enter prism placement mode.

Type
boolean

isVisibilityInherited() → {boolean}

Inherited From:

Returns whether this Node's visibility is inherited by its children or not.

Returns:

True if the Node's visiblity is inherited.

Type
boolean

isVisible() → {boolean}

Inherited From:

Returns the visibility state of the node. Note that only the local state is checked, the
effect of a parent's visibility is ignored.

Returns:

True if the Node is visible.

Type
boolean

isVisibleInPrism() → {boolean}

Inherited From:

Returns the visibility of the Node in the hierarchy based on self visibility and any
potential inherited visibility.

Returns:

True if the Node is visible in the Prism.

Type
boolean

pause() → {number}

Pauses playback.

Returns:

NO_ERROR if successful, error code otherwise

Type
number

prepareAsync() → {number}

Deprecated:
  • Preparing the node for playback is done automatically when the content to play is selected (via setVideoPath or setVideoUri)

This function is now a no-op and there is no need to call it.

The node is automatically prepared for playback when content is chosen
via setVideoPath or setVideoUri.

Returns:

NO_ERROR unconditionally

Type
number

removeChild(a_pChild)

Inherited From:

Remove a child from the current Node

Parameters:
Name Type Description
a_pChild lumin.Node

The child Node to remove.

removeFromLayer(a_layer)

Inherited From:

Removes this node from the specified node layer.

Parameters:
Name Type Description
a_layer BigInt

The layer this node will be removed from.

reset() → {number}

Resets the node to its uninitialized state.

Returns:

NO_ERROR if successful, error code otherwise

Type
number

seekTo(msec) → {number}

Seeks to the specified time position.

Parameters:
Name Type Description
msec number

the offset in milliseconds from the start to seek to

Returns:

NO_ERROR if successful, error code otherwise

Type
number

setAnchorPosition(a_position)

Inherited From:

Sets the anchor position of the Node's transform. Rotations, scaling, and translations of the
transform will take place around this point. Changing the anchor point will recalculate
the transform to the new anchor point.

Parameters:
Name Type Description
a_position vec3

Anchor position. This is relative to the default 0,0,0 position of the
transform.

setBackFaceCulls(a_on, a_renderStateIndexopt)

Inherited From: