API Classes Squirrel

Bloom Class

Bloom post-process object holding internal states and resources.

Create with CreateBloomFromAssets or CreateBloomFromFile, use with ApplyBloom, finally call DestroyBloom to dispose of resources when done.

btGeneric6DofConstraint Class

Camera Class

Add this component to a Node to implement the camera aspect.

Create a camera component with Scene.CreateCamera, use CreateCamera to create a complete camera node.

Functions

NamePrototypeDocumentation
GetFov
float GetFov()

Return the camera field of view.

GetIsOrthographic
bool GetIsOrthographic()

Return true if orthographic projection is used, false if perspective projection.

GetSize
float GetSize()
GetZFar
float GetZFar()

Return the camera far clipping plane.

GetZNear
float GetZNear()

Return the camera near clipping plane.

GetZRange
CameraZRange GetZRange()
IsValid
bool IsValid()
SetFov
null SetFov(float v)

Set the camera field of view.

SetIsOrthographic
null SetIsOrthographic(bool v)

Configure the camera to use orthographic or perspective projection.

SetSize
null SetSize(float v)
SetZFar
null SetZFar(float v)

Set the camera far clipping plane.

SetZNear
null SetZNear(float v)

Set the camera near clipping plane.

SetZRange
null SetZRange(CameraZRange z)
operator==
bool operator==(Camera c)

CameraZRange Class

Variables

NameType
zfarfloat
znearfloat

Functions

NamePrototypeDocumentation
Constructor
CameraZRange Constructor()

Canvas Class

Holds the canvas properties of a scene, see the canvas member of class Scene.

Variables

NameType
clear_colorbool
clear_zbool
colorColor

Collision Class

Collision component, see Physics.

Functions

NamePrototypeDocumentation
GetCollisionResource
string GetCollisionResource()
GetHeight
float GetHeight()
GetLocalTransform
Mat4 GetLocalTransform()
GetMass
float GetMass()

Return the collision shape mass in Kg.

GetRadius
float GetRadius()
GetType
CollisionType GetType()

Return the CollisionType of a Collision component.

IsValid
bool IsValid()
SetCollisionResource
null SetCollisionResource(string path)
SetHeight
null SetHeight(float height)
SetLocalTransform
null SetLocalTransform(Mat4 m)
SetMass
null SetMass(float mass)

Set the collision shape mass in Kg.

SetRadius
null SetRadius(float radius)
SetSize
null SetSize(Vec3 size)
SetType
null SetType(CollisionType type)

Set the CollisionType of a Collision component.

operator==
bool operator==(Collision c)

Color Class

Four-component RGBA color object.

Variables

NameType
Blackstatic Color
Bluestatic Color
Greenstatic Color
Greystatic Color
Onestatic Color
Orangestatic Color
Purplestatic Color
Redstatic Color
Transparentstatic Color
Whitestatic Color
Yellowstatic Color
Zerostatic Color
afloat
bfloat
gfloat
rfloat

Functions

NamePrototypeDocumentation
Constructor
Color Constructor()
Color Constructor(Color color)
Color Constructor(float r, float g, float b)
Color Constructor(float r, float g, float b, float a)

Construct a new color object. The red, green, blue and alpha components are in normalized range [0;1].

operator!=
bool operator!=(Color color)
operator*
Color operator*(Color color)
Color operator*(float k)
operator*=
null operator*=(Color color)
null operator*=(float k)
operator+
Color operator+(Color color)
Color operator+(float k)
operator+=
null operator+=(Color color)
null operator+=(float k)
operator-
Color operator-(Color color)
Color operator-(float k)
operator-=
null operator-=(Color color)
null operator-=(float k)
operator/
Color operator/(Color color)
Color operator/(float k)
operator/=
null operator/=(Color color)
null operator/=(float k)
operator==
bool operator==(Color color)

ColorList Class

Functions

NamePrototypeDocumentation
at
Color at(integer idx)
clear
null clear()
push_back
null push_back(Color v)
reserve
null reserve(integer size)
size
integer size()

Contact Class

Object containing the world space position, normal and depth of a contact as reported by the collision system.

Variables

NameType
NVec3
PVec3
dfloat

ContactList Class

Functions

NamePrototypeDocumentation
at
Contact at(integer idx)
clear
null clear()
push_back
null push_back(Contact v)
reserve
null reserve(integer size)
size
integer size()

Crowd Class

A group of navigation agents to efficiently simulate a crowd, see Navigation.

Functions

NamePrototypeDocumentation
AddAgent
integer AddAgent(Vec3 pos, CrowdAgentParams params)
Constructor
Crowd Constructor()
GetEditableAgent
CrowdAgent GetEditableAgent(integer idx)
Init
bool Init(integer max_agent, float maxAgentRadius, NavMesh mesh)
RemoveAgent
null RemoveAgent(integer idx)
RequestMoveTarget
bool RequestMoveTarget(integer idx, Vec3 pos, NavMeshQuery query)
Update
null Update(float dt)

CrowdAgent Class

State of a crowd agent.

Functions

NamePrototypeDocumentation
GetPos
Vec3 GetPos()
GetVel
Vec3 GetVel()
SetPos
null SetPos(Vec3 pos)

CrowdAgentParams Class

Data Class

Functions

NamePrototypeDocumentation
Constructor
Data Constructor()
GetSize
integer GetSize()
Rewind
null Rewind()

DearImguiContext Class

Context to render immediate GUI.

DirEntry Class

Variables

NameType
namestring
typeinteger

DirEntryList Class

Functions

NamePrototypeDocumentation
at
DirEntry at(integer idx)
clear
null clear()
push_back
null push_back(DirEntry v)
reserve
null reserve(integer size)
size
integer size()

draw_sceneCallback Class

Environment Class

Environment properties of a scene, see environment member of the Scene class.

Variables

NameType
ambientColor
brdf_mapTextureRef
fog_colorColor
fog_farfloat
fog_nearfloat

File Class

Interface to a file on the host local filesystem.

FileFilter Class

Variables

NameType
namestring
patternstring

Functions

NamePrototypeDocumentation
Constructor
FileFilter Constructor()

FileFilterList Class

Functions

NamePrototypeDocumentation
at
FileFilter at(integer idx)
clear
null clear()
push_back
null push_back(FileFilter v)
reserve
null reserve(integer size)
size
integer size()

Font Class

Font object for realtime rendering.

ForwardPipeline Class

Rendering pipeline implementing a forward rendering strategy.

The main characteristics of this pipeline are:

  • Render in two passes: opaque display lists then transparent ones.
  • Fixed 8 light slots supporting 1 linear light with PSSM shadow mapping, 1 spot with shadow mapping and up to 6 point lights with no shadow mapping.

ForwardPipelineAAA Class

Functions

NamePrototypeDocumentation
Flip
null Flip(ViewState view_state)

ForwardPipelineAAAConfig Class

Variables

NameType
bloom_biasfloat
bloom_intensityfloat
bloom_thresholdfloat
compositing_params0Vec4
compositing_params1Vec4
compositing_params2Vec4
compositing_params3Vec4
dof_focus_lengthfloat
dof_focus_pointfloat
exposurefloat
gammafloat
max_distancefloat
motion_blurfloat
sample_countinteger
temporal_aa_weightfloat
z_thicknessfloat

Functions

NamePrototypeDocumentation
Constructor

ForwardPipelineFog Class

Fog properties for the forward pipeline.

Variables

NameType
colorColor
farfloat
nearfloat

Functions

NamePrototypeDocumentation
Constructor
ForwardPipelineFog Constructor()

ForwardPipelineLight Class

Single light for the forward pipeline. The complete lighting rig is passed as a ForwardPipelineLights, see PrepareForwardPipelineLights.

Variables

NameType
diffuseColor
inner_anglefloat
outer_anglefloat
priorityfloat
pssm_splitVec4
radiusfloat
specularColor
typeForwardPipelineLightType
worldMat4

Functions

NamePrototypeDocumentation
Constructor
ForwardPipelineLight Constructor()

ForwardPipelineLightList Class

Functions

NamePrototypeDocumentation
at
ForwardPipelineLight at(integer idx)
clear
null clear()
push_back
null push_back(ForwardPipelineLight v)
reserve
null reserve(integer size)
size
integer size()

ForwardPipelineLights Class

FrameBuffer Class

Variables

NameType
handleFrameBufferHandle

FrameBufferHandle Class

Frustum Class

A view frustum, perspective or orthographic, holding the necessary information to perform culling queries. It can be used to test wether a volume is inside or outside the frustum it represents.

Functions

NamePrototypeDocumentation
GetBottom
Vec4 GetBottom()
GetFar
Vec4 GetFar()
GetLeft
Vec4 GetLeft()
GetNear
Vec4 GetNear()
GetRight
Vec4 GetRight()
GetTop
Vec4 GetTop()
SetBottom
null SetBottom(Vec4 plane)
SetFar
null SetFar(Vec4 plane)
SetLeft
null SetLeft(Vec4 plane)
SetNear
null SetNear(Vec4 plane)
SetRight
null SetRight(Vec4 plane)
SetTop
null SetTop(Vec4 plane)

Gamepad Class

Helper class holding the current and previous device state to enable delta state queries.

Use GetGamepadNames to query for available gamepad devices.

Functions

NamePrototypeDocumentation
Axes
float Axes(GamepadAxes axis)

Return the value of a gamepad axis.

Connected
bool Connected()

Gamepad was connected since the last update.

Constructor
Gamepad Constructor()
Gamepad Constructor(string name)
Disconnected
bool Disconnected()

Gamepad was disconnected since the last update.

Down
bool Down(GamepadButton btn)
DtAxes
float DtAxes(GamepadAxes axis)
IsConnected
bool IsConnected()

Gamepad is currently connected.

Pressed
bool Pressed(GamepadButton btn)
Released
bool Released(GamepadButton btn)
Update
null Update()

GamepadState Class

Functions

NamePrototypeDocumentation
Axes
float Axes(GamepadAxes idx)
Button
bool Button(GamepadButton btn)
IsConnected
bool IsConnected()

Geometry Class

Base geometry object. Before a geometry can be displayed, it must be converted to Model by the asset compiler (see Compiling to Assets).

To programmatically create a geometry use GeometryBuilder.

GeometryBuilder Class

Use the geometry builder to programmatically create geometries. No optimization are performed by the geometry builder on the input data.

To programmatically build a geometry for immediate display see ModelBuilder to directly build models.

Functions

NamePrototypeDocumentation
AddPolygon
null AddPolygon(UInt32List idxs, integer material)
AddQuad
null AddQuad(integer a, integer b, integer c, integer d, integer material)
AddTriangle
null AddTriangle(integer a, integer b, integer c, integer material)
AddVertex
null AddVertex(Vertex vtx)
Clear
null Clear()
Constructor
GeometryBuilder Constructor()
Make
Geometry Make()

IAudioStreamer Class

Functions

NamePrototypeDocumentation
Close
integer Close(integer ref)
GetDuration
integer GetDuration(integer ref)
GetTimeStamp
integer GetTimeStamp(integer ref)
IsEnded
integer IsEnded(integer ref)
Open
integer Open(string name)
Seek
integer Seek(integer ref, integer t)
Shutdown
null Shutdown()
Startup
integer Startup()

ImDrawList Class

Immediate GUI drawing list. This object can be used to perform custom drawing operations on top of an imgui window.

Functions

NamePrototypeDocumentation
AddBezierCubic
null AddBezierCubic(Vec2 pos0, Vec2 cp0, Vec2 cp1, Vec2 pos1, integer col, float thickness)
null AddBezierCubic(Vec2 pos0, Vec2 cp0, Vec2 cp1, Vec2 pos1, integer col, float thickness, integer num_segments)
AddCircle
null AddCircle(Vec2 centre, float radius, integer col)
null AddCircle(Vec2 centre, float radius, integer col, integer num_segments)
null AddCircle(Vec2 centre, float radius, integer col, integer num_segments, float thickness)
AddCircleFilled
null AddCircleFilled(Vec2 centre, float radius, integer col)
null AddCircleFilled(Vec2 centre, float radius, integer col, integer num_segments)
AddConvexPolyFilled
null AddConvexPolyFilled(Vec2List points, integer col)
AddImage
null AddImage(Texture tex, Vec2 a, Vec2 b)
null AddImage(Texture tex, Vec2 a, Vec2 b, Vec2 uv_a, Vec2 uv_b)
null AddImage(Texture tex, Vec2 a, Vec2 b, Vec2 uv_a, Vec2 uv_b, integer col)
AddImageQuad
null AddImageQuad(Texture tex, Vec2 a, Vec2 b, Vec2 c, Vec2 d)
null AddImageQuad(Texture tex, Vec2 a, Vec2 b, Vec2 c, Vec2 d, Vec2 uv_a, Vec2 uv_b, Vec2 uv_c, Vec2 uv_d)
null AddImageQuad(Texture tex, Vec2 a, Vec2 b, Vec2 c, Vec2 d, Vec2 uv_a, Vec2 uv_b, Vec2 uv_c, Vec2 uv_d, integer col)
AddImageRounded
null AddImageRounded(Texture tex, Vec2 a, Vec2 b, Vec2 uv_a, Vec2 uv_b, integer col, float rounding)
null AddImageRounded(Texture tex, Vec2 a, Vec2 b, Vec2 uv_a, Vec2 uv_b, integer col, float rounding, ImDrawFlags flags)
AddLine
null AddLine(Vec2 a, Vec2 b, integer col)
null AddLine(Vec2 a, Vec2 b, integer col, float thickness)
AddPolyline
null AddPolyline(Vec2List points, integer col, bool closed, float thickness)
AddQuad
null AddQuad(Vec2 a, Vec2 b, Vec2 c, Vec2 d, integer col)
null AddQuad(Vec2 a, Vec2 b, Vec2 c, Vec2 d, integer col, float thickness)
AddQuadFilled
null AddQuadFilled(Vec2 a, Vec2 b, Vec2 c, Vec2 d, integer col)
AddRect
null AddRect(Vec2 a, Vec2 b, integer col)
null AddRect(Vec2 a, Vec2 b, integer col, float rounding)
null AddRect(Vec2 a, Vec2 b, integer col, float rounding, integer rounding_corner_flags)
null AddRect(Vec2 a, Vec2 b, integer col, float rounding, integer rounding_corner_flags, float thickness)
AddRectFilled
null AddRectFilled(Vec2 a, Vec2 b, integer col)
null AddRectFilled(Vec2 a, Vec2 b, integer col, float rounding)
null AddRectFilled(Vec2 a, Vec2 b, integer col, float rounding, integer rounding_corner_flags)
AddRectFilledMultiColor
null AddRectFilledMultiColor(Vec2 a, Vec2 b, integer col_upr_left, integer col_upr_right, integer col_bot_right, integer col_bot_left)
AddText
null AddText(Vec2 pos, integer col, string text)
null AddText(ImFont font, float font_size, Vec2 pos, integer col, string text)
null AddText(ImFont font, float font_size, Vec2 pos, integer col, string text, float wrap_width)
null AddText(ImFont font, float font_size, Vec2 pos, integer col, string text, float wrap_width, Vec4 cpu_fine_clip_rect)
AddTriangle
null AddTriangle(Vec2 a, Vec2 b, Vec2 c, integer col)
null AddTriangle(Vec2 a, Vec2 b, Vec2 c, integer col, float thickness)
AddTriangleFilled
null AddTriangleFilled(Vec2 a, Vec2 b, Vec2 c, integer col)
ChannelsMerge
null ChannelsMerge()
ChannelsSetCurrent
null ChannelsSetCurrent(integer channel_index)
ChannelsSplit
null ChannelsSplit(integer channels_count)
GetClipRectMax
Vec2 GetClipRectMax()
GetClipRectMin
Vec2 GetClipRectMin()
PathArcTo
null PathArcTo(Vec2 centre, float radius, float a_min, float a_max)
null PathArcTo(Vec2 centre, float radius, float a_min, float a_max, integer num_segments)
PathArcToFast
null PathArcToFast(Vec2 centre, float radius, integer a_min_of_12, integer a_max_of_12)
PathBezierCubicCurveTo
null PathBezierCubicCurveTo(Vec2 p1, Vec2 p2, Vec2 p3)
null PathBezierCubicCurveTo(Vec2 p1, Vec2 p2, Vec2 p3, integer num_segments)
PathClear
null PathClear()
PathFillConvex
null PathFillConvex(integer col)
PathLineTo
null PathLineTo(Vec2 pos)
PathLineToMergeDuplicate
null PathLineToMergeDuplicate(Vec2 pos)
PathRect
null PathRect(Vec2 rect_min, Vec2 rect_max)
null PathRect(Vec2 rect_min, Vec2 rect_max, float rounding)
null PathRect(Vec2 rect_min, Vec2 rect_max, float rounding, ImDrawFlags flags)
PathStroke
null PathStroke(integer col, bool closed)
null PathStroke(integer col, bool closed, float thickness)
PopClipRect
null PopClipRect()
PopTextureID
null PopTextureID()
PushClipRect
null PushClipRect(Vec2 clip_rect_min, Vec2 clip_rect_max)
null PushClipRect(Vec2 clip_rect_min, Vec2 clip_rect_max, bool intersect_with_curent_clip_rect)
PushClipRectFullScreen
null PushClipRectFullScreen()
PushTextureID
null PushTextureID(Texture tex)

ImFont Class

Immediate GUI font.

Instance Class

Component to instantiate a scene as a child of a node upon setup.

Functions

NamePrototypeDocumentation
ClearOnInstantiateAnim
null ClearOnInstantiateAnim()
GetOnInstantiateAnim
string GetOnInstantiateAnim()
GetOnInstantiateAnimLoopMode
AnimLoopMode GetOnInstantiateAnimLoopMode()
GetOnInstantiatePlayAnimRef
ScenePlayAnimRef GetOnInstantiatePlayAnimRef()
GetPath
string GetPath()
IsValid
bool IsValid()
SetOnInstantiateAnim
null SetOnInstantiateAnim(string anim)
SetOnInstantiateAnimLoopMode
null SetOnInstantiateAnimLoopMode(AnimLoopMode loop_mode)
SetPath
null SetPath(string path)
operator==
bool operator==(Instance i)

intList Class

Functions

NamePrototypeDocumentation
at
integer at(integer idx)
clear
null clear()
push_back
null push_back(integer v)
reserve
null reserve(integer size)
size
integer size()

IntRect Class

Variables

NameType
exinteger
eyinteger
sxinteger
syinteger

Functions

NamePrototypeDocumentation
Constructor
IntRect Constructor()
IntRect Constructor(integer x, integer y)
IntRect Constructor(integer sx, integer sy, integer ex, integer ey)
IntRect Constructor(IntRect rect)

IsoSurface Class

An iso-surface represents points of a constant value within a volume of space. This class holds a fixed-size 3-dimensional grid of values that can efficiently be converted to a Model at runtime.

iVec2 Class

2-dimensional integer vector.

Variables

NameType
Onestatic iVec2
Zerostatic iVec2
xinteger
yinteger

Functions

NamePrototypeDocumentation
Constructor
iVec2 Constructor()
iVec2 Constructor(integer x, integer y)
iVec2 Constructor(iVec2 v)
iVec2 Constructor(Vec3 v)
iVec2 Constructor(Vec4 v)
Set
null Set(integer x, integer y)
operator*
iVec2 operator*(iVec2 v)
iVec2 operator*(integer k)
operator*=
null operator*=(iVec2 v)
null operator*=(integer k)
operator+
iVec2 operator+(iVec2 v)
iVec2 operator+(integer k)
operator+=
null operator+=(iVec2 v)
null operator+=(integer k)
operator-
iVec2 operator-(iVec2 v)
iVec2 operator-(integer k)
operator-=
null operator-=(iVec2 v)
null operator-=(integer k)
operator/
iVec2 operator/(iVec2 v)
iVec2 operator/(integer k)
operator/=
null operator/=(iVec2 v)
null operator/=(integer k)

iVec2List Class

Functions

NamePrototypeDocumentation
at
iVec2 at(integer idx)
clear
null clear()
push_back
null push_back(iVec2 v)
reserve
null reserve(integer size)
size
integer size()

IVideoStreamer Class

Functions

NamePrototypeDocumentation
Close
integer Close(integer h)
FreeFrame
integer FreeFrame(integer h, integer frame)
GetDuration
integer GetDuration(integer h)
GetFrame
integer, integer, integer, integer, integer, VideoFrameFormat GetFrame(integer h, integer ptr, integer width, integer height, integer pitch, VideoFrameFormat format)
GetTimeStamp
integer GetTimeStamp(integer h)
IsEnded
integer IsEnded(integer h)
Open
integer Open(string name)
Pause
integer Pause(integer h)
Play
integer Play(integer h)
Seek
integer Seek(integer h, integer t)
Shutdown
null Shutdown()
Startup
integer Startup()

Joystick Class

Functions

NamePrototypeDocumentation
Axes
float Axes(integer axis)
AxesCount
integer AxesCount()
ButtonsCount
integer ButtonsCount()
Connected
bool Connected()
Constructor
Joystick Constructor()
Joystick Constructor(string name)
Disconnected
bool Disconnected()
Down
bool Down(integer btn)
DtAxes
float DtAxes(integer axis)
GetDeviceName
string GetDeviceName()
IsConnected
bool IsConnected()
Pressed
bool Pressed(integer btn)
Released
bool Released(integer btn)
Update
null Update()

JoystickState Class

Functions

NamePrototypeDocumentation
Axes
float Axes(integer idx)
Button
bool Button(integer btn)
IsConnected
bool IsConnected()

JSON Class

JSON read/write object.

Keyboard Class

Helper class holding the current and previous device state to enable delta state queries.

Use GetKeyboardNames to query for available keyboard devices.

Functions

NamePrototypeDocumentation
Constructor
Keyboard Constructor()
Keyboard Constructor(string name)
Down
bool Down(Key key)
GetOldState
KeyboardState GetOldState()
GetState
KeyboardState GetState()
Pressed
bool Pressed(Key key)
Released
bool Released(Key key)
Update
null Update()

KeyboardState Class

Functions

NamePrototypeDocumentation
Key
bool Key(Key key)

Light Class

Add this component to a node to turn it into a light source, see Using the Forward Pipeline.

Functions

NamePrototypeDocumentation
GetDiffuseColor
Color GetDiffuseColor()
GetDiffuseIntensity
float GetDiffuseIntensity()
GetInnerAngle
float GetInnerAngle()
GetOuterAngle
float GetOuterAngle()
GetPSSMSplit
Vec4 GetPSSMSplit()
GetPriority
float GetPriority()
GetRadius
float GetRadius()

Get the light range in meters.

GetShadowFar
float GetShadowFar()
GetShadowNear
float GetShadowNear()
GetShadowType
LightShadowType GetShadowType()
GetSpecularColor
Color GetSpecularColor()
GetSpecularIntensity
float GetSpecularIntensity()
GetType
LightType GetType()

Return the LightType.

IsValid
bool IsValid()
SetDiffuseColor
null SetDiffuseColor(Color v)
SetDiffuseIntensity
null SetDiffuseIntensity(float v)
SetInnerAngle
null SetInnerAngle(float v)
SetOuterAngle
null SetOuterAngle(float v)
SetPSSMSplit
null SetPSSMSplit(Vec4 v)
SetPriority
null SetPriority(float v)
SetRadius
null SetRadius(float v)

Set the light range in meters. No light will be contributed to elements further away than this distance from the node world position.

SetShadowFar
null SetShadowFar(float v)
SetShadowNear
null SetShadowNear(float v)
SetShadowType
null SetShadowType(LightShadowType v)
SetSpecularColor
null SetSpecularColor(Color v)
SetSpecularIntensity
null SetSpecularIntensity(float v)
SetType
null SetType(LightType v)

Set the LightType.

operator==
bool operator==(Light l)

LuaObject Class

Opaque reference to an Lua object. This type is used to transfer values between VMs, see Scripting.

LuaObjectList Class

Functions

NamePrototypeDocumentation
at
LuaObject at(integer idx)
clear
null clear()
push_back
null push_back(LuaObject v)
reserve
null reserve(integer size)
size
integer size()

Mat3 Class

A 3x3 matrix used to store rotation.

Mat4 Class

A 3x4 matrix used to store complete transformation including rotation, scale and position.

Mat44 Class

A 4x4 matrix used to store projection matrices.

Mat4List Class

Functions

NamePrototypeDocumentation
at
Mat4 at(integer idx)
clear
null clear()
push_back
null push_back(Mat4 v)
reserve
null reserve(integer size)
size
integer size()

Material Class

High-level description of visual aspects of a surface. A material is comprised of a PipelineProgramRef, per-uniform value or texture, and a RenderState.

See Using the Forward Pipeline and Writing a Pipeline Shader.

MaterialList Class

Functions

NamePrototypeDocumentation
at
Material at(integer idx)
clear
null clear()
push_back
null push_back(Material v)
reserve
null reserve(integer size)
size
integer size()

MaterialRef Class

Reference to a Material inside a PipelineResources object.

MinMax Class

3D bounding volume defined by a minimum and maximum position.

Variables

NameType
mnVec3
mxVec3

Functions

NamePrototypeDocumentation
Constructor
MinMax Constructor()
MinMax Constructor(Vec3 min, Vec3 max)
operator!=
bool operator!=(MinMax minmax)
operator==
bool operator==(MinMax minmax)

Model Class

Runtime version of a Geometry. A model can be drawn to screen by calling DrawModel or by assigning it to the Object component of a node.

To programmatically create a model see ModelBuilder.

ModelBuilder Class

Use the model builder to programmatically build models at runtime.

The input data is optimized upon submission.

Functions

NamePrototypeDocumentation
AddPolygon
null AddPolygon(UInt32List idxs)
AddQuad
null AddQuad(integer a, integer b, integer c, integer d)
AddTriangle
null AddTriangle(integer a, integer b, integer c)
AddVertex
integer AddVertex(Vertex vtx)

Add a vertex to the builder database. Use the returned optimized index to submit primitives using methods such as ModelBuilder.AddTriangle.

Clear
null Clear()

Clear all submitted data up to this point.

Constructor
ModelBuilder Constructor()
EndList
null EndList(integer material)

End the current primitive list and start a new one.

GetCurrentListIndexCount
integer GetCurrentListIndexCount()

Return the number of indexes in the current list.

See ModelBuilder.EndList.

MakeModel
Model MakeModel(VertexLayout decl)

Create a model from all data submitted up to this point.

ModelRef Class

Monitor Class

MonitorList Class

Functions

NamePrototypeDocumentation
at
Monitor at(integer idx)
clear
null clear()
push_back
null push_back(Monitor v)
reserve
null reserve(integer size)
size
integer size()

MonitorMode Class

Variables

NameType
frequencyinteger
namestring
rectIntRect
rotationMonitorRotation
supported_rotationsinteger

MonitorModeList Class

Functions

NamePrototypeDocumentation
at
MonitorMode at(integer idx)
clear
null clear()
push_back
null push_back(MonitorMode v)
reserve
null reserve(integer size)
size
integer size()

Mouse Class

Helper class holding the current and previous device state to enable delta state queries.

Use GetMouseNames to query for available mouse devices.

Functions

NamePrototypeDocumentation
Constructor
Mouse Constructor()
Mouse Constructor(string name)
Down
bool Down(integer button)
DtX
integer DtX()
DtY
integer DtY()
GetOldState
MouseState GetOldState()
GetState
MouseState GetState()
HWheel
integer HWheel()
Pressed
bool Pressed(integer button)
Released
bool Released(integer button)
Update
null Update()
Wheel
integer Wheel()
X
integer X()
Y
integer Y()

MouseState Class

Functions

NamePrototypeDocumentation
Button
bool Button(MouseButton btn)
HWheel
integer HWheel()
Wheel
integer Wheel()
X
integer X()
Y
integer Y()

NavMesh Class

Navigation mesh that can be queried using a NavMeshQuery to compute the most efficient path between two world-space positions.

NavMeshQuery Class

Navigation mesh query object. Queries are performed in world space.

See Navigation.

Node Class

The base element of a scene, see Working with Scene.

Functions

NamePrototypeDocumentation
ComputeCameraViewState
ViewState ComputeCameraViewState(Vec2 aspect_ratio)
ComputeWorld
Mat4 ComputeWorld()
DestroyInstance
null DestroyInstance()
Disable
null Disable()
Enable
null Enable()
GetCamera
Camera GetCamera()

Return the Camera component of the node.

GetCollision
Collision GetCollision(integer slot)

Return the Collision component attached to the Node at the desired slot.

GetCollisionCount
integer GetCollisionCount()

Return the amount of Collision components of a Node.

GetFlags
integer GetFlags()
GetInstance
Instance GetInstance()

Return the Instance component of a Node.

GetInstanceSceneAnim
SceneAnimRef GetInstanceSceneAnim(string path)
GetInstanceSceneView
SceneView GetInstanceSceneView()
GetLight
Light GetLight()

Return the Light component of the node.

GetMinMax
bool, MinMax GetMinMax(PipelineResources resources)
GetName
string GetName()

Return the node name.

GetObject
Object GetObject()

Return Object component of the node.

GetRigidBody
RigidBody GetRigidBody()

Return the RigidBody component of a Node.

GetScript
Script GetScript(integer idx)
GetScriptCount
integer GetScriptCount()
GetTransform
Transform GetTransform()

Return the Transform component of the node.

GetUid
integer GetUid()

Return the unique ID.

GetWorld
Mat4 GetWorld()
HasCamera
bool HasCamera()

Return true if the Node has a Camera component.

HasInstance
bool HasInstance()

Return true if the Node has an Instance component.

HasLight
bool HasLight()

Return true if the Node has a Light component.

HasObject
bool HasObject()

Return true if the Node has an Object (a geometry) component.

HasRigidBody
bool HasRigidBody()

Return true if the Node has a RigidBody component.

HasTransform
bool HasTransform()

Return true if the Node has a Transform component.

IsEnabled
bool IsEnabled()
IsInstantiatedBy
Node IsInstantiatedBy()
IsItselfEnabled
bool IsItselfEnabled()
IsValid
bool IsValid()

Return true if the Node still exist.

RemoveCamera
null RemoveCamera()

Remove the Camera component from the Node.

RemoveCollision
null RemoveCollision(Collision c)
null RemoveCollision(integer slot)

Remove the Collision component attached to the slot of the Node.

RemoveLight
null RemoveLight()

Remove the Light component from the Node.

RemoveObject
null RemoveObject()

Remove the Object component from the Node.

RemoveRigidBody
null RemoveRigidBody()

Remove the RigidBody component from the Node.

RemoveScript
null RemoveScript(Script s)
null RemoveScript(integer slot)
RemoveTransform
null RemoveTransform()

Remove the Transform component from the Node.

SetCamera
null SetCamera(Camera c)

Set the Camera component of a node. See Scene.CreateCamera.

SetCollision
null SetCollision(integer slot, Collision c)

Set the Collision component of a Node at the desired slot. This is how you combine several collision shapes on a single node.

SetFlags
null SetFlags(integer flags)
SetInstance
null SetInstance(Instance instance)

Set the Instance component of a Node.

SetLight
null SetLight(Light l)
SetName
null SetName(string name)

Set the node name.

SetObject
null SetObject(Object o)

Set the Object component of a node.

See Scene.CreateObject.

SetRigidBody
null SetRigidBody(RigidBody b)

Set the RigidBody component of a node.

SetScript
null SetScript(integer idx, Script s)
SetTransform
null SetTransform(Transform t)

Set the Transform component of a node.

See Scene.CreateTransform.

SetWorld
null SetWorld(Mat4 world)
SetupInstanceFromAssets
bool SetupInstanceFromAssets(PipelineResources resources, PipelineInfo pipeline)
bool SetupInstanceFromAssets(PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags)
SetupInstanceFromFile
bool SetupInstanceFromFile(PipelineResources resources, PipelineInfo pipeline)
bool SetupInstanceFromFile(PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags)
StartOnInstantiateAnim
null StartOnInstantiateAnim()
StopOnInstantiateAnim
null StopOnInstantiateAnim()
operator==
bool operator==(Node n)

Return true if both objects point to the same node instance, false otherwise.

NodeList Class

Functions

NamePrototypeDocumentation
at
Node at(integer idx)
clear
null clear()
push_back
null push_back(Node v)
reserve
null reserve(integer size)
size
integer size()

NodePairContacts Class

Object Class

This components draws a Model. It stores the material table used to draw the model.

Functions

NamePrototypeDocumentation
ClearModelRef
null ClearModelRef()
GetBone
Node GetBone(integer idx)
GetBoneCount
integer GetBoneCount()
GetMaterial
Material GetMaterial(integer slot_idx)
Material GetMaterial(string name)

Return the object Material at index.

GetMaterialCount
integer GetMaterialCount()

Return the number of Material in the object material table.

GetMaterialName
string GetMaterialName(integer slot_idx)
GetMinMax
bool, MinMax GetMinMax(PipelineResources resources)
GetModelRef
ModelRef GetModelRef()

Return the ModelRef to display.

IsValid
bool IsValid()
SetBone
bool SetBone(integer idx, Node node)
SetBoneCount
null SetBoneCount(integer count)
SetMaterial
null SetMaterial(integer slot_idx, Material mat)

Set the object Material at index.

SetMaterialCount
null SetMaterialCount(integer count)

Set the number of Material in the object material table.

SetMaterialName
null SetMaterialName(integer slot_idx, string name)
SetModelRef
null SetModelRef(ModelRef r)

Set the ModelRef to display.

operator==
bool operator==(Object o)

OpenVREye Class

Matrices for a VR eye, see OpenVRState.

Variables

NameType
offsetMat4
projectionMat44

OpenVREyeFrameBuffer Class

Framebuffer for a VR eye. Render to two such buffer, one for each eye, before submitting them using OpenVRSubmitFrame.

Functions

NamePrototypeDocumentation
GetHandle
FrameBufferHandle GetHandle()

OpenVRState Class

OpenVR state including the body and head transformations, the left and right eye states and the render target dimensions expected by the backend.

Variables

NameType
bodyMat4
headMat4
heightinteger
inv_headMat4
leftOpenVREye
rightOpenVREye
widthinteger

OpenXREyeFrameBuffer Class

OpenXREyeFrameBufferList Class

Functions

NamePrototypeDocumentation
at
OpenXREyeFrameBuffer at(integer idx)
clear
null clear()
push_back
null push_back(OpenXREyeFrameBuffer v)
reserve
null reserve(integer size)
size
integer size()

OpenXRFrameInfo Class

Variables

NameType
id_fbsintList

Picture Class

The picture origin (0, 0) is in the top-left corner of its frame with the X and Y axises increasing toward the right and bottom.

To load and save a picture use LoadPicture, LoadPNG or SavePNG.

The Picture.SetData and Picture.GetData methods can be used to transfer data to and from a picture object.

Functions

NamePrototypeDocumentation
Constructor
Picture Constructor()
Picture Constructor(Picture picture)
Picture Constructor(integer width, integer height, PictureFormat format)
Picture Constructor(VoidPointer data, integer width, integer height, PictureFormat format)
CopyData
null CopyData(VoidPointer data, integer width, integer height, PictureFormat format)
GetData
integer GetData()
GetFormat
PictureFormat GetFormat()
GetHeight
integer GetHeight()

Return the picture height.

GetPixelRGBA
Color GetPixelRGBA(integer x, integer y)
GetWidth
integer GetWidth()

Return the picture width.

SetData
null SetData(VoidPointer data, integer width, integer height, PictureFormat format)
SetPixelRGBA
null SetPixelRGBA(integer x, integer y, Color col)

Pipeline Class

Rendering pipeline base class.

PipelineInfo Class

Variables

NameType
namestring

PipelineProgram Class

PipelineProgramRef Class

PipelineResources Class

Functions

NamePrototypeDocumentation
AddModel
ModelRef AddModel(string name, Model mdl)
AddProgram
PipelineProgramRef AddProgram(string name, PipelineProgram prg)
AddTexture
TextureRef AddTexture(string name, Texture tex)
Constructor
PipelineResources Constructor()
DestroyAllModels
null DestroyAllModels()
DestroyAllPrograms
null DestroyAllPrograms()
DestroyAllTextures
null DestroyAllTextures()
DestroyModel
null DestroyModel(ModelRef ref)
DestroyProgram
null DestroyProgram(PipelineProgramRef ref)
DestroyTexture
null DestroyTexture(TextureRef ref)
GetModel
Model GetModel(ModelRef ref)
GetModelName
string GetModelName(ModelRef ref)
GetProgram
GetProgramName
string GetProgramName(PipelineProgramRef ref)
GetTexture
Texture GetTexture(TextureRef ref)
GetTextureInfo
TextureInfo GetTextureInfo(TextureRef ref)
GetTextureName
string GetTextureName(TextureRef ref)
HasModel
ModelRef HasModel(string name)
HasProgram
PipelineProgramRef HasProgram(string name)
HasTexture
TextureRef HasTexture(string name)
HasTextureInfo
bool HasTextureInfo(TextureRef ref)
UpdateModel
null UpdateModel(ModelRef ref, Model mdl)
UpdateProgram
null UpdateProgram(PipelineProgramRef ref, PipelineProgram prg)
UpdateTexture
null UpdateTexture(TextureRef ref, Texture tex)

ProfilerFrame Class

ProgramHandle Class

Handle to a shader program.

Quaternion Class

Quaternion can be used to represent a 3d rotation. It provides a more compact representation of the rotation than Mat3 and can efficiently and correctly interpolate (see Slerp) between two rotations.

Variables

NameType
wfloat
xfloat
yfloat
zfloat

Functions

NamePrototypeDocumentation
Constructor
Quaternion Constructor()
Quaternion Constructor(float x, float y, float z, float w)
Quaternion Constructor(Quaternion q)
operator*
Quaternion operator*(float v)
Quaternion operator*(Quaternion q)
operator*=
null operator*=(float v)
null operator*=(Quaternion q)
operator+
Quaternion operator+(float v)
Quaternion operator+(Quaternion q)
operator+=
null operator+=(float v)
null operator+=(Quaternion q)
operator-
Quaternion operator-(float v)
Quaternion operator-(Quaternion q)
operator-=
null operator-=(float v)
null operator-=(Quaternion q)
operator/
Quaternion operator/(float v)
operator/=
null operator/=(float v)

RaycastOut Class

Contains the result of a physics raycast.

  • P: Position of the raycast hit
  • N: Normal of the raycast hit
  • Node: Node hit by the raycast
  • t: Parametric value of the intersection, ratio of the distance to the hit by the length of the raycast

Variables

NameType
NVec3
PVec3
nodeNode
tfloat

RaycastOutList Class

Functions

NamePrototypeDocumentation
at
RaycastOut at(integer idx)
clear
null clear()
push_back
null push_back(RaycastOut v)
reserve
null reserve(integer size)
size
integer size()

Rect Class

Variables

NameType
exfloat
eyfloat
sxfloat
syfloat

Functions

NamePrototypeDocumentation
Constructor
Rect Constructor()
Rect Constructor(float x, float y)
Rect Constructor(float sx, float sy, float ex, float ey)
Rect Constructor(Rect rect)

RenderState Class

RigidBody Class

Rigid body component, see Physics.

Functions

NamePrototypeDocumentation
GetAngularDamping
float GetAngularDamping()

Return the rigid body angular damping. A value of 0.0 means no damping, 1.0 means the maximal dissipation of the energy.

GetContinuousCollisionDetection
bool GetContinuousCollisionDetection()
GetFriction
float GetFriction()
GetLinearDamping
float GetLinearDamping()
GetRestitution
float GetRestitution()
GetRollingFriction
float GetRollingFriction()
GetType
RigidBodyType GetType()

Return the rigid body type. See RigidBody.SetType.

IsValid
bool IsValid()
SetAngularDamping
null SetAngularDamping(float damping)

Set the rigid body angular damping. A value of 0.0 means no damping, 1.0 means the maximal dissipation of the energy.

SetContinuousCollisionDetection
null SetContinuousCollisionDetection(bool enable)
SetFriction
null SetFriction(float friction)
SetLinearDamping
null SetLinearDamping(float damping)
SetRestitution
null SetRestitution(float restitution)
SetRollingFriction
null SetRollingFriction(float rolling_friction)
SetType
null SetType(RigidBodyType type)

Set the rigid body type.

operator==
bool operator==(RigidBody b)

SAO Class

Ambient occlusion post-process object holding internal states and resources.

Create with CreateSAOFromFile or CreateSAOFromAssets, use with ComputeSAO, finally call DestroySAO to dispose of resources when done.

Scene Class

A scene object representing a world populated with Node, see Working with Scene.

Variables

NameType
canvasCanvas
environmentEnvironment

Functions

NamePrototypeDocumentation
Clear
null Clear()

Remove all nodes from the scene.

ComputeCurrentCameraViewState
ViewState ComputeCurrentCameraViewState(Vec2 aspect_ratio)
ComputeWorldMatrices
null ComputeWorldMatrices()
Constructor
Scene Constructor()
CreateCamera
Camera CreateCamera()
Camera CreateCamera(float znear, float zfar)
Camera CreateCamera(float znear, float zfar, float fov)
CreateCollision
Collision CreateCollision()
CreateInstance
Instance CreateInstance()
CreateLight
Light CreateLight()
CreateLinearLight
Light CreateLinearLight(Color diffuse, float diffuse_intensity, Color specular, float specular_intensity)
Light CreateLinearLight(Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority)
Light CreateLinearLight(Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority, LightShadowType shadow_type)
Light CreateLinearLight(Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority, LightShadowType shadow_type, float shadow_bias)
Light CreateLinearLight(Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority, LightShadowType shadow_type, float shadow_bias, Vec4 pssm_split)
Light CreateLinearLight(Color diffuse, Color specular)
Light CreateLinearLight(Color diffuse, Color specular, float priority)
Light CreateLinearLight(Color diffuse, Color specular, float priority, LightShadowType shadow_type)
Light CreateLinearLight(Color diffuse, Color specular, float priority, LightShadowType shadow_type, float shadow_bias)
Light CreateLinearLight(Color diffuse, Color specular, float priority, LightShadowType shadow_type, float shadow_bias, Vec4 pssm_split)
CreateNode
Node CreateNode()
Node CreateNode(string name)

Create a Node in the scene.

CreateObject
Object CreateObject()
Object CreateObject(ModelRef model, MaterialList materials)
CreateOrthographicCamera
Camera CreateOrthographicCamera(float znear, float zfar)
Camera CreateOrthographicCamera(float znear, float zfar, float size)
CreatePointLight
Light CreatePointLight(float radius, Color diffuse, float diffuse_intensity, Color specular, float specular_intensity)
Light CreatePointLight(float radius, Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority)
Light CreatePointLight(float radius, Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority, LightShadowType shadow_type)
Light CreatePointLight(float radius, Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority, LightShadowType shadow_type, float shadow_bias)
Light CreatePointLight(float radius, Color diffuse, Color specular)
Light CreatePointLight(float radius, Color diffuse, Color specular, float priority)
Light CreatePointLight(float radius, Color diffuse, Color specular, float priority, LightShadowType shadow_type)
Light CreatePointLight(float radius, Color diffuse, Color specular, float priority, LightShadowType shadow_type, float shadow_bias)
CreateRigidBody
RigidBody CreateRigidBody()
CreateScript
Script CreateScript()
Script CreateScript(string path)
CreateSpotLight
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, float diffuse_intensity, Color specular, float specular_intensity)
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority)
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority, LightShadowType shadow_type)
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority, LightShadowType shadow_type, float shadow_bias)
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority, LightShadowType shadow_type, float shadow_bias, float shadow_near)
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, float diffuse_intensity, Color specular, float specular_intensity, float priority, LightShadowType shadow_type, float shadow_bias, float shadow_near, float shadow_far)
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, Color specular)
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, Color specular, float priority)
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, Color specular, float priority, LightShadowType shadow_type)
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, Color specular, float priority, LightShadowType shadow_type, float shadow_bias)
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, Color specular, float priority, LightShadowType shadow_type, float shadow_bias, float shadow_near)
Light CreateSpotLight(float radius, float inner_angle, float outer_angle, Color diffuse, Color specular, float priority, LightShadowType shadow_type, float shadow_bias, float shadow_near, float shadow_far)
CreateTransform
Transform CreateTransform()
Transform CreateTransform(Vec3 T)
Transform CreateTransform(Vec3 T, Vec3 R)
Transform CreateTransform(Vec3 T, Vec3 R, Vec3 S)
DestroyCamera
null DestroyCamera(Camera camera)
DestroyCollision
null DestroyCollision(Collision collision)
DestroyInstance
null DestroyInstance(Instance Instance)
DestroyLight
null DestroyLight(Light light)
DestroyNode
null DestroyNode(Node node)

Remove a Node from the scene.

DestroyObject
null DestroyObject(Object object)
DestroyRigidBody
null DestroyRigidBody(RigidBody rigid_body)
DestroyScript
null DestroyScript(Script script)
DestroyTransform
null DestroyTransform(Transform transform)
GarbageCollect
integer GarbageCollect()

Destroy any unreferenced components in the scene.

GetAllNodeCount
integer GetAllNodeCount()

Return the total number of nodes in the scene including instantiated ones. To exclude those, use Scene.GetNodeCount.

GetAllNodes
NodeList GetAllNodes()
GetAllNodesWithComponent
NodeList GetAllNodesWithComponent(NodeComponentIdx idx)
GetCurrentCamera
Node GetCurrentCamera()

Get the current camera.

GetKeys
StringList GetKeys()
GetMinMax
bool, MinMax GetMinMax(PipelineResources resources)
GetNode
Node GetNode(string name)

Get a node by name. For more complex queries see Scene.GetNodeEx.

GetNodeChildren
NodeList GetNodeChildren(Node node)

Return all children for a given node.

GetNodeCount
integer GetNodeCount()

Return the number of nodes in the scene excluding instantiated ones. To include those, use Scene.GetAllNodeCount.

GetNodeEx
Node GetNodeEx(string path)

Get a node by its absolute path in the node hierarchy.

A node path is constructed as follow:

  • Nodes are refered to by their name.
  • To address the child of a node, use the / delimiter between its parent name and the child name.
  • To address a node inside an instance component, use the : delimiter.
  • There is no limit on the number of delimiters you can use.

Examples:

Get the node named child parented to the root node.

child = scene.GetNodeEx('root/child')

Get the node named dummy instantiated by the root node.

dummy = my_scene.GetNodeEx('root:dummy')
GetNodes
NodeList GetNodes()

Return all nodes in scene.

GetNodesWithComponent
NodeList GetNodesWithComponent(NodeComponentIdx idx)
GetPlayingAnimNames
StringList GetPlayingAnimNames()
GetPlayingAnimRefs
ScenePlayAnimRefList GetPlayingAnimRefs()
GetSceneAnim
SceneAnimRef GetSceneAnim(string name)
GetSceneAnims
SceneAnimRefList GetSceneAnims()
GetScript
Script GetScript(integer slot_idx)
GetScriptCount
integer GetScriptCount()
GetValue
string GetValue(string key)
HasKey
bool HasKey(string key)
IsChildOf
bool IsChildOf(Node node, Node parent)
IsPlaying
bool IsPlaying(ScenePlayAnimRef ref)
IsRoot
bool IsRoot(Node node)
PlayAnim
ScenePlayAnimRef PlayAnim(SceneAnimRef ref, AnimLoopMode loop_mode)
ScenePlayAnimRef PlayAnim(SceneAnimRef ref, AnimLoopMode loop_mode, Easing easing)
ScenePlayAnimRef PlayAnim(SceneAnimRef ref, AnimLoopMode loop_mode, Easing easing, integer t_start)
ScenePlayAnimRef PlayAnim(SceneAnimRef ref, AnimLoopMode loop_mode, Easing easing, integer t_start, integer t_end)
ScenePlayAnimRef PlayAnim(SceneAnimRef ref, AnimLoopMode loop_mode, Easing easing, integer t_start, integer t_end, bool paused)
ScenePlayAnimRef PlayAnim(SceneAnimRef ref, AnimLoopMode loop_mode, Easing easing, integer t_start, integer t_end, bool paused, float t_scale)
ReadyWorldMatrices
null ReadyWorldMatrices()
RemoveKey
null RemoveKey(string key)
ReserveCameras
null ReserveCameras(integer count)
ReserveLights
null ReserveLights(integer count)

Allocates internal storage for the required number of Light components in one go.

ReserveNodes
null ReserveNodes(integer count)

Allocates internal storage for the required number of nodes in one go.

ReserveObjects
null ReserveObjects(integer count)

Allocates internal storage for the required number of Object components in one go.

ReserveScripts
null ReserveScripts(integer count)
ReserveTransforms
null ReserveTransforms(integer count)

Allocates internal storage for the required number of Transform components in one go.

SetCurrentCamera
null SetCurrentCamera(Node camera)

Set the current camera.

SetProbe
null SetProbe(TextureRef irradiance, TextureRef radiance, TextureRef brdf)
SetScript
null SetScript(integer slot_idx, Script script)
SetValue
null SetValue(string key, string value)
StopAllAnims
null StopAllAnims()
StopAnim
null StopAnim(ScenePlayAnimRef ref)
Update
null Update(integer dt)

Start the Update phase of the scene.

UpdatePlayingAnims
null UpdatePlayingAnims(integer dt)

SceneAnimRef Class

Reference to a scene animation.

SceneAnimRefList Class

Functions

NamePrototypeDocumentation
at
SceneAnimRef at(integer idx)
clear
null clear()
push_back
null push_back(SceneAnimRef v)
reserve
null reserve(integer size)
size
integer size()

SceneBullet3Physics Class

Newton physics for scene physics and collision components.

See Physics.

Functions

NamePrototypeDocumentation
Add6DofConstraint
btGeneric6DofConstraint Add6DofConstraint(Node nodeA, Node nodeB, Mat4 anchorALocal, Mat4 anchorBInLocalSpaceA)
Clear
null Clear()
ClearNodes
null ClearNodes()
CollectCollisionEvents
NodePairContacts CollectCollisionEvents(Scene scene)
Constructor
SceneBullet3Physics Constructor()
SceneBullet3Physics Constructor(integer thread_count)
GarbageCollect
integer GarbageCollect(Scene scene)
GarbageCollectResources
integer GarbageCollectResources()
NodeAddForce
null NodeAddForce(Node node, Vec3 F)
null NodeAddForce(Node node, Vec3 F, Vec3 world_pos)
NodeAddImpulse
null NodeAddImpulse(Node node, Vec3 dt_velocity)
null NodeAddImpulse(Node node, Vec3 dt_velocity, Vec3 world_pos)
NodeAddTorque
null NodeAddTorque(Node node, Vec3 T)
NodeAddTorqueImpulse
null NodeAddTorqueImpulse(Node node, Vec3 dt_angular_velocity)
NodeCollideWorld
NodePairContacts NodeCollideWorld(Node node, Mat4 world)
NodePairContacts NodeCollideWorld(Node node, Mat4 world, integer max_contact)
NodeCreatePhysicsFromAssets
null NodeCreatePhysicsFromAssets(Node node)
NodeCreatePhysicsFromFile
null NodeCreatePhysicsFromFile(Node node)
NodeDestroyPhysics
null NodeDestroyPhysics(Node node)
NodeGetAngularFactor
Vec3 NodeGetAngularFactor(Node node)
NodeGetAngularVelocity
Vec3 NodeGetAngularVelocity(Node node)
NodeGetDeactivation
bool NodeGetDeactivation(Node node)
NodeGetLinearFactor
Vec3 NodeGetLinearFactor(Node node)
NodeGetLinearVelocity
Vec3 NodeGetLinearVelocity(Node node)
NodeGetPointVelocity
Vec3 NodeGetPointVelocity(Node node, Vec3 world_pos)
NodeHasBody
bool NodeHasBody(Node node)
NodeIsSleeping
bool NodeIsSleeping(Node node)
NodeResetWorld
null NodeResetWorld(Node node, Mat4 world)
NodeSetAngularFactor
null NodeSetAngularFactor(Node node, Vec3 k)
NodeSetAngularVelocity
null NodeSetAngularVelocity(Node node, Vec3 W)
NodeSetDeactivation
null NodeSetDeactivation(Node node, bool enable)
NodeSetLinearFactor
null NodeSetLinearFactor(Node node, Vec3 k)
NodeSetLinearVelocity
null NodeSetLinearVelocity(Node node, Vec3 V)
NodeStartTrackingCollisionEvents
null NodeStartTrackingCollisionEvents(Node node)
null NodeStartTrackingCollisionEvents(Node node, CollisionEventTrackingMode mode)
NodeStopTrackingCollisionEvents
null NodeStopTrackingCollisionEvents(Node node)
NodeTeleport
null NodeTeleport(Node node, Mat4 world)
NodeWake
null NodeWake(Node node)
RaycastAllHits
RaycastOutList RaycastAllHits(Scene scene, Vec3 p0, Vec3 p1)
RaycastFirstHit
RaycastOut RaycastFirstHit(Scene scene, Vec3 p0, Vec3 p1)
Remove6DofConstraint
null Remove6DofConstraint(btGeneric6DofConstraint constraint6Dof)
RenderCollision
null RenderCollision(integer view_id, VertexLayout vtx_layout, ProgramHandle prg, RenderState render_state, integer depth)
SceneCreatePhysicsFromAssets
null SceneCreatePhysicsFromAssets(Scene scene)
SceneCreatePhysicsFromFile
null SceneCreatePhysicsFromFile(Scene scene)
SetPreTickCallback
null SetPreTickCallback(SceneBullet3PhysicsPreTickCallback cbk)
StepSimulation
null StepSimulation(integer display_dt)
null StepSimulation(integer display_dt, integer step_dt)
null StepSimulation(integer display_dt, integer step_dt, integer max_step)
SyncTransformsFromScene
null SyncTransformsFromScene(Scene scene)
SyncTransformsToScene
null SyncTransformsToScene(Scene scene)

SceneBullet3PhysicsPreTickCallback Class

SceneClocks Class

Holds clocks for the different scene systems.

This is required as some system such as the physics system may run at a different rate than the scene.

SceneForwardPipelinePassViewId Class

SceneForwardPipelineRenderData Class

Holds all data required to draw a scene with the forward pipeline.

See Using the Forward Pipeline.

SceneLuaVM Class

Lua VM for scene script components.

See Scripting.

Functions

NamePrototypeDocumentation
Call
bool, LuaObjectList Call(Script script, string function, LuaObjectList args)
Constructor
SceneLuaVM Constructor()
CreateNodeScriptsFromAssets
ScriptList CreateNodeScriptsFromAssets(Scene scene, Node node)
CreateNodeScriptsFromFile
ScriptList CreateNodeScriptsFromFile(Scene scene, Node node)
CreateScriptFromAssets
bool CreateScriptFromAssets(Scene scene, Script script)
CreateScriptFromFile
bool CreateScriptFromFile(Scene scene, Script script)
CreateScriptFromSource
bool CreateScriptFromSource(Scene scene, Script script, string src)
DestroyScripts
null DestroyScripts(ScriptList scripts)
GarbageCollect
ScriptList GarbageCollect(Scene scene)
GetScriptCount
integer GetScriptCount()
GetScriptEnv
LuaObject GetScriptEnv(Script script)
GetScriptInterface
StringList GetScriptInterface(Script script)
GetScriptValue
LuaObject GetScriptValue(Script script, string name)
MakeLuaObject
LuaObject MakeLuaObject()
SceneCreateScriptsFromAssets
ScriptList SceneCreateScriptsFromAssets(Scene scene)
SceneCreateScriptsFromFile
ScriptList SceneCreateScriptsFromFile(Scene scene)
SetScriptValue
bool SetScriptValue(Script script, string name, LuaObject value)
bool SetScriptValue(Script script, string name, LuaObject value, bool notify)

ScenePhysics Class

Functions

NamePrototypeDocumentation
Add6DofConstraint
null Add6DofConstraint(Node nodeA, Node nodeB, Mat4 anchorALocal, Mat4 anchorBInLocalSpaceA)
Clear
null Clear()
ClearNodes
null ClearNodes()
CollectCollisionEvents
NodePairContacts CollectCollisionEvents(Scene scene)
Constructor
ScenePhysics Constructor()
ScenePhysics Constructor(integer thread_count)
GarbageCollect
integer GarbageCollect(Scene scene)
GarbageCollectResources
integer GarbageCollectResources()
NodeAddForce
null NodeAddForce(Node node, Vec3 F)
null NodeAddForce(Node node, Vec3 F, Vec3 world_pos)
NodeAddImpulse
null NodeAddImpulse(Node node, Vec3 dt_velocity)
null NodeAddImpulse(Node node, Vec3 dt_velocity, Vec3 world_pos)
NodeAddTorque
null NodeAddTorque(Node node, Vec3 T)
NodeAddTorqueImpulse
null NodeAddTorqueImpulse(Node node, Vec3 dt_angular_velocity)
NodeCreatePhysicsFromAssets
null NodeCreatePhysicsFromAssets(Node node)
NodeCreatePhysicsFromFile
null NodeCreatePhysicsFromFile(Node node)
NodeDestroyPhysics
null NodeDestroyPhysics(Node node)
NodeGetAngularFactor
Vec3 NodeGetAngularFactor(Node node)
NodeGetAngularVelocity
Vec3 NodeGetAngularVelocity(Node node)
NodeGetDeactivation
bool NodeGetDeactivation(Node node)
NodeGetLinearFactor
Vec3 NodeGetLinearFactor(Node node)
NodeGetLinearVelocity
Vec3 NodeGetLinearVelocity(Node node)
NodeGetPointVelocity
Vec3 NodeGetPointVelocity(Node node, Vec3 world_pos)
NodeHasBody
bool NodeHasBody(Node node)
NodeIsSleeping
bool NodeIsSleeping(Node node)
NodeResetWorld
null NodeResetWorld(Node node, Mat4 world)
NodeSetAngularFactor
null NodeSetAngularFactor(Node node, Vec3 k)
NodeSetAngularVelocity
null NodeSetAngularVelocity(Node node, Vec3 W)
NodeSetDeactivation
null NodeSetDeactivation(Node node, bool enable)
NodeSetLinearFactor
null NodeSetLinearFactor(Node node, Vec3 k)
NodeSetLinearVelocity
null NodeSetLinearVelocity(Node node, Vec3 V)
NodeStartTrackingCollisionEvents
null NodeStartTrackingCollisionEvents(Node node)
null NodeStartTrackingCollisionEvents(Node node, CollisionEventTrackingMode mode)
NodeStopTrackingCollisionEvents
null NodeStopTrackingCollisionEvents(Node node)
NodeTeleport
null NodeTeleport(Node node, Mat4 world)
NodeWake
null NodeWake(Node node)
RaycastAllHits
RaycastOutList RaycastAllHits(Scene scene, Vec3 p0, Vec3 p1)
RaycastFirstHit
RaycastOut RaycastFirstHit(Scene scene, Vec3 p0, Vec3 p1)
RenderCollision
null RenderCollision(integer view_id, VertexLayout vtx_layout, ProgramHandle prg, RenderState render_state, integer depth)
SceneCreatePhysicsFromAssets
null SceneCreatePhysicsFromAssets(Scene scene)
SceneCreatePhysicsFromFile
null SceneCreatePhysicsFromFile(Scene scene)
SetPreTickCallback
null SetPreTickCallback(ScenePhysicsPreTickCallback cbk)
StepSimulation
null StepSimulation(integer display_dt)
null StepSimulation(integer display_dt, integer step_dt)
null StepSimulation(integer display_dt, integer step_dt, integer max_step)
SyncTransformsFromScene
null SyncTransformsFromScene(Scene scene)
SyncTransformsToScene
null SyncTransformsToScene(Scene scene)

ScenePhysicsPreTickCallback Class

ScenePlayAnimRef Class

Reference to a playing scene animation.

ScenePlayAnimRefList Class

Functions

NamePrototypeDocumentation
at
ScenePlayAnimRef at(integer idx)
clear
null clear()
push_back
null push_back(ScenePlayAnimRef v)
reserve
null reserve(integer size)
size
integer size()

SceneView Class

Holds a view to a subset of a scene. Used by the instance system to track instantiated scene content.

See Node.GetInstanceSceneView and Working with Scene.

Functions

NamePrototypeDocumentation
GetNode
Node GetNode(Scene scene, string name)

Find a node by name in the view. Pass the host scene as the scene parameter.

See Working with Scene.

GetNodes
NodeList GetNodes(Scene scene)

Return all nodes in the view. Pass the host scene as the scene parameter.

See Working with Scene.

Script Class

Functions

NamePrototypeDocumentation
GetPath
string GetPath()
IsValid
bool IsValid()
SetPath
null SetPath(string path)
operator==
bool operator==(Script s)

ScriptList Class

Functions

NamePrototypeDocumentation
at
Script at(integer idx)
clear
null clear()
push_back
null push_back(Script v)
reserve
null reserve(integer size)
size
integer size()

SetDrawStatesCallback Class

Signal_returning_void_taking_const_char_ptr Class

Functions

NamePrototypeDocumentation
Connect
Disconnect
null Disconnect(TextInputCallbackConnection connection)
DisconnectAll
null DisconnectAll()
Emit
null Emit(string arg0)
GetListenerCount
integer GetListenerCount()

Signal_returning_void_taking_time_ns Class

Functions

NamePrototypeDocumentation
Connect
Disconnect
null Disconnect(TimeCallbackConnection connection)
DisconnectAll
null DisconnectAll()
Emit
null Emit(integer arg0)
GetListenerCount
integer GetListenerCount()

SpatializedSourceState Class

State for a spatialized audio source, see Playing Audio.

Variables

NameType
mtxMat4
repeatSourceRepeat
velVec3
volumefloat

Functions

NamePrototypeDocumentation
Constructor
SpatializedSourceState Constructor(Mat4 mtx)
SpatializedSourceState Constructor(Mat4 mtx, float volume)
SpatializedSourceState Constructor(Mat4 mtx, float volume, SourceRepeat repeat)
SpatializedSourceState Constructor(Mat4 mtx, float volume, SourceRepeat repeat, Vec3 vel)

SRanipalEyeState Class

Variables

NameType
eye_opennessfloat
gaze_direction_normalizedVec3
gaze_origin_mmVec3
pupil_diameter_mmfloat
pupil_diameter_validbool

SRanipalState Class

Variables

NameType
left_eyeSRanipalEyeState
right_eyeSRanipalEyeState

StereoSourceState Class

State for a stereo audio source, see Playing Audio.

Variables

NameType
panningfloat
repeatSourceRepeat
volumefloat

Functions

NamePrototypeDocumentation
Constructor
StereoSourceState Constructor()
StereoSourceState Constructor(float volume)
StereoSourceState Constructor(float volume, SourceRepeat repeat)
StereoSourceState Constructor(float volume, SourceRepeat repeat, float panning)

StringList Class

Functions

NamePrototypeDocumentation
at
string at(integer idx)
clear
null clear()
push_back
null push_back(string v)
reserve
null reserve(integer size)
size
integer size()

TextInputCallback Class

TextInputCallbackConnection Class

Texture Class

TextureInfo Class

Variables

NameType
bitsPerPixelinteger
cubeMapbool
depthinteger
formatTextureFormat
heightinteger
numLayersinteger
numMipsinteger
storageSizeinteger
widthinteger

TextureRef Class

TimeCallback Class

A function taking a time value as parameter with no return value, see Coordinates and Units System.

TimeCallbackConnection Class

Transform Class

Transformation component for a Node, see Working with Scene.

Functions

NamePrototypeDocumentation
ClearParent
null ClearParent()
GetParent
Node GetParent()

Return the parent node for this Transform.

GetPos
Vec3 GetPos()

Return the transform position.

If you want the visual position of a Node with a rigid body, use GetT on Transform.GetWorld. See Physics.

GetPosRot
Vec3, Vec3 GetPosRot()
GetRot
Vec3 GetRot()

Get the transform rotation. If you want the visual rotation of a Node with a rigid body, use GetRotation on the matrix returned by Transform.GetWorld. See Physics.

GetScale
Vec3 GetScale()

Get the transform scale.

GetTRS
TransformTRS GetTRS()

Return the TransformTRS.

GetWorld
Mat4 GetWorld()

Return the world matrix.

IsValid
bool IsValid()
SetLocal
null SetLocal(Mat4 local)
SetParent
null SetParent(Node n)

Set the parent node for this transform. This transform will then inherit the transformation of its parent node's Transform component.

SetPos
null SetPos(Vec3 T)

Set the transform position.

When the Node has a RigidBody component, Transform.SetPos is overrided by physics. See Physics.

SetPosRot
null SetPosRot(Vec3 pos, Vec3 rot)
SetRot
null SetRot(Vec3 R)

Set the transform rotation from a vector of Euler angles.

When the Node has a RigidBody component, Transform.SetRot is overrided by physics. See Physics.

SetScale
null SetScale(Vec3 S)

Set the transform scale.

SetTRS
null SetTRS(TransformTRS TRS)

Set the TransformTRS.

SetWorld
null SetWorld(Mat4 world)

Set the world matrix.

When the Node has a RigidBody component, SetWorld is overrided by physics.

operator==
bool operator==(Transform t)

TransformTRS Class

Translation, rotation and scale packed as a single object.

Variables

NameType
posVec3
rotVec3
sclVec3

Functions

NamePrototypeDocumentation
Constructor
TransformTRS Constructor()

UInt16List Class

Functions

NamePrototypeDocumentation
at
integer at(integer idx)
clear
null clear()
push_back
null push_back(integer v)
reserve
null reserve(integer size)
size
integer size()

UInt32List Class

Functions

NamePrototypeDocumentation
at
integer at(integer idx)
clear
null clear()
push_back
null push_back(integer v)
reserve
null reserve(integer size)
size
integer size()

UniformSetTexture Class

Command object to set a uniform texture at draw time.

UniformSetTextureList Class

Functions

NamePrototypeDocumentation
at
UniformSetTexture at(integer idx)
clear
null clear()
push_back
null push_back(UniformSetTexture v)
reserve
null reserve(integer size)
size
integer size()

UniformSetValue Class

Command object to set a uniform value at draw time.

UniformSetValueList Class

Functions

NamePrototypeDocumentation
at
UniformSetValue at(integer idx)
clear
null clear()
push_back
null push_back(UniformSetValue v)
reserve
null reserve(integer size)
size
integer size()

update_controllersCallback Class

Vec2 Class

2-dimensional floating point vector.

Variables

NameType
Onestatic Vec2
Zerostatic Vec2
xfloat
yfloat

Functions

NamePrototypeDocumentation
Constructor
Vec2 Constructor()
Vec2 Constructor(float x, float y)
Vec2 Constructor(Vec2 v)
Vec2 Constructor(Vec3 v)
Vec2 Constructor(Vec4 v)
Set
null Set(float x, float y)
operator*
Vec2 operator*(Vec2 v)
Vec2 operator*(float k)
operator*=
null operator*=(Vec2 v)
null operator*=(float k)
operator+
Vec2 operator+(Vec2 v)
Vec2 operator+(float k)
operator+=
null operator+=(Vec2 v)
null operator+=(float k)
operator-
Vec2 operator-(Vec2 v)
Vec2 operator-(float k)
operator-=
null operator-=(Vec2 v)
null operator-=(float k)
operator/
Vec2 operator/(Vec2 v)
Vec2 operator/(float k)
operator/=
null operator/=(Vec2 v)
null operator/=(float k)

Vec2List Class

Functions

NamePrototypeDocumentation
at
Vec2 at(integer idx)

Gets the element at the specified index.

clear
null clear()
push_back
null push_back(Vec2 v)

Adds an element to the end.

reserve
null reserve(integer size)
size
integer size()

Returns the number of stored elements.

Vec3 Class

3-dimensional vector.

Variables

NameType
Backstatic Vec3
Downstatic Vec3
Frontstatic Vec3
Leftstatic Vec3
Onestatic Vec3
Rightstatic Vec3
Upstatic Vec3
Zerostatic Vec3
xfloat
yfloat
zfloat

Functions

NamePrototypeDocumentation
Constructor
Vec3 Constructor()
Vec3 Constructor(float x, float y, float z)
Vec3 Constructor(Vec2 v)
Vec3 Constructor(iVec2 v)
Vec3 Constructor(Vec3 v)
Vec3 Constructor(Vec4 v)
Set
null Set(float x, float y, float z)
operator!=
bool operator!=(Vec3 v)
operator*
Vec3 operator*(Vec3 v)
Vec3 operator*(float k)
operator*=
null operator*=(Vec3 v)
null operator*=(float k)
operator+
Vec3 operator+(Vec3 v)
Vec3 operator+(float k)
operator+=
null operator+=(Vec3 v)
null operator+=(float k)
operator-
Vec3 operator-(Vec3 v)
Vec3 operator-(float k)
operator-=
null operator-=(Vec3 v)
null operator-=(float k)
operator/
Vec3 operator/(Vec3 v)
Vec3 operator/(float k)
operator/=
null operator/=(Vec3 v)
null operator/=(float k)
operator==
bool operator==(Vec3 v)

Vec3List Class

Functions

NamePrototypeDocumentation
at
Vec3 at(integer idx)
clear
null clear()
push_back
null push_back(Vec3 v)
reserve
null reserve(integer size)
size
integer size()

Vec4 Class

4-dimensional vector.

Variables

NameType
wfloat
xfloat
yfloat
zfloat

Functions

NamePrototypeDocumentation
Constructor
Vec4 Constructor()
Vec4 Constructor(float x, float y, float z)
Vec4 Constructor(float x, float y, float z, float w)
Vec4 Constructor(Vec2 v)
Vec4 Constructor(iVec2 v)
Vec4 Constructor(Vec3 v)
Vec4 Constructor(Vec4 v)
Set
null Set(float x, float y, float z)
null Set(float x, float y, float z, float w)
operator*
Vec4 operator*(Vec4 v)
Vec4 operator*(float k)
operator*=
null operator*=(Vec4 v)
null operator*=(float k)
operator+
Vec4 operator+(Vec4 v)
Vec4 operator+(float k)
operator+=
null operator+=(Vec4 v)
null operator+=(float k)
operator-
Vec4 operator-(Vec4 v)
Vec4 operator-(float k)
operator-=
null operator-=(Vec4 v)
null operator-=(float k)
operator/
Vec4 operator/(Vec4 v)
Vec4 operator/(float k)
operator/=
null operator/=(Vec4 v)
null operator/=(float k)

Vec4List Class

Functions

NamePrototypeDocumentation
at
Vec4 at(integer idx)
clear
null clear()
push_back
null push_back(Vec4 v)
reserve
null reserve(integer size)
size
integer size()

Vertex Class

Variables

NameType
binormalVec3
color0Color
color1Color
color2Color
color3Color
normalVec3
posVec3
tangentVec3
uv0Vec2
uv1Vec2
uv2Vec2
uv3Vec2
uv4Vec2
uv5Vec2
uv6Vec2
uv7Vec2

Functions

NamePrototypeDocumentation
Constructor
Vertex Constructor()

VertexLayout Class

Memory layout and types of vertex attributes.

Functions

NamePrototypeDocumentation
Add
VertexLayout Add(Attrib attrib, integer count, AttribType type)
VertexLayout Add(Attrib attrib, integer count, AttribType type, bool normalized)
VertexLayout Add(Attrib attrib, integer count, AttribType type, bool normalized, bool as_int)
Begin
VertexLayout Begin()
Constructor
VertexLayout Constructor()
End
null End()
GetOffset
integer GetOffset(Attrib attrib)
GetSize
integer GetSize(integer count)
GetStride
integer GetStride()
Has
bool Has(Attrib attrib)
Skip
VertexLayout Skip(integer size)

Vertices Class

Helper class to generate vertex buffers for drawing primitives.

Functions

NamePrototypeDocumentation
Begin
Vertices Begin(integer vertex_index)
Clear
null Clear()
Constructor
Vertices Constructor(VertexLayout decl, integer count)
End
null End()
null End(bool validate)
GetCapacity
integer GetCapacity()
GetCount
integer GetCount()
GetData
VoidPointer GetData()
GetDecl
VertexLayout GetDecl()
GetSize
integer GetSize()
Reserve
null Reserve(integer count)
Resize
null Resize(integer count)
SetBinormal
Vertices SetBinormal(Vec3 binormal)
SetColor0
Vertices SetColor0(Color color)
SetColor1
Vertices SetColor1(Color color)
SetColor2
Vertices SetColor2(Color color)
SetColor3
Vertices SetColor3(Color color)
SetNormal
Vertices SetNormal(Vec3 normal)
SetPos
Vertices SetPos(Vec3 pos)
SetTangent
Vertices SetTangent(Vec3 tangent)
SetTexCoord0
Vertices SetTexCoord0(Vec2 uv)
SetTexCoord1
Vertices SetTexCoord1(Vec2 uv)
SetTexCoord2
Vertices SetTexCoord2(Vec2 uv)
SetTexCoord3
Vertices SetTexCoord3(Vec2 uv)
SetTexCoord4
Vertices SetTexCoord4(Vec2 uv)
SetTexCoord5
Vertices SetTexCoord5(Vec2 uv)
SetTexCoord6
Vertices SetTexCoord6(Vec2 uv)
SetTexCoord7
Vertices SetTexCoord7(Vec2 uv)

ViewState Class

Everything required to define an observer inside a 3d world. This object holds the projection matrix and its associated frustum as well as the transformation of the observer.

The world content is transformed by the observer view matrix before being projected to screen using its projection matrix.

Variables

NameType
frustumFrustum
projMat44
viewMat4

VoidPointer Class

VRController Class

Helper class holding the current and previous device state to enable delta state queries.

Use GetVRControllerNames to query for available VR controller devices.

Functions

NamePrototypeDocumentation
Connected
bool Connected()

Gamepad was connected since the last update.

Constructor
VRController Constructor()
VRController Constructor(string name)
Disconnected
bool Disconnected()

Gamepad was disconnected since the last update.

Down
bool Down(VRControllerButton btn)
DtSurface
Vec2 DtSurface(integer idx)
IsConnected
bool IsConnected()

Gamepad is currently connected.

Pressed
bool Pressed(VRControllerButton btn)
Released
bool Released(VRControllerButton btn)
SendHapticPulse
null SendHapticPulse(integer duration)
Surface
Vec2 Surface(integer idx)
Touch
bool Touch(VRControllerButton btn)
TouchEnd
bool TouchEnd(VRControllerButton btn)
TouchStart
bool TouchStart(VRControllerButton btn)
Update
null Update()
World
Mat4 World()

VRControllerState Class

Functions

NamePrototypeDocumentation
IsConnected
bool IsConnected()
Pressed
bool Pressed(VRControllerButton btn)
Surface
Vec2 Surface(integer idx)
Touched
bool Touched(VRControllerButton btn)
World
Mat4 World()

VRGenericTracker Class

Helper class holding the current and previous device state to enable delta state queries.

Use GetVRGenericTrackerNames to query for available VR generic tracker devices.

Functions

NamePrototypeDocumentation
Constructor
VRGenericTracker Constructor()
VRGenericTracker Constructor(string name)
IsConnected
bool IsConnected()
Update
null Update()
World
Mat4 World()

VRGenericTrackerState Class

Functions

NamePrototypeDocumentation
IsConnected
bool IsConnected()
World
Mat4 World()

Window Class

Window object.