API Functions
ARGB32
int | (int r, int g, int b) |
int | (int r, int g, int b, int a) |
Create a 32 bit integer ARGB color.
ARGB32ToRGBA32
int | (int argb) |
Convert a 32 bit integer ARGB color to RGBA.
Abs
Vec4 | (Vec4 v) |
Vec3 | (Vec3 v) |
number | (number v) |
int | (int v) |
Return the absolute value of the function input. For vectors, the absolute value is applied to each component individually and the resulting vector is returned.
AddAssetsFolder
boolean | (string path) |
Mount a local filesystem folder as an assets source.
See Resources & Assets.
AddAssetsPackage
boolean | (string path) |
Mount an archive stored on the local filesystem as an assets source.
See Resources & Assets.
AlphaScale
Color | (Color color, number k) |
Scale the alpha component of the input color.
ApplyBloom
int | (int view_id, IntRect rect, Texture input, FrameBufferHandle output, Bloom bloom, number threshold, number smoothness, number intensity) |
Process input
texture and generate a bloom overlay on top of output
, input and output must be of the same size.
Use CreateBloomFromFile/CreateBloomFromAssets to create a Bloom object and DestroyBloom to destroy its internal resources after usage.
AudioInit
boolean | () |
Initialize the audio system.
AudioShutdown
nil | () |
Shutdown the audio system.
BaseToEuler
Vec3 | (Vec3 z) |
Vec3 | (Vec3 z, Vec3 y) |
Compute the Euler angles triplet for the provided z
direction. The up-vector y
can be provided to improve coherency of the returned values over time.
BeginProfilerSection
int | (string name) |
int | (string name, string section_details) |
Begin a named profiler section. Call EndProfilerSection to end the section.
CaptureProfilerFrame
ProfilerFrame | () |
Capture the current profiler frame but do not end it. See EndProfilerFrame to capture and end the current profiler frame.
See PrintProfilerFrame to print a profiler frame to the console.
CaptureTexture
int | (PipelineResources resources, TextureRef tex, Picture pic) |
Capture a texture content to a Picture. Return the frame counter at which the capture will be complete.
A Picture object can be accessed by the CPU.
This function is asynchronous and its result will not be available until the returned frame counter is equal or greater to the frame counter returned by Frame.
Cast_Pipeline_To_ForwardPipeline
ForwardPipeline | (Pipeline o) |
Ceil
Vec3 | (Vec3 v) |
Returns a vector whose elements are equal to the nearest integer greater than or equal to the vector elements.
ChromaScale
Color | (Color color, number k) |
Return a copy of the color with its saturation scaled as specified.
Clamp
Vec3 | (Vec3 v, number min, number max) |
Vec3 | (Vec3 v, Vec3 min, Vec3 max) |
number | (number v, number min, number max) |
int | (int v, int min, int max) |
Color | (Color color, number min, number max) |
Color | (Color color, Color min, Color max) |
Return a vector whose elements are equal to the vector elements clipped to the specified interval.
ClampLen
Vec3 | (Vec3 v, number min, number max) |
Returns a vector in the same direction as the specified vector, but with its length clipped by the specified interval.
ClassifyLine
boolean, Vec3, Vec3 | (MinMax minmax, Vec3 position, Vec3 direction) |
Return true
if the provided line intersect the bounding volume, false
otherwise.
ClassifySegment
boolean, Vec3, Vec3 | (MinMax minmax, Vec3 p0, Vec3 p1) |
Return true
if the provided segment intersect the bounding volume, false
otherwise.
CleanPath
string | (string path) |
Cleanup a local filesystem path according to the host platform conventions.
- Remove redundant folder separators.
- Remove redundant
.
and..
folder entries. - Ensure forward slash (
/
) folder separators on Unix and back slash (\
) folder separators on Windows.
ClipSpaceToScreenSpace
Vec3 | (Vec3 clip, Vec2 resolution) |
Convert a 3d position in clip space (homogeneous space) to a 2d position on screen.
Close
boolean | (File file) |
Close a file handle.
Cm
number | (number cm) |
Convert a value in centimeters to the Harfang internal unit system.
See Coordinates and Units System.
ColorFromABGR32
Color | (int rgba32) |
Create a color from a 32 bit ABGR integer.
ColorFromRGBA32
Color | (int rgba32) |
Create a color from a 32 bit RGBA integer.
ColorFromVector3
Color | (Vec3 v) |
Create a color from a 3d vector, alpha defaults to 1.
ColorFromVector4
Color | (Vec4 v) |
Return a 4-dimensional vector as a color.
ColorI
Color | (int r, int g, int b) |
Color | (int r, int g, int b, int a) |
Create a color from integer values in the [0;255] range.
ColorToABGR32
int | (Color color) |
Return a 32 bit ABGR integer from a color.
ColorToGrayscale
number | (Color color) |
Return the grayscale representation of a color. A weighted average is used to account for human perception of colors.
ColorToRGBA32
int | (Color color) |
Return a 32 bit RGBA integer from a color.
Compute2DProjectionMatrix
Mat44 | (number znear, number zfar, number res_x, number res_y, boolean y_up) |
Returns a projection matrix from a 2D space to the 3D world, as required by SetViewTransform for example.
ComputeAspectRatioX
Vec2 | (number width, number height) |
Compute the aspect ratio factor for the provided viewport dimensions. Use this method to compute aspect ratio for landscape display.
See ComputeAspectRatioY.
ComputeAspectRatioY
Vec2 | (number width, number height) |
Compute the aspect ratio factor for the provided viewport dimensions. Use this method to compute aspect ratio for portrait display.
See ComputeAspectRatioX.
ComputeMinMaxBoundingSphere
Vec3, number | (MinMax minmax) |
Compute the bounding sphere for the provided axis-aligned bounding box.
ComputeOrthographicProjectionMatrix
Mat44 | (number znear, number zfar, number size, Vec2 aspect_ratio) |
Mat44 | (number znear, number zfar, number size, Vec2 aspect_ratio, Vec2 offset) |
Compute an orthographic projection matrix.
An orthographic projection has no perspective and all lines parrallel in 3d space will still appear parrallel on screen after projection using the returned matrix.
The size
parameter controls the extends of the projected view. When projecting a 3d world this parameter is expressed in meters. Use the aspect_ratio
parameter to prevent distortion from induced by non-square viewport.
See ComputeAspectRatioX or ComputeAspectRatioY to compute an aspect ratio factor in paysage or portrait mode.
ComputeOrthographicViewState
ViewState | (Mat4 world, number size, number znear, number zfar, Vec2 aspect_ratio) |
Compute an orthographic view state.
The size
parameter controls the extends of the projected view. When projecting a 3d world this parameter is expressed in meters. Use the aspect_ratio
parameter to prevent distortion from induced by non-square viewport.
See ComputeOrthographicProjectionMatrix, ComputeAspectRatioX and ComputeAspectRatioY.
ComputePerspectiveProjectionMatrix
Mat44 | (number znear, number zfar, number zoom_factor, Vec2 aspect_ratio) |
Mat44 | (number znear, number zfar, number zoom_factor, Vec2 aspect_ratio, Vec2 offset) |
Compute a perspective projection matrix, , fov
is the field of view angle, see Deg and Rad.
See ZoomFactorToFov, FovToZoomFactor, ComputeAspectRatioX and ComputeAspectRatioY.
ComputePerspectiveViewState
ViewState | (Mat4 world, number fov, number znear, number zfar, Vec2 aspect_ratio) |
Compute a perspective view state.
See ComputePerspectiveProjectionMatrix, ZoomFactorToFov, FovToZoomFactor, ComputeAspectRatioX and ComputeAspectRatioY.
ComputeRenderState
Compute a render state to control subsequent render calls culling mode, blending mode, Z mask, etc… The same render state can be used by different render calls.
See DrawLines, DrawTriangles and DrawModel.
ComputeSAO
nil | (int view_id, IntRect rect, Texture attr0, Texture attr1, Texture noise, FrameBufferHandle output, SAO sao, Mat44 projection, number bias, number radius, int sample_count, number sharpness) |
ComputeSortKey
int | (number view_depth) |
Compute a sorting key to control the rendering order of a display list, view_depth
is expected in view space.
ComputeSortKeyFromWorld
int | (Vec3 T, Mat4 view) |
int | (Vec3 T, Mat4 view, Mat4 model) |
Compute a sorting key to control the rendering order of a display list.
ComputeTextHeight
number | (Font font, string text) |
Compute the height of a text string.
ComputeTextRect
Rect | (Font font, string text) |
Rect | (Font font, string text, number xpos) |
Rect | (Font font, string text, number xpos, number ypos) |
Compute the width and height of a text string.
Contains
boolean | (MinMax minmax, Vec3 position) |
Return true
if the provided position is inside the bounding volume, false
otherwise.
CopyDir
boolean | (string src, string dst) |
Copy a directory on the local filesystem, this function does not recurse through subdirectories.
See CopyDirRecursive.
CopyDirRecursive
boolean | (string src, string dst) |
Copy a directory on the local filesystem, recurse through subdirectories.
CopyFile
boolean | (string src, string dst) |
Copy a file on the local filesystem.
CosineInterpolate
number | (number y0, number y1, number t) |
Compute the cosine interpolated value between y0
and y1
at t
.
See LinearInterpolate, CubicInterpolate and HermiteInterpolate.
CreateBloomFromAssets
Bloom | (string path, BackbufferRatio ratio) |
CreateBloomFromFile
Bloom | (string path, BackbufferRatio ratio) |
CreateCamera
Node | (Scene scene, Mat4 mtx, number znear, number zfar) |
Node | (Scene scene, Mat4 mtx, number znear, number zfar, number fov) |
Create a new Node with a Transform and Camera components.
CreateCapsuleModel
Model | (VertexLayout decl, number radius, number height, int subdiv_x, int subdiv_y) |
Create a capsule render model.
See CreateCubeModel, CreateConeModel, CreateCylinderModel, CreatePlaneModel, CreateSphereModel and DrawModel.
CreateConeModel
Model | (VertexLayout decl, number radius, number height, int subdiv_x) |
Create a cone render model.
See CreateCubeModel, CreateConeModel, CreateCylinderModel, CreatePlaneModel, CreateSphereModel and DrawModel.
CreateCubeModel
Model | (VertexLayout decl, number x, number y, number z) |
Create a cube render model.
See CreateCubeModel, CreateConeModel, CreateCylinderModel, CreatePlaneModel, CreateSphereModel and DrawModel.
CreateCylinderModel
Model | (VertexLayout decl, number radius, number height, int subdiv_x) |
Create a cylinder render model.
See CreateCubeModel, CreateConeModel, CreateCylinderModel, CreatePlaneModel, CreateSphereModel and DrawModel.
CreateForwardPipeline
ForwardPipeline | () |
ForwardPipeline | (int shadow_map_resolution) |
ForwardPipeline | (int shadow_map_resolution, boolean spot_16bit_shadow_map) |
Create a forward pipeline and its resources.
CreateForwardPipelineAAAFromAssets
ForwardPipelineAAA | (string path, ForwardPipelineAAAConfig config) |
ForwardPipelineAAA | (string path, ForwardPipelineAAAConfig config, BackbufferRatio ssgi_ratio) |
ForwardPipelineAAA | (string path, ForwardPipelineAAAConfig config, BackbufferRatio ssgi_ratio, BackbufferRatio ssr_ratio) |
CreateForwardPipelineAAAFromFile
ForwardPipelineAAA | (string path, ForwardPipelineAAAConfig config) |
ForwardPipelineAAA | (string path, ForwardPipelineAAAConfig config, BackbufferRatio ssgi_ratio) |
ForwardPipelineAAA | (string path, ForwardPipelineAAAConfig config, BackbufferRatio ssgi_ratio, BackbufferRatio ssr_ratio) |
CreateFrameBuffer
FrameBuffer | (Texture color, Texture depth, string name) |
FrameBuffer | (TextureFormat color_format, TextureFormat depth_format, int aa, string name) |
FrameBuffer | (int width, int height, TextureFormat color_format, TextureFormat depth_format, int aa, string name) |
Create a framebuffer and its texture attachments.
See DestroyFrameBuffer.
CreateInstanceFromAssets
Node, boolean | (Scene scene, Mat4 mtx, string name, PipelineResources resources, PipelineInfo pipeline) |
Node, boolean | (Scene scene, Mat4 mtx, string name, PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags) |
Helper function to create a Node with a Transform and an Instance component.
The instance component will be setup and its resources loaded from the assets system.
See Resources & Assets.
CreateInstanceFromFile
Node, boolean | (Scene scene, Mat4 mtx, string name, PipelineResources resources, PipelineInfo pipeline) |
Node, boolean | (Scene scene, Mat4 mtx, string name, PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags) |
Helper function to create a Node with a Transform and an Instance component.
The instance component will be setup and its resources loaded from the local filesystem.
See Resources & Assets.
CreateLinearLight
Node | (Scene scene, Mat4 mtx) |
Node | (Scene scene, Mat4 mtx, Color diffuse) |
Node | (Scene scene, Mat4 mtx, Color diffuse, Color specular) |
Node | (Scene scene, Mat4 mtx, Color diffuse, Color specular, number priority) |
Node | (Scene scene, Mat4 mtx, Color diffuse, Color specular, number priority, LightShadowType shadow_type) |
Node | (Scene scene, Mat4 mtx, Color diffuse, Color specular, number priority, LightShadowType shadow_type, number shadow_bias, Vec4 pssm_split) |
Node | (Scene scene, Mat4 mtx, Color diffuse, number diffuse_intensity) |
Node | (Scene scene, Mat4 mtx, Color diffuse, number diffuse_intensity, Color specular) |
Node | (Scene scene, Mat4 mtx, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity) |
Node | (Scene scene, Mat4 mtx, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity, number priority) |
Node | (Scene scene, Mat4 mtx, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity, number priority, LightShadowType shadow_type) |
Node | (Scene scene, Mat4 mtx, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity, number priority, LightShadowType shadow_type, number shadow_bias, Vec4 pssm_split) |
Helper function to create a Node with a Transform and a Light component.
CreateMaterial
Material | (PipelineProgramRef prg) |
Material | (PipelineProgramRef prg, string value_name, Vec4 value) |
Material | (PipelineProgramRef prg, string value_name_0, Vec4 value_0, string value_name_1, Vec4 value_1) |
Helper function to create a material.
See SetMaterialProgram, SetMaterialValue and SetMaterialTexture.
CreateMissingMaterialProgramValuesFromAssets
nil | (Material mat, PipelineResources resources) |
This function scans the material program uniforms and creates a corresponding entry in the material if missing.
Resources are loaded from the asset system if a default uniform value requires it.
See Resources & Assets.
CreateMissingMaterialProgramValuesFromFile
nil | (Material mat, PipelineResources resources) |
This function scans the material program uniforms and creates a corresponding entry in the material if missing.
Resources are loaded from the local filesystem if a default uniform value requires it.
CreateObject
Node | (Scene scene, Mat4 mtx, ModelRef model, MaterialList materials) |
Create a Node with a Transform and Object components.
CreateOrthographicCamera
Node | (Scene scene, Mat4 mtx, number znear, number zfar) |
Node | (Scene scene, Mat4 mtx, number znear, number zfar, number size) |
Create a Node with a Transform and a Camera component.
CreatePhysicCube
Node | (Scene scene, Vec3 size, Mat4 mtx, ModelRef model_ref, MaterialList materials) |
Node | (Scene scene, Vec3 size, Mat4 mtx, ModelRef model_ref, MaterialList materials, number mass) |
Create a Node with a Transform, Object and RigidBody components.
CreatePhysicSphere
Node | (Scene scene, number radius, Mat4 mtx, ModelRef model_ref, MaterialList materials) |
Node | (Scene scene, number radius, Mat4 mtx, ModelRef model_ref, MaterialList materials, number mass) |
Create a Node with a Transform, Object and RigidBody components.
CreatePlaneModel
Model | (VertexLayout decl, number width, number length, int subdiv_x, int subdiv_z) |
Create a plane render model.
CreatePointLight
Node | (Scene scene, Mat4 mtx, number radius) |
Node | (Scene scene, Mat4 mtx, number radius, Color diffuse) |
Node | (Scene scene, Mat4 mtx, number radius, Color diffuse, Color specular) |
Node | (Scene scene, Mat4 mtx, number radius, Color diffuse, Color specular, number priority) |
Node | (Scene scene, Mat4 mtx, number radius, Color diffuse, Color specular, number priority, LightShadowType shadow_type) |
Node | (Scene scene, Mat4 mtx, number radius, Color diffuse, Color specular, number priority, LightShadowType shadow_type, number shadow_bias) |
Node | (Scene scene, Mat4 mtx, number radius, Color diffuse, number diffuse_intensity) |
Node | (Scene scene, Mat4 mtx, number radius, Color diffuse, number diffuse_intensity, Color specular) |
Node | (Scene scene, Mat4 mtx, number radius, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity) |
Node | (Scene scene, Mat4 mtx, number radius, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity, number priority) |
Node | (Scene scene, Mat4 mtx, number radius, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity, number priority, LightShadowType shadow_type) |
Node | (Scene scene, Mat4 mtx, number radius, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity, number priority, LightShadowType shadow_type, number shadow_bias) |
Create a Node with a Transform and a Light component.
CreateSAOFromAssets
SAO | (string path, BackbufferRatio ratio) |
CreateSAOFromFile
SAO | (string path, BackbufferRatio ratio) |
CreateSceneRootNode
Node | (Scene scene, string name, Mat4 mtx) |
Helper function to create a Node with a Transform component then parent all root nodes in the scene to it.
CreateScript
Node | (Scene scene) |
Node | (Scene scene, string path) |
Helper function to create a Node with a Script component.
CreateSphereModel
Model | (VertexLayout decl, number radius, int subdiv_x, int subdiv_y) |
Create a sphere render model.
See CreateCubeModel, CreateConeModel, CreateCylinderModel, CreatePlaneModel, CreateSphereModel and DrawModel.
CreateSpotLight
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle) |
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle, Color diffuse) |
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle, Color diffuse, Color specular) |
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle, Color diffuse, Color specular, number priority) |
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle, Color diffuse, Color specular, number priority, LightShadowType shadow_type) |
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle, Color diffuse, Color specular, number priority, LightShadowType shadow_type, number shadow_bias) |
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle, Color diffuse, number diffuse_intensity) |
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle, Color diffuse, number diffuse_intensity, Color specular) |
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity) |
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity, number priority) |
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity, number priority, LightShadowType shadow_type) |
Node | (Scene scene, Mat4 mtx, number radius, number inner_angle, number outer_angle, Color diffuse, number diffuse_intensity, Color specular, number specular_intensity, number priority, LightShadowType shadow_type, number shadow_bias) |
Create a Node with a Transform and a Light component.
CreateTexture
Texture | (int width, int height, string name, TextureFlags flags) |
Texture | (int width, int height, string name, TextureFlags flags, TextureFormat format) |
Create an empty texture.
See CreateTextureFromPicture and UpdateTextureFromPicture.
CreateTextureFromPicture
Texture | (Picture pic, string name, TextureFlags flags) |
Texture | (Picture pic, string name, TextureFlags flags, TextureFormat format) |
Create a texture from a picture.
See Picture, CreateTexture and UpdateTextureFromPicture.
Crop
Rect | (Rect rect, number left, number top, number right, number bottom) |
IntRect | (IntRect rect, int left, int top, int right, int bottom) |
Crop a rectangle. Remove the specified amount of units on each side of the rectangle.
See Grow.
Cross
Vec3 | (Vec3 a, Vec3 b) |
Return the cross product of two vectors.
CrossProductMat3
Mat3 | (Vec3 V) |
Creates a matrix M so that Mv = p⨯v.
Simply put, multiplying this matrix to any vector v is equivalent to compute the cross product between p and v.
CubicInterpolate
number | (number y0, number y1, number y2, number y3, number t) |
Vec3 | (Vec3 v0, Vec3 v1, Vec3 v2, Vec3 v3, number t) |
Perform a cubic interpolation across four values with t
in the [0;1] range between y1
and y2
.
See LinearInterpolate, CosineInterpolate and HermiteInterpolate.
CutFileExtension
string | (string path) |
Return a file path with its extension stripped.
See CutFilePath and CutFileName.
CutFileName
string | (string path) |
Return the name part of a file path. All folder navigation and extension are stripped.
See CutFileExtension and CutFilePath.
CutFilePath
string | (string path) |
Return the folder navigation part of a file path. The file name and its extension are stripped.
See CutFileExtension and CutFileName.
Debug
nil | (string msg) |
nil | (string msg, string details) |
DebugSceneExplorer
nil | (Scene scene, string name) |
Decompose
Vec3, Vec3, Vec3 | (Mat4 m) |
Vec3, Vec3, Vec3 | (Mat4 m, RotationOrder rotation_order) |
Decompose a transformation matrix into its translation, scaling and rotation components.
Deg
number | (number degrees) |
Convert an angle in degrees to the engine unit system.
See Coordinates and Units System.
Deg3
Vec3 | (number x, number y, number z) |
Convert a triplet of angles in degrees to the engine unit system.
See Coordinates and Units System.
DegreeToRadian
number | (number degrees) |
Convert an angle in degrees to radians.
DestroyBloom
nil | (Bloom bloom) |
Destroy a bloom post process object and all associated resources.
DestroyForwardPipeline
nil | (ForwardPipeline pipeline) |
Destroy a forward pipeline object.
DestroyForwardPipelineAAA
nil | (ForwardPipelineAAA pipeline) |
DestroyFrameBuffer
nil | (FrameBuffer frameBuffer) |
Destroy a frame buffer and its resources.
DestroyProgram
nil | (ProgramHandle h) |
Destroy a shader program.
DestroySAO
nil | (SAO sao) |
Destroy an ambient occlusion post process object and its resources.
DestroyTexture
nil | (Texture tex) |
Destroy a texture object.
DestroyWindow
boolean | (Window window) |
Destroy a window object.
Det
number | (Mat3 m) |
Return the determinant of a matrix.
Dist
number | (Vec2 a, Vec2 b) |
int | (iVec2 a, iVec2 b) |
number | (Quaternion a, Quaternion b) |
number | (Vec3 a, Vec3 b) |
Return the Euclidean distance between two vectors.
Dist2
number | (Vec2 a, Vec2 b) |
int | (iVec2 a, iVec2 b) |
number | (Vec3 a, Vec3 b) |
Return the squared Euclidean distance between two vectors.
DistanceToPlane
number | (Vec4 plane, Vec3 p) |
Return the signed distance from point p to a plane.
- Distance is positive if p is in front of the plane, meaning that the plane normal is pointing towards p.
- Distance is negative if p is behind the plane, meaning that the plane normal is pointing away from p.
- Distance is 0.0 if p is lying on the plane.
Dot
number | (Vec2 a, Vec2 b) |
int | (iVec2 a, iVec2 b) |
number | (Vec3 a, Vec3 b) |
Return the dot product of two vectors.
DrawLines
Draw a list of lines to the specified view.
Use UniformSetValueList and UniformSetTextureList to pass uniform values to the shader program.
DrawModel
nil | (int view_id, Model mdl, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, Mat4 matrix) |
nil | (int view_id, Model mdl, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, Mat4 matrix, RenderState render_state) |
nil | (int view_id, Model mdl, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, Mat4 matrix, RenderState render_state, int depth) |
nil | (int view_id, Model mdl, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, Mat4List matrices) |
nil | (int view_id, Model mdl, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, Mat4List matrices, RenderState render_state) |
nil | (int view_id, Model mdl, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, Mat4List matrices, RenderState render_state, int depth) |
Draw a model to the specified view.
Use UniformSetValueList and UniformSetTextureList to pass uniform values to the shader program.
DrawSprites
nil | (int view_id, Mat3 inv_view_R, VertexLayout vtx_layout, Vec3List pos, Vec2 size, ProgramHandle prg) |
nil | (int view_id, Mat3 inv_view_R, VertexLayout vtx_layout, Vec3List pos, Vec2 size, ProgramHandle prg, RenderState state) |
nil | (int view_id, Mat3 inv_view_R, VertexLayout vtx_layout, Vec3List pos, Vec2 size, ProgramHandle prg, RenderState state, int depth) |
nil | (int view_id, Mat3 inv_view_R, VertexLayout vtx_layout, Vec3List pos, Vec2 size, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures) |
nil | (int view_id, Mat3 inv_view_R, VertexLayout vtx_layout, Vec3List pos, Vec2 size, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, RenderState state) |
nil | (int view_id, Mat3 inv_view_R, VertexLayout vtx_layout, Vec3List pos, Vec2 size, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, RenderState state, int depth) |
Draw a list of sprites to the specified view.
Use UniformSetValueList and UniformSetTextureList to pass uniform values to the shader program.
Note: This function prepares the sprite on the CPU before submitting them all to the GPU as a single draw call.
DrawText
nil | (int view_id, Font font, string text, ProgramHandle prg, string page_uniform, int page_stage, Mat4 mtx) |
nil | (int view_id, Font font, string text, ProgramHandle prg, string page_uniform, int page_stage, Mat4 mtx, Vec3 pos) |
nil | (int view_id, Font font, string text, ProgramHandle prg, string page_uniform, int page_stage, Mat4 mtx, Vec3 pos, DrawTextHAlign halign, DrawTextVAlign valign) |
nil | (int view_id, Font font, string text, ProgramHandle prg, string page_uniform, int page_stage, Mat4 mtx, Vec3 pos, DrawTextHAlign halign, DrawTextVAlign valign, UniformSetValueList values, UniformSetTextureList textures) |
nil | (int view_id, Font font, string text, ProgramHandle prg, string page_uniform, int page_stage, Mat4 mtx, Vec3 pos, DrawTextHAlign halign, DrawTextVAlign valign, UniformSetValueList values, UniformSetTextureList textures, RenderState state) |
nil | (int view_id, Font font, string text, ProgramHandle prg, string page_uniform, int page_stage, Mat4 mtx, Vec3 pos, DrawTextHAlign halign, DrawTextVAlign valign, UniformSetValueList values, UniformSetTextureList textures, RenderState state, int depth) |
Write text to the specified view using the provided shader program and uniform values.
DrawTriangles
nil | (int view_id, Vertices vtx, ProgramHandle prg) |
nil | (int view_id, Vertices vtx, ProgramHandle prg, RenderState state) |
nil | (int view_id, Vertices vtx, ProgramHandle prg, RenderState state, int depth) |
nil | (int view_id, Vertices vtx, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures) |
nil | (int view_id, Vertices vtx, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, RenderState state) |
nil | (int view_id, Vertices vtx, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, RenderState state, int depth) |
nil | (int view_id, UInt16List idx, Vertices vtx, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures) |
nil | (int view_id, UInt16List idx, Vertices vtx, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, RenderState state) |
nil | (int view_id, UInt16List idx, Vertices vtx, ProgramHandle prg, UniformSetValueList values, UniformSetTextureList textures, RenderState state, int depth) |
Draw a list of triangles to the specified view.
Use UniformSetValueList and UniformSetTextureList to pass uniform values to the shader program.
DuplicateNodeAndChildrenFromAssets
NodeList | (Scene scene, Node node, PipelineResources resources, PipelineInfo pipeline) |
Duplicate a node and its child hierarchy. Resources will be loaded from the assets system.
See Resources & Assets.
DuplicateNodeAndChildrenFromFile
NodeList | (Scene scene, Node node, PipelineResources resources, PipelineInfo pipeline) |
Duplicate a node and its child hierarchy. Resources will be loaded from the local filesystem.
See Resources & Assets.
DuplicateNodeFromAssets
Node | (Scene scene, Node node, PipelineResources resources, PipelineInfo pipeline) |
Duplicate a node. Resources will be loaded from the assets system.
See Resources & Assets.
DuplicateNodeFromFile
Node | (Scene scene, Node node, PipelineResources resources, PipelineInfo pipeline) |
Duplicate a node. Resources will be loaded from the local filesystem.
See Resources & Assets.
DuplicateNodesAndChildrenFromAssets
NodeList | (Scene scene, NodeList nodes, PipelineResources resources, PipelineInfo pipeline) |
Duplicate each node and children hierarchy of a list. Resources will be loaded from the assets system.
See Resources & Assets.
DuplicateNodesAndChildrenFromFile
NodeList | (Scene scene, NodeList nodes, PipelineResources resources, PipelineInfo pipeline) |
Duplicate each node and children hierarchy of a list. Resources will be loaded from the local filesystem.
See Resources & Assets.
DuplicateNodesFromAssets
NodeList | (Scene scene, NodeList nodes, PipelineResources resources, PipelineInfo pipeline) |
Duplicate each node of a list. Resources will be loaded from the assets system.
DuplicateNodesFromFile
NodeList | (Scene scene, NodeList nodes, PipelineResources resources, PipelineInfo pipeline) |
Duplicate each node of a list. Resources will be loaded from the local filesystem.
See Resources & Assets.
EndProfilerFrame
ProfilerFrame | () |
End a profiler frame and return it.
See PrintProfilerFrame to print a profiler frame to the console.
EndProfilerSection
nil | (int section_idx) |
End a named profiler section. Call BeginProfilerSection to begin a new section.
Error
nil | (string msg) |
nil | (string msg, string details) |
Exists
boolean | (string path) |
Return true
if a file exists on the local filesystem, false
otherwise.
ExtractZRangeFromOrthographicProjectionMatrix
number, number | (Mat44 m) |
ExtractZRangeFromPerspectiveProjectionMatrix
number, number | (Mat44 m) |
ExtractZRangeFromProjectionMatrix
number, number | (Mat44 m) |
Extract z near and z far clipping range from a projection matrix.
ExtractZoomFactorFromProjectionMatrix
number | (Mat44 m) |
Extract zoom factor from a projection matrix.
See ZoomFactorToFov.
FRRand
number | () |
number | (number range_start) |
number | (number range_start, number range_end) |
Return a random floating point value in the provided range, default range is [-1;1].
FRand
number | () |
number | (number range) |
Return a random floating point value in the provided range, default range is [0;1].
See Rand to generate a random integer value.
FaceForward
Vec3 | (Vec3 v, Vec3 d) |
Return the provided vector facing toward the provided direction. If the angle between v
and d
is less than 90° then v
is returned unchanged, v
will be returned reversed otherwise.
FactorizePath
string | (string path) |
Return the input path with all redundant navigation entries stripped (folder separator, ..
and .
entries).
FileToString
string | (string path) |
Return the content of a local filesystem as a string.
FitsInside
boolean | (Rect a, Rect b) |
boolean | (IntRect a, IntRect b) |
Return wether a
fits in b
.
Floor
Vec3 | (Vec3 v) |
Returns a vector whose elements are equal to the nearest integer less than or equal to the vector elements.
FovToZoomFactor
number | (number fov) |
Convert from a fov value in radian to a zoom factor value in meters.
FpsController
nil | (boolean key_up, boolean key_down, boolean key_left, boolean key_right, boolean btn, number dx, number dy, Vec3 pos, Vec3 rot, number speed, int dt_t) |
nil | (Keyboard keyboard, Mouse mouse, Vec3 pos, Vec3 rot, number speed, int dt) |
Implement a first-person-shooter like controller.
The input position and rotation parameters are returned modified according to the state of the control keys.
This function is usually used by passing the current camera position and rotation then updating the camera transformation with the returned values.
Frame
int | () |
Advance the rendering backend to the next frame, execute all queued rendering commands. This function returns the backend current frame.
The frame counter is used by asynchronous functions such as CaptureTexture. You must wait for the frame counter to reach or exceed the value returned by an asynchronous function before accessing its result.
FromHLS
Color | (Color color) |
Convert input hue/luminance/saturation color to RGBA, alpha channel is left unmodified.
GaussianBlurIsoSurface
IsoSurface | (IsoSurface surface, int width, int height, int depth) |
Apply a Gaussian blur to an iso-surface.
GetArea
number | (MinMax minmax) |
Return the area of the volume.
GetCenter
Vec3 | (MinMax minmax) |
Return the center position of the volume.
GetClock
int | () |
Return the current clock since the last call to TickClock or ResetClock.
See time_to_sec_f to convert the returned time to second.
GetClockDt
int | () |
Return the elapsed time recorded during the last call to TickClock.
GetColorTexture
Texture | (FrameBuffer frameBuffer) |
Retrieves color texture attachment.
GetColumn
Vec3 | (Mat3 m, int n) |
Vec3 | (Mat4 m, int n) |
Vec4 | (Mat44 m, int idx) |
Returns the nth column.
GetCurrentWorkingDirectory
string | () |
Return the system current working directory.
GetDepthTexture
Texture | (FrameBuffer frameBuffer) |
Retrieves depth texture attachment.
GetFileExtension
string | (string path) |
Return the extension part of a file path.
GetFileName
string | (string path) |
Return the name part of a file path (including its extension).
GetFilePath
string | (string path) |
Return the path part of a file path (excluding file name and extension).
GetForwardPipelineInfo
PipelineInfo | () |
Return the pipeline info object for the forward pipeline.
GetGamepadNames
StringList | () |
Return a list of names for all supported gamepad devices on the system.
See ReadGamepad.
GetHeight
number | (Rect rect) |
int | (IntRect rect) |
Return the height of a rectangle.
GetJoystickDeviceNames
StringList | () |
GetJoystickNames
StringList | () |
GetJsonBool
boolean, boolean | (JSON js, string key) |
Return the value of a boolean JSON key.
GetJsonFloat
boolean, number | (JSON js, string key) |
Return the value of a float JSON key.
GetJsonInt
boolean, int | (JSON js, string key) |
Return the value of an integer JSON key.
GetJsonString
boolean, string | (JSON js, string key) |
Return the value of a string JSON key.
GetKeyName
string | (Key key) |
string | (Key key, string name) |
Return the name for a keyboard key.
GetKeyboardNames
StringList | () |
Return a list of names for all supported keyboard devices on the system.
See ReadKeyboard.
GetMaterialAlphaCut
boolean | (Material mat) |
GetMaterialAmbientUsesUV1
boolean | (Material mat) |
GetMaterialBlendMode
BlendMode | (Material mat) |
Return a material blending mode.
GetMaterialDepthTest
DepthTest | (Material mat) |
Return a material depth test function.
GetMaterialDiffuseUsesUV1
boolean | (Material mat) |
GetMaterialFaceCulling
FaceCulling | (Material mat) |
Return a material culling mode.
GetMaterialNormalMapInWorldSpace
boolean | (Material mat) |
GetMaterialSkinning
boolean | (Material mat) |
GetMaterialSpecularUsesUV1
boolean | (Material mat) |
GetMaterialTexture
TextureRef | (Material mat, string name) |
Return the texture reference assigned to a material named uniform.
GetMaterialTextures
StringList | (Material mat) |
Return the list of names of a material texture uniforms.
GetMaterialValues
StringList | (Material mat) |
Return the list of names of a material value uniforms.
GetMaterialWriteRGBA
boolean, boolean, boolean, boolean | (Material mat) |
Return the material color mask.
GetMaterialWriteZ
boolean | (Material mat) |
Return the material depth write mask.
GetMonitorModes
boolean, MonitorModeList | (Monitor monitor) |
Return the list of supported monitor modes.
GetMonitorName
string | (Monitor monitor) |
Return the monitor name.
GetMonitorRect
IntRect | (Monitor monitor) |
Returns a rectangle going from the position, in screen coordinates, of the upper-left corner of the specified monitor to the position of the lower-right corner.
GetMonitorSizeMM
iVec2 | (Monitor monitor) |
Returns the size, in millimetres, of the display area of the specified monitor.
GetMonitors
MonitorList | () |
Return a list of monitors connected to the system.
GetMouseNames
StringList | () |
Return a list of names for all supported mouse devices on the system.
See ReadKeyboard.
GetNodePairContacts
ContactList | (Node first, Node second, NodePairContacts node_pair_contacts) |
GetNodesInContact
NodeList | (Scene scene, Node with, NodePairContacts node_pair_contacts) |
GetR
Vec3 | (Mat4 m) |
Vec3 | (Mat4 m, RotationOrder rotation_order) |
See GetRotation.
GetRMatrix
Mat3 | (Mat4 m) |
See GetRotationMatrix.
GetRotation
Vec3 | (Mat4 m) |
Vec3 | (Mat4 m, RotationOrder rotation_order) |
Return the rotation component of a transformation matrix as a Euler triplet.
GetRotationMatrix
Mat3 | (Mat4 m) |
Return the rotation component of a transformation matrix as a Mat3 rotation matrix.
GetRow
Vec3 | (Mat3 m, int n) |
Vec4 | (Mat4 m, int n) |
Vec4 | (Mat44 m, int idx) |
Returns the nth row of a matrix.
GetS
Vec3 | (Mat4 m) |
See GetScale.
GetScale
Vec3 | (Mat3 m) |
Vec3 | (Mat4 m) |
Return the scale component of a matrix a scale vector.
GetSceneForwardPipelineFog
ForwardPipelineFog | (Scene scene) |
GetSceneForwardPipelineLights
ForwardPipelineLightList | (Scene scene) |
Filter through the scene lights and return a list of pipeline lights to be used by the scene forward pipeline.
GetSceneForwardPipelinePassViewId
int | (SceneForwardPipelinePassViewId views, SceneForwardPipelinePass pass) |
Return the view id for a scene forward pipeline pass id.
GetSize
int | (File file) |
Vec2 | (Rect rect) |
iVec2 | (IntRect rect) |
Return the size in bytes of a local file.
GetSourceDuration
int | (SourceRef source) |
Return the duration of an audio source.
GetSourceState
SourceState | (SourceRef source) |
Return the state of an audio source.
GetSourceTimecode
int | (SourceRef source) |
Return the current timecode of a playing audio source.
GetT
Vec3 | (Mat4 m) |
See GetTranslation.
GetTextures
Texture, Texture | (FrameBuffer framebuffer) |
Returns color and depth texture attachments.
GetTranslation
Vec3 | (Mat3 m) |
Vec3 | (Mat4 m) |
Return the translation part of a tranformation matrix as a translation vector.
GetUserFolder
string | () |
Return the system user folder for the current user.
GetVRControllerNames
StringList | () |
Return a list of names for all supported VR controller devices on the system.
See ReadVRController.
GetVRGenericTrackerNames
StringList | () |
Return a list of names for all supported VR tracker devices on the system.
GetWidth
number | (Rect rect) |
int | (IntRect rect) |
Return the width of a rectangle.
GetWindowClientSize
boolean, int, int | (Window window) |
Return a window client rectangle. The client area of a window does not include its decorations.
GetWindowContentScale
Vec2 | (Window window) |
GetWindowHandle
VoidPointer | (Window window) |
Return the system native window handle.
GetWindowInFocus
Window | () |
Return the system window with input focus.
GetWindowPos
iVec2 | (Window window) |
Return a window position on screen.
GetWindowTitle
boolean, string | (Window window) |
Return a window title.
GetX
Vec3 | (Mat3 m) |
Vec3 | (Mat4 m) |
number | (Rect rect) |
int | (IntRect rect) |
Return the scaled X axis of a transformation matrix.
GetY
Vec3 | (Mat3 m) |
Vec3 | (Mat4 m) |
number | (Rect rect) |
int | (IntRect rect) |
Return the scaled Y axis of a transformation matrix.
GetZ
Vec3 | (Mat3 m) |
Vec3 | (Mat4 m) |
Return the scaled Z axis of a transformation matrix.
Grow
Rect | (Rect rect, number border) |
IntRect | (IntRect rect, int border) |
Grow a rectangle by the specified amount of units.
See Crop.
HasFileExtension
boolean | (string path) |
Test the extension of a file path.
HermiteInterpolate
number | (number y0, number y1, number y2, number y3, number t, number tension, number bias) |
Perform a Hermite interpolation across four values with t
in the [0;1] range between y1
and y2
. The tension
and bias
parameters can be used to control the shape of underlying interpolation curve.
See LinearInterpolate, CosineInterpolate and CubicInterpolate.
HideCursor
nil | () |
Hide the system mouse cursor.
See ShowCursor.
ImGuiAlignTextToFramePadding
nil | () |
Vertically align upcoming text baseline to FramePadding y coordinate so that it will align properly to regularly framed items.
ImGuiBegin
boolean | (string name) |
boolean, boolean | (string name, boolean open, ImGuiWindowFlags flags) |
Start a new window.
ImGuiBeginChild
boolean | (string id) |
boolean | (string id, Vec2 size) |
boolean | (string id, Vec2 size, boolean border) |
boolean | (string id, Vec2 size, boolean border, ImGuiWindowFlags flags) |
Begin a scrolling region.
ImGuiBeginCombo
boolean | (string label, string preview_value) |
boolean | (string label, string preview_value, ImGuiComboFlags flags) |
Begin a ImGui Combo Box.
ImGuiBeginFrame
nil | (int width, int height, int dt_clock, MouseState mouse, KeyboardState keyboard) |
nil | (DearImguiContext ctx, int width, int height, int dt_clock, MouseState mouse, KeyboardState keyboard) |
Begin an ImGui frame. This function must be called once per frame before any other ImGui call.
When using multiple contexts, it must be called for each context you intend to use during the current frame.
See ImGuiEndFrame.
ImGuiBeginGroup
nil | () |
Lock horizontal starting position. Once closing a group it is seen as a single item (so you can use ImGuiIsItemHovered on a group, ImGuiSameLine between groups, etc…).
ImGuiBeginMainMenuBar
boolean | () |
Create and append to a full screen menu-bar.
Note: Only call ImGuiEndMainMenuBar if this returns true
.
ImGuiBeginMenu
boolean | (string label) |
boolean | (string label, boolean enabled) |
Create a sub-menu entry.
Note: Only call ImGuiEndMenu if this returns true
.
ImGuiBeginMenuBar
boolean | () |
Start append to the menu-bar of the current window (requires the WindowFlags_MenuBar
flag).
Note: Only call ImGuiEndMenuBar if this returns true
.
ImGuiBeginPopup
boolean | (string id) |
Return true
if popup is opened and starts outputting to it.
Note: Only call ImGuiEndPopup if this returns true
.
ImGuiBeginPopupContextItem
boolean | (string id) |
boolean | (string id, int mouse_button) |
ImGui helper to open and begin popup when clicked on last item.
ImGuiBeginPopupContextVoid
boolean | () |
boolean | (string id) |
boolean | (string id, int mouse_button) |
ImGui helper to open and begin popup when clicked in void (where there are no ImGui windows)
ImGuiBeginPopupContextWindow
boolean | () |
boolean | (string id) |
boolean | (string id, ImGuiPopupFlags flags) |
ImGui helper to open and begin popup when clicked on current window.
ImGuiBeginPopupModal
boolean | (string name) |
boolean | (string name, boolean open) |
boolean | (string name, boolean open, ImGuiWindowFlags flags) |
Begin an ImGui modal dialog.
ImGuiBeginTooltip
nil | () |
Used to create full-featured tooltip windows that aren’t just text.
ImGuiBullet
nil | () |
Draw a small circle and keep the cursor on the same line. Advances by the same distance as an empty ImGuiTreeNode call.
ImGuiBulletText
nil | (string label) |
Draw a bullet followed by a static text.
ImGuiButton
boolean | (string label) |
boolean | (string label, Vec2 size) |
Button widget returning True
if the button was pressed.
ImGuiCalcItemWidth
number | () |
Returns the width of item given pushed settings and current cursor position.
Note: This is not necessarily the width of last item.
ImGuiCalcTextSize
Vec2 | (string text) |
Vec2 | (string text, boolean hide_text_after_double_dash) |
Vec2 | (string text, boolean hide_text_after_double_dash, number wrap_width) |
Compute the bounding rectangle for the provided text.
ImGuiCaptureKeyboardFromApp
nil | (boolean capture) |
Force capture keyboard when your widget is being hovered.
ImGuiCaptureMouseFromApp
nil | (boolean capture) |
Force capture mouse when your widget is being hovered.
ImGuiCheckbox
boolean, boolean | (string label, boolean value) |
Display a checkbox widget. Returns an interaction flag (user interacted with the widget) and the current widget state (checked or not after user interaction).
was_clicked, my_value = gs.ImGuiCheckBox('My value', my_value)
ImGuiClearInputBuffer
nil | () |
Force a reset of the ImGui input buffer.
ImGuiCloseCurrentPopup
nil | () |
Close the popup we have begin-ed into. Clicking on a menu item or selectable automatically closes the current popup.
ImGuiCollapsingHeader
boolean | (string label) |
boolean | (string label, ImGuiTreeNodeFlags flags) |
boolean, boolean | (string label, boolean p_open) |
boolean, boolean | (string label, boolean p_open, ImGuiTreeNodeFlags flags) |
Draw a collapsing header, returns False
if the header is collapsed so that you may skip drawing the header content.
ImGuiColorButton
boolean | (string id, Color color) |
boolean | (string id, Color color, ImGuiColorEditFlags flags) |
boolean | (string id, Color color, ImGuiColorEditFlags flags, Vec2 size) |
Color button widget, display a small colored rectangle.
ImGuiColorEdit
boolean, Color | (string label, Color color) |
boolean, Color | (string label, Color color, ImGuiColorEditFlags flags) |
Color editor, returns the widget current color.
ImGuiColumns
nil | () |
nil | (int count) |
nil | (int count, string id) |
nil | (int count, string id, boolean with_border) |
Begin a column layout section.
To move to the next column use ImGuiNextColumn. To end a column layout section pass 1
to this function.
Note: Current implementation supports a maximum of 64 columns.
ImGuiCombo
boolean, int | (string label, int current_item, StringList items) |
boolean, int | (string label, int current_item, StringList items, int height_in_items) |
Combo box widget, return the current selection index. Combo items are passed as an array of string.
ImGuiDragFloat
boolean, number | (string label, number v) |
boolean, number | (string label, number v, number v_speed) |
boolean, number | (string label, number v, number v_speed, number v_min, number v_max) |
Declare a widget to edit a float value. The widget can be dragged over to modify the underlying value.
ImGuiDragIntVec2
boolean, iVec2 | (string label, iVec2 v) |
boolean, iVec2 | (string label, iVec2 v, number v_speed) |
boolean, iVec2 | (string label, iVec2 v, number v_speed, int v_min, int v_max) |
Declare a widget to edit an iVec2 value. The widget can be dragged over to modify the underlying value.
ImGuiDragVec2
boolean, Vec2 | (string label, Vec2 v) |
boolean, Vec2 | (string label, Vec2 v, number v_speed) |
boolean, Vec2 | (string label, Vec2 v, number v_speed, number v_min, number v_max) |
Declare a float edit widget that can be dragged over to modify its value.
ImGuiDragVec3
boolean, Vec3 | (string label, Vec3 v) |
boolean, Vec3 | (string label, Vec3 v, number v_speed) |
boolean, Vec3 | (string label, Vec3 v, number v_speed, number v_min, number v_max) |
Declare a widget to edit a Vec3 value. The widget can be dragged over to modify the underlying value.
ImGuiDragVec4
boolean, Vec4 | (string label, Vec4 v) |
boolean, Vec4 | (string label, Vec4 v, number v_speed) |
boolean, Vec4 | (string label, Vec4 v, number v_speed, number v_min, number v_max) |
Declare a widget to edit a Vec4 value. The widget can be dragged over to modify the underlying value.
ImGuiDummy
nil | (Vec2 size) |
Add a dummy item of given size.
ImGuiEnd
nil | () |
End the current window.
ImGuiEndChild
nil | () |
End a scrolling region.
ImGuiEndCombo
nil | () |
End a combo widget.
ImGuiEndFrame
nil | (DearImguiContext ctx) |
nil | (DearImguiContext ctx, int view_id) |
nil | () |
nil | (int view_id) |
End the current ImGui frame.
All ImGui rendering is sent to the specified view. If no view is specified, view 255 is used.
See Drawing to Views.
ImGuiEndGroup
nil | () |
End the current group.
ImGuiEndMainMenuBar
nil | () |
End the main menu bar.
ImGuiEndMenu
nil | () |
End the current sub-menu entry.
ImGuiEndMenuBar
nil | () |
End the current menu bar.
ImGuiEndPopup
nil | () |
End the current popup.
ImGuiEndTooltip
nil | () |
End the current tooltip window.
See ImGuiBeginTooltip.
ImGuiGetColorU32
int | (ImGuiCol idx) |
int | (ImGuiCol idx, number alpha_multiplier) |
int | (Color color) |
Return a style color component as a 32 bit unsigned integer.
See ImGuiPushStyleColor.
ImGuiGetColumnIndex
int | () |
Returns the index of the current column.
ImGuiGetColumnOffset
number | () |
number | (int column_index) |
Returns the current column offset in pixels, from the left side of the content region.
ImGuiGetColumnWidth
number | () |
number | (int column_index) |
Returns the current column width in pixels.
ImGuiGetColumnsCount
int | () |
Return the number of columns in the current layout section.
See ImGuiColumns.
ImGuiGetContentRegionAvail
Vec2 | () |
Get available space for content in the current layout.
ImGuiGetContentRegionAvailWidth
number | () |
Helper function to return the available width of current content region.
See ImGuiGetContentRegionAvail.
ImGuiGetContentRegionMax
Vec2 | () |
Return the available content space including window decorations and scrollbar.
ImGuiGetCursorPos
Vec2 | () |
Return the layout cursor position in window space. Next widget declaration will take place at the cursor position.
See ImGuiSetCursorPos and ImGuiSameLine.
ImGuiGetCursorPosX
number | () |
Helper for ImGuiGetCursorPos.
ImGuiGetCursorPosY
number | () |
Helper for ImGuiGetCursorPos.
ImGuiGetCursorScreenPos
Vec2 | () |
Return the current layout cursor position in screen space.
ImGuiGetCursorStartPos
Vec2 | () |
Return the current layout “line” starting position.
See ImGuiSameLine.
ImGuiGetFont
ImFont | () |
Return the current ImGui font.
ImGuiGetFontSize
number | () |
Return the font size (height in pixels) of the current ImGui font with the current scale applied.
ImGuiGetFontTexUvWhitePixel
Vec2 | () |
Get UV coordinate for a while pixel, useful to draw custom shapes via the ImDrawList API.
ImGuiGetFrameCount
int | () |
Return the ImGui frame counter.
See ImGuiBeginFrame and ImGuiEndFrame.
ImGuiGetFrameHeightWithSpacing
number | () |
Return the following value: FontSize + style.FramePadding.y * 2 + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of framed widgets)
ImGuiGetID
int | (string id) |
Return a unique ImGui ID.
ImGuiGetItemRectMax
Vec2 | () |
Get bounding rect maximum of last item in screen space.
ImGuiGetItemRectMin
Vec2 | () |
Get bounding rect minimum of last item in screen space.
ImGuiGetItemRectSize
Vec2 | () |
Get bounding rect size of last item in screen space.
ImGuiGetMouseDragDelta
Vec2 | () |
Vec2 | (ImGuiMouseButton button) |
Vec2 | (ImGuiMouseButton button, number lock_threshold) |
Return the distance covered by the mouse cursor since the last button press.
ImGuiGetMousePos
Vec2 | () |
Return the mouse cursor coordinates in screen space.
ImGuiGetMousePosOnOpeningCurrentPopup
Vec2 | () |
Retrieve a backup of the mouse position at the time of opening the current popup.
See ImGuiBeginPopup.
ImGuiGetScrollMaxX
number | () |
Get maximum scrolling amount on the horizontal axis.
ImGuiGetScrollMaxY
number | () |
Get maximum scrolling amount on the vertical axis.
ImGuiGetScrollX
number | () |
Get scrolling amount on the horizontal axis.
ImGuiGetScrollY
number | () |
Get scrolling amount on the vertical axis.
ImGuiGetTextLineHeight
number | () |
Return the height of a text line using the current font.
See ImGuiPushFont.
ImGuiGetTextLineHeightWithSpacing
number | () |
Return the height of a text line using the current font plus vertical spacing between two layout lines.
ImGuiGetTime
number | () |
Return the current ImGui time in seconds.
ImGuiGetTreeNodeToLabelSpacing
number | () |
Return the horizontal distance preceding label when using ImGuiTreeNode or ImGuiBullet.
The value g.FontSize + style.FramePadding.x * 2
is returned for a regular unframed TreeNode.
ImGuiGetWindowContentRegionMax
Vec2 | () |
Return the content boundaries max (roughly (0,0)+Size-Scroll) where Size can be override with ImGuiSetNextWindowContentSize, in window space.
ImGuiGetWindowContentRegionMin
Vec2 | () |
Content boundaries min (roughly (0,0)-Scroll), in window space.
ImGuiGetWindowContentRegionWidth
number | () |
Return the width of the content region.
ImGuiGetWindowDrawList
ImDrawList | () |
Get the draw list associated to the current window, to append your own drawing primitives.
ImGuiGetWindowHeight
number | () |
Return the current window height.
ImGuiGetWindowPos
Vec2 | () |
Return the current window position in screen space.
See ImGuiSetWindowPos.
ImGuiGetWindowSize
Vec2 | () |
Return the current window size.
See ImGuiSetWindowSize.
ImGuiGetWindowWidth
number | () |
Return the current window width.
ImGuiImage
nil | (Texture tex, Vec2 size) |
nil | (Texture tex, Vec2 size, Vec2 uv0) |
nil | (Texture tex, Vec2 size, Vec2 uv0, Vec2 uv1) |
nil | (Texture tex, Vec2 size, Vec2 uv0, Vec2 uv1, Color tint_col) |
nil | (Texture tex, Vec2 size, Vec2 uv0, Vec2 uv1, Color tint_col, Color border_col) |
Display a texture as an image widget.
See ImGuiImageButton.
ImGuiImageButton
boolean | (Texture tex, Vec2 size) |
boolean | (Texture tex, Vec2 size, Vec2 uv0) |
boolean | (Texture tex, Vec2 size, Vec2 uv0, Vec2 uv1) |
boolean | (Texture tex, Vec2 size, Vec2 uv0, Vec2 uv1, int frame_padding) |
boolean | (Texture tex, Vec2 size, Vec2 uv0, Vec2 uv1, int frame_padding, Color bg_col) |
boolean | (Texture tex, Vec2 size, Vec2 uv0, Vec2 uv1, int frame_padding, Color bg_col, Color tint_col) |
Declare an image button displaying the provided texture.
See ImGuiImage.
ImGuiIndent
nil | () |
nil | (number width) |
Move content position toward the right.
ImGuiInit
nil | (number font_size, ProgramHandle imgui_program, ProgramHandle imgui_image_program) |
Initialize the global ImGui context. This function must be called once before any other ImGui function using the global context.
See ImGuiInitContext.
ImGuiInitContext
DearImguiContext | (number font_size, ProgramHandle imgui_program, ProgramHandle imgui_image_program) |
Initialize an ImGui context. This function must be called once before any other ImGui function using the context.
See ImGuiInit.
ImGuiInputFloat
boolean, number | (string label, number v) |
boolean, number | (string label, number v, number step, number step_fast) |
boolean, number | (string label, number v, number step, number step_fast, int decimal_precision) |
boolean, number | (string label, number v, number step, number step_fast, int decimal_precision, ImGuiInputTextFlags flags) |
Float field widget.
ImGuiInputInt
boolean, int | (string label, int v) |
boolean, int | (string label, int v, int step, int step_fast) |
boolean, int | (string label, int v, int step, int step_fast, ImGuiInputTextFlags flags) |
Integer field widget.
ImGuiInputIntVec2
boolean, iVec2 | (string label, iVec2 v) |
boolean, iVec2 | (string label, iVec2 v, ImGuiInputTextFlags flags) |
ImGuiInputText
boolean, string | (string label, string text, int max_size) |
boolean, string | (string label, string text, int max_size, ImGuiInputTextFlags flags) |
Text input widget, returns the current widget buffer content.
ImGuiInputVec2
boolean, Vec2 | (string label, Vec2 v) |
boolean, Vec2 | (string label, Vec2 v, int decimal_precision) |
boolean, Vec2 | (string label, Vec2 v, int decimal_precision, ImGuiInputTextFlags flags) |
Vec2 field widget.
ImGuiInputVec3
boolean, Vec3 | (string label, Vec3 v) |
boolean, Vec3 | (string label, Vec3 v, int decimal_precision) |
boolean, Vec3 | (string label, Vec3 v, int decimal_precision, ImGuiInputTextFlags flags) |
Vec3 field widget.
ImGuiInputVec4
boolean, Vec4 | (string label, Vec4 v) |
boolean, Vec4 | (string label, Vec4 v, int decimal_precision) |
boolean, Vec4 | (string label, Vec4 v, int decimal_precision, ImGuiInputTextFlags flags) |
Vec4 field widget.
ImGuiInvisibleButton
boolean | (string text, Vec2 size) |
Invisible button widget, return True
if the button was pressed.
ImGuiIsAnyItemActive
boolean | () |
Return true
if any item is active, false
otherwise.
ImGuiIsAnyItemHovered
boolean | () |
Return true
if any item is hovered by the mouse cursor, false
otherwise.
ImGuiIsItemActive
boolean | () |
Was the last item active.
e.g. button being held, text field being edited - items that do not interact will always return false
.
ImGuiIsItemClicked
boolean | () |
boolean | (int mouse_button) |
Was the last item clicked.
ImGuiIsItemHovered
boolean | () |
boolean | (ImGuiHoveredFlags flags) |
Was the last item hovered by mouse.
ImGuiIsItemVisible
boolean | () |
Was the last item visible and not out of sight due to clipping/scrolling.
ImGuiIsKeyDown
boolean | (int key_index) |
Was the specified key down during the last frame?
ImGuiIsKeyPressed
boolean | (int key_index) |
boolean | (int key_index, boolean repeat) |
Was the specified key pressed? A key press implies that the key was down and is currently released.
ImGuiIsKeyReleased
boolean | (int key_index) |
Was the specified key released during the last frame?
ImGuiIsMouseClicked
boolean | (int button) |
boolean | (int button, boolean repeat) |
Was the specified mouse button clicked during the last frame? A mouse click implies that the button pressed earlier and released during the last frame.
ImGuiIsMouseDoubleClicked
boolean | (int button) |
Was the specified mouse button double-clicked during the last frame? A double-click implies two rapid successive clicks of the same button with the mouse cursor staying in the same position.
ImGuiIsMouseDown
boolean | (int button) |
Was the specified mouse button down during the last frame?
ImGuiIsMouseDragging
boolean | (ImGuiMouseButton button) |
boolean | (ImGuiMouseButton button, number lock_threshold) |
Is mouse dragging?
ImGuiIsMouseHoveringRect
boolean | (Vec2 rect_min, Vec2 rect_max) |
boolean | (Vec2 rect_min, Vec2 rect_max, boolean clip) |
Test whether the mouse cursor is hovering the specified rectangle.
ImGuiIsMouseReleased
boolean | (int button) |
Was the specified mouse button released during the last frame?
ImGuiIsRectVisible
boolean | (Vec2 size) |
boolean | (Vec2 rect_min, Vec2 rect_max) |
Test if a rectangle of the specified size starting from cursor position is visible/not clipped. Or test if a rectangle in screen space is visible/not clipped.
ImGuiIsWindowCollapsed
boolean | () |
Is the current window collapsed.
ImGuiIsWindowFocused
boolean | () |
boolean | (ImGuiFocusedFlags flags) |
Is the current window focused.
ImGuiIsWindowHovered
boolean | () |
boolean | (ImGuiHoveredFlags flags) |
Is the current window hovered and hoverable (not blocked by a popup), differentiates child windows from each others.
ImGuiLabelText
nil | (string label, string text) |
Display text+label aligned the same way as value+label widgets.
ImGuiListBox
boolean, int | (string label, int current_item, StringList items) |
boolean, int | (string label, int current_item, StringList items, int height_in_items) |
List widget.
ImGuiMenuItem
boolean | (string label) |
boolean | (string label, string shortcut) |
boolean | (string label, string shortcut, boolean selected) |
boolean | (string label, string shortcut, boolean selected, boolean enabled) |
Return true
when activated. Shortcuts are displayed for convenience but not processed at the moment.
ImGuiMouseDrawCursor
nil | (boolean draw_cursor) |
Enable/disable the ImGui software mouse cursor.
ImGuiNewFrame
nil | () |
ImGuiNewLine
nil | () |
Undo a ImGuiSameLine call or force a new line when in an horizontal layout.
ImGuiNextColumn
nil | () |
Start the next column in multi-column layout.
See ImGuiColumns.
ImGuiOpenPopup
nil | (string id) |
Mark a named popup as open.
Popup windows are closed when the user:
- Clicks outside of their client rect,
- Activates a pressable item,
- ImGuiCloseCurrentPopup is called within a ImGuiBeginPopup/ImGuiEndPopup block.
Popup identifiers are relative to the current ID stack so ImGuiOpenPopup and ImGuiBeginPopup need to be at the same level of the ID stack.
ImGuiPopAllowKeyboardFocus
nil | () |
Undo the last call to ImGuiPushAllowKeyboardFocus.
ImGuiPopButtonRepeat
nil | () |
Undo the last call to ImGuiPushButtonRepeat.
ImGuiPopClipRect
nil | () |
Undo the last call to ImGuiPushClipRect.
ImGuiPopFont
nil | () |
Undo the last call to ImGuiPushFont.
ImGuiPopID
nil | () |
Undo the last call to ImGuiPushID.
ImGuiPopItemWidth
nil | () |
Undo the last call to ImGuiPushItemWidth.
ImGuiPopStyleColor
nil | () |
nil | (int count) |
Undo the last call to ImGuiPushStyleColor.
ImGuiPopStyleVar
nil | () |
nil | (int count) |
Undo the last call to ImGuiPushStyleVar.
ImGuiPopTextWrapPos
nil | () |
Undo the last call to ImGuiPushTextWrapPos.
ImGuiProgressBar
nil | (number fraction) |
nil | (number fraction, Vec2 size) |
nil | (number fraction, Vec2 size, string overlay) |
Draw a progress bar, fraction
must be between 0.0 and 1.0.
ImGuiPushAllowKeyboardFocus
nil | (boolean v) |
Allow focusing using TAB/Shift-TAB, enabled by default but you can disable it for certain widgets.
ImGuiPushButtonRepeat
nil | (boolean repeat) |
In repeat mode, ButtonXXX
functions return repeated true in a typematic manner.
Note that you can call ImGuiIsItemActive after any Button
to tell if the button is held in the current frame.
ImGuiPushClipRect
nil | (Vec2 clip_rect_min, Vec2 clip_rect_max, boolean intersect_with_current_clip_rect) |
Push a new clip rectangle onto the clipping stack.
ImGuiPushFont
nil | (ImFont font) |
Push a font on top of the font stack and make it current for subsequent text rendering operations.
ImGuiPushID
nil | (string id) |
nil | (int id) |
Push a string into the ID stack.
ImGuiPushItemWidth
nil | (number item_width) |
Set the width of items for common large item+label
widgets.
>0
: width in pixels<0
: alignx
pixels to the right of window (so -1 always align width to the right side)=0
: default to ~2/3 of the window width
See ImGuiPopItemWidth.
ImGuiPushStyleColor
nil | (ImGuiCol idx, Color color) |
Push a value on the style stack for the specified style color.
See ImGuiPopStyleColor.
ImGuiPushStyleVar
nil | (ImGuiStyleVar idx, number value) |
nil | (ImGuiStyleVar idx, Vec2 value) |
Push a value on the style stack for the specified style variable.
See ImGuiPopStyleVar.
ImGuiPushTextWrapPos
nil | () |
nil | (number wrap_pos_x) |
Push word-wrapping position for text commands.
<0
: No wrapping.=0
: Wrap to the end of the window or column.>0
: Wrap atwrap_pos_x
position in window local space.
See ImGuiPopTextWrapPos.
ImGuiRadioButton
boolean | (string label, boolean active) |
boolean, int | (string label, int v, int v_button) |
Radio button widget, return the button state.
ImGuiRender
nil | () |
ImGuiResetMouseDragDelta
nil | () |
nil | (ImGuiMouseButton button) |
ImGuiSameLine
nil | () |
nil | (number pos_x) |
nil | (number pos_x, number spacing_w) |
Call between widgets or groups to layout them horizontally.
ImGuiSelectable
boolean | (string label) |
boolean | (string label, boolean selected) |
boolean | (string label, boolean selected, ImGuiSelectableFlags flags) |
boolean | (string label, boolean selected, ImGuiSelectableFlags flags, Vec2 size) |
Selectable item.
The following width
values are possible:
= 0.0
: Use remaining width.> 0.0
: Specific width.
The following height
values are possible:
= 0.0
: Use label height.> 0.0
: Specific height.
ImGuiSeparator
nil | () |
Output an horizontal line to separate two distinct UI sections.
ImGuiSetColumnOffset
nil | (int column_index, number offset_x) |
Set the position of a column line in pixels, from the left side of the contents region.
ImGuiSetColumnWidth
nil | (int column_index, number width) |
Set the column width in pixels.
ImGuiSetCursorPos
nil | (Vec2 local_pos) |
Set the current widget output cursor position in window space.
ImGuiSetCursorPosX
nil | (number x) |
See ImGuiSetCursorPos.
ImGuiSetCursorPosY
nil | (number y) |
See ImGuiSetCursorPos.
ImGuiSetCursorScreenPos
nil | (Vec2 pos) |
Set the widget cursor output position in screen space.
ImGuiSetItemAllowOverlap
nil | () |
Allow the last item to be overlapped by a subsequent item. Sometimes useful with invisible buttons, selectables, etc… to catch unused areas.
ImGuiSetItemDefaultFocus
nil | () |
Make the last item the default focused item of a window.
ImGuiSetKeyboardFocusHere
nil | () |
nil | (int offset) |
Focus keyboard on the next widget.
Use positive offset
value to access sub components of a multiple component widget. Use -1
to access the previous widget.
ImGuiSetNextItemOpen
nil | (boolean is_open) |
nil | (boolean is_open, ImGuiCond condition) |
Set next item open state.
ImGuiSetNextWindowCollapsed
nil | (boolean collapsed, ImGuiCond condition) |
Set next window collapsed state, call before ImGuiBegin.
ImGuiSetNextWindowContentSize
nil | (Vec2 size) |
Set the size of the content area of the next declared window. Call before ImGuiBegin.
ImGuiSetNextWindowContentWidth
nil | (number width) |
See ImGuiSetNextWindowContentSize.
ImGuiSetNextWindowFocus
nil | () |
Set the next window to be focused/top-most. Call before ImGuiBegin.
ImGuiSetNextWindowPos
nil | (Vec2 pos) |
nil | (Vec2 pos, ImGuiCond condition) |
Set next window position, call before ImGuiBegin.
ImGuiSetNextWindowPosCenter
nil | () |
nil | (ImGuiCond condition) |
Set next window position to be centered on screen, call before ImGuiBegin.
ImGuiSetNextWindowSize
nil | (Vec2 size) |
nil | (Vec2 size, ImGuiCond condition) |
Set next window size, call before ImGuiBegin. A value of 0 for an axis will auto-fit it.
ImGuiSetNextWindowSizeConstraints
nil | (Vec2 size_min, Vec2 size_max) |
Set the next window size limits.
Use -1,-1 on either X/Y axis to preserve the current size. Sizes will be rounded down.
ImGuiSetScrollFromPosY
nil | (number pos_y) |
nil | (number pos_y, number center_y_ratio) |
Adjust scrolling amount to make a given position visible. Generally ImGuiGetCursorStartPos + offset to compute a valid position.
ImGuiSetScrollHereY
nil | () |
nil | (number center_y_ratio) |
Adjust scrolling amount to make current cursor position visible.
- 0: Top.
- 0.5: Center.
- 1: Bottom.
When using to make a default/current item visible, consider using ImGuiSetItemDefaultFocus instead.
ImGuiSetScrollX
nil | (number scroll_x) |
Set scrolling amount between [0;ImGuiGetScrollMaxX].
ImGuiSetScrollY
nil | (number scroll_y) |
Set scrolling amount between [0;ImGuiGetScrollMaxY].
ImGuiSetTooltip
nil | (string text) |
Set tooltip under mouse-cursor, typically used with ImGuiIsItemHovered/ImGuiIsAnyItemHovered. Last call wins.
ImGuiSetWindowCollapsed
nil | (string name, boolean collapsed) |
nil | (string name, boolean collapsed, ImGuiCond condition) |
Set named window collapsed state, prefer using ImGuiSetNextWindowCollapsed.
ImGuiSetWindowFocus
nil | (string name) |
Set named window to be focused/top-most.
ImGuiSetWindowFontScale
nil | (number scale) |
Per-window font scale.
ImGuiSetWindowPos
nil | (string name, Vec2 pos) |
nil | (string name, Vec2 pos, ImGuiCond condition) |
Set named window position.
ImGuiSetWindowSize
nil | (string name, Vec2 size) |
nil | (string name, Vec2 size, ImGuiCond condition) |
Set named window size.
ImGuiShutdown
nil | () |
Shutdown the global ImGui context.
ImGuiSliderFloat
boolean, number | (string label, number v, number v_min, number v_max) |
boolean, number | (string label, number v, number v_min, number v_max, string format) |
Float slider widget.
ImGuiSliderInt
boolean, int | (string label, int v, int v_min, int v_max) |
boolean, int | (string label, int v, int v_min, int v_max, string format) |
Integer slider widget.
ImGuiSliderIntVec2
boolean, iVec2 | (string label, iVec2 v, int v_min, int v_max) |
boolean, iVec2 | (string label, iVec2 v, int v_min, int v_max, string format) |
ImGuiSliderVec2
boolean, Vec2 | (string label, Vec2 v, number v_min, number v_max) |
boolean, Vec2 | (string label, Vec2 v, number v_min, number v_max, string format) |
Vec2 slider widget.
ImGuiSliderVec3
boolean, Vec3 | (string label, Vec3 v, number v_min, number v_max) |
boolean, Vec3 | (string label, Vec3 v, number v_min, number v_max, string format) |
Vec3 slider widget.
ImGuiSliderVec4
boolean, Vec4 | (string label, Vec4 v, number v_min, number v_max) |
boolean, Vec4 | (string label, Vec4 v, number v_min, number v_max, string format) |
Vec4 slider widget.
ImGuiSmallButton
boolean | (string label) |
Small button widget fitting the height of a text line, return True
if the button was pressed.
ImGuiSpacing
nil | () |
Add spacing.
ImGuiText
nil | (string text) |
Static text.
ImGuiTextColored
nil | (Color color, string text) |
Colored static text.
ImGuiTextDisabled
nil | (string text) |
Disabled static text.
ImGuiTextUnformatted
nil | (string text) |
Raw text without formatting. Roughly equivalent to ImGuiText but faster, recommended for long chunks of text.
ImGuiTextWrapped
nil | (string text) |
Wrapped static text.
Note that this won’t work on an auto-resizing window if there’s no other widgets to extend the window width, you may need to set a size using ImGuiSetNextWindowSize.
ImGuiTreeNode
boolean | (string label) |
If returning true
the node is open and the user is responsible for calling ImGuiTreePop.
ImGuiTreeNodeEx
boolean | (string label, ImGuiTreeNodeFlags flags) |
See ImGuiTreeNode.
ImGuiTreePop
nil | () |
Pop the current tree node.
ImGuiTreePush
nil | (string id) |
Already called by ImGuiTreeNode, but you can call ImGuiTreePush/ImGuiTreePop yourself for layouting purpose.
ImGuiUnindent
nil | () |
nil | (number width) |
Move content position back to the left (cancel ImGuiIndent).
ImGuiWantCaptureMouse
boolean | () |
ImGui wants mouse capture. Use this function to determine when to pause mouse processing from other parts of your program.
Inch
number | (number inch) |
Convert a value in inches to the Harfang internal unit system.
See Coordinates and Units System.
InputInit
nil | () |
Initialize the Input system. Must be invoked before any call to WindowSystemInit to work properly.
hg.InputInit()
hg.WindowSystemInit()
InputShutdown
nil | () |
Shutdown the Input system.
Inside
boolean | (Rect rect, iVec2 v) |
boolean | (Rect rect, Vec2 v) |
boolean | (Rect rect, Vec3 v) |
boolean | (Rect rect, Vec4 v) |
boolean | (IntRect rect, iVec2 v) |
boolean | (IntRect rect, Vec2 v) |
boolean | (IntRect rect, Vec3 v) |
boolean | (IntRect rect, Vec4 v) |
Test if a value is inside a containing volume.
IntersectRay
boolean, number, number | (MinMax minmax, Vec3 origin, Vec3 direction) |
Intersect an infinite ray with an axis-aligned bounding box, if the first returned value is true
it is followed by the near and far intersection points.
Intersection
Rect | (Rect a, Rect b) |
IntRect | (IntRect a, IntRect b) |
Return the intersection of two rectangles.
Intersects
boolean | (Rect a, Rect b) |
boolean | (IntRect a, IntRect b) |
Return true
if rect a
intersects rect b
.
Inverse
Quaternion | (Quaternion q) |
boolean, Mat3 | (Mat3 m) |
boolean, Mat4 | (Mat4 m) |
Mat44, boolean | (Mat44 m) |
Vec3 | (Vec3 v) |
Return the inverse of a matrix, vector or quaternion.
InverseFast
Mat4 | (Mat4 m) |
Compute the inverse of an orthonormal transformation matrix. This function is faster than the generic Inverse function but can only deal with a specific set of matrices.
See Inverse.
IsAssetFile
boolean | (string name) |
Test if an asset file exists in the assets system.
See Resources & Assets.
IsDir
boolean | (string path) |
Returns true
if path
is a directory on the local filesystem, false
otherwise.
IsEOF
boolean | (File file) |
Returns true
if the cursor is at the end of the file, false
otherwise.
IsFile
boolean | (string path) |
Test if a file exists on the local filesystem.
IsFinite
boolean | (number v) |
Test if a floating point value is finite.
IsMonitorConnected
boolean | (Monitor monitor) |
Test if the specified monitor is connected to the host device.
IsPathAbsolute
boolean | (string path) |
Test if the provided path is an absolute or relative path.
IsPrimaryMonitor
boolean | (Monitor monitor) |
Return true
if the monitor is the primary host device monitor, false
otherwise.
IsValid
boolean | (File file) |
boolean | (Texture t) |
boolean | (FrameBuffer fb) |
boolean | (ForwardPipelineAAA pipeline) |
boolean | (IVideoStreamer streamer) |
Test if a resource if valid.
IsWindowOpen
boolean | (Window window) |
Return true
if the window is open, false
otherwise.
IsoSurfaceSphere
nil | (IsoSurface surface, int width, int height, int depth, number x, number y, number z, number radius) |
nil | (IsoSurface surface, int width, int height, int depth, number x, number y, number z, number radius, number value) |
nil | (IsoSurface surface, int width, int height, int depth, number x, number y, number z, number radius, number value, number exponent) |
Output a sphere to an iso-surface.
IsoSurfaceToModel
boolean | (ModelBuilder builder, IsoSurface surface, int width, int height, int depth) |
boolean | (ModelBuilder builder, IsoSurface surface, int width, int height, int depth, int material) |
boolean | (ModelBuilder builder, IsoSurface surface, int width, int height, int depth, int material, number isolevel) |
boolean | (ModelBuilder builder, IsoSurface surface, int width, int height, int depth, int material, number isolevel, number scale_x, number scale_y, number scale_z) |
Convert an iso-surface to a render model, this function is geared toward efficiency and meant for realtime.
int_to_VoidPointer
VoidPointer | (pointer ptr) |
Cast an integer to a void pointer.
This function is only used to provide access to low-level structures and should not be needed most of the time.
Km
number | (number km) |
Convert a value in kilometers to the Harfang internal unit system.
See Coordinates and Units System.
Len
number | (Vec2 v) |
int | (iVec2 v) |
number | (Quaternion q) |
number | (Vec3 v) |
Return the length of the vector.
Len2
number | (Vec2 v) |
int | (iVec2 v) |
number | (Quaternion q) |
number | (Vec3 v) |
Return the length of the vector squared.
Lerp
int | (int a, int b, number t) |
number | (number a, number b, number t) |
Vec3 | (Vec3 a, Vec3 b, number t) |
Vec4 | (Vec4 a, Vec4 b, number t) |
See LinearInterpolate.
LerpAsOrthonormalBase
Mat4 | (Mat4 from, Mat4 to, number k) |
Mat4 | (Mat4 from, Mat4 to, number k, boolean fast) |
Linear interpolate between two transformation matrices on the [0;1] interval.
LinearInterpolate
number | (number y0, number y1, number t) |
Linear interpolate between two values on the [0;1] interval.
See CosineInterpolate, CubicInterpolate and HermiteInterpolate.
ListDir
DirEntryList | (string path, DirEntryType type) |
Get the content of a directory on the local filesystem, this function does not recurse into subfolders.
See ListDirRecursive.
ListDirRecursive
DirEntryList | (string path, DirEntryType type) |
Get the content of a directory on the local filesystem, this function recurses into subfolders.
See ListDir.
LoadBMP
boolean | (Picture pict, string path) |
Load a Picture in BMP file format.
LoadDataFromFile
boolean | (string path, Data data) |
LoadFontFromAssets
Font | (string name) |
Font | (string name, number size) |
Font | (string name, number size, int resolution) |
Font | (string name, number size, int resolution, int padding) |
Font | (string name, number size, int resolution, int padding, string glyphs) |
Load a TrueType (TTF) font from the assets system.
See Resources & Assets.
LoadFontFromFile
Font | (string path) |
Font | (string path, number size) |
Font | (string path, number size, int resolution) |
Font | (string path, number size, int resolution, int padding) |
Font | (string path, number size, int resolution, int padding, string glyphs) |
Load a TrueType (TTF) font from the local filesystem.
See Resources & Assets.
LoadForwardPipelineAAAConfigFromAssets
boolean | (string path, ForwardPipelineAAAConfig config) |
LoadForwardPipelineAAAConfigFromFile
boolean | (string path, ForwardPipelineAAAConfig config) |
LoadGIF
boolean | (Picture pict, string path) |
Load a Picture in GIF file format.
LoadJPG
boolean | (Picture pict, string path) |
Load a Picture in JPEG file format.
LoadJsonFromAssets
JSON | (string name) |
Load a JSON from the assets system.
See Resources & Assets.
LoadJsonFromFile
JSON | (string path) |
Load a JSON from the local filesystem.
LoadModelFromAssets
Model | (string name) |
Load a render model from the assets system.
See DrawModel and Resources & Assets.
LoadModelFromFile
Model | (string path) |
Load a render model from the local filesystem.
LoadOGGSoundAsset
SoundRef | (string name) |
LoadOGGSoundFile
SoundRef | (string path) |
LoadPNG
boolean | (Picture pict, string path) |
Load a Picture in PNG file format.
LoadPSD
boolean | (Picture pict, string path) |
Load a Picture in PSD file format.
LoadPicture
boolean | (Picture pict, string path) |
Load a Picture content from the filesystem.
LoadPipelineProgramFromAssets
PipelineProgram | (string name, PipelineResources resources, PipelineInfo pipeline) |
Load a pipeline shader program from the assets system.
See Resources & Assets.
LoadPipelineProgramFromFile
PipelineProgram | (string path, PipelineResources resources, PipelineInfo pipeline) |
Load a pipeline shader program from the local filesystem.
LoadPipelineProgramRefFromAssets
PipelineProgramRef | (string name, PipelineResources resources, PipelineInfo pipeline) |
LoadPipelineProgramRefFromFile
PipelineProgramRef | (string path, PipelineResources resources, PipelineInfo pipeline) |
LoadProgramFromAssets
ProgramHandle | (string name) |
ProgramHandle | (string vertex_shader_name, string fragment_shader_name) |
Load a shader program from the assets system.
See Resources & Assets.
LoadProgramFromFile
ProgramHandle | (string path) |
ProgramHandle | (string vertex_shader_path, string fragment_shader_path) |
Load a shader program from the local filesystem.
LoadSceneBinaryFromAssets
boolean | (string name, Scene scene, PipelineResources resources, PipelineInfo pipeline) |
boolean | (string name, Scene scene, PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags) |
Load a scene in binary format from the assets system. Loaded content is added to the existing scene content.
See Resources & Assets.
LoadSceneBinaryFromDataAndAssets
boolean | (Data data, string name, Scene scene, PipelineResources resources, PipelineInfo pipeline) |
boolean | (Data data, string name, Scene scene, PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags) |
LoadSceneBinaryFromDataAndFile
boolean | (Data data, string name, Scene scene, PipelineResources resources, PipelineInfo pipeline) |
boolean | (Data data, string name, Scene scene, PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags) |
LoadSceneBinaryFromFile
boolean | (string path, Scene scene, PipelineResources resources, PipelineInfo pipeline) |
boolean | (string path, Scene scene, PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags) |
Load a scene in binary format from the local filesystem. Loaded content is added to the existing scene content.
LoadSceneFromAssets
boolean | (string name, Scene scene, PipelineResources resources, PipelineInfo pipeline) |
boolean | (string name, Scene scene, PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags) |
LoadSceneFromFile
boolean | (string path, Scene scene, PipelineResources resources, PipelineInfo pipeline) |
boolean | (string path, Scene scene, PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags) |
LoadSceneJsonFromAssets
boolean | (string name, Scene scene, PipelineResources resources, PipelineInfo pipeline) |
boolean | (string name, Scene scene, PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags) |
Load a scene in JSON format from the assets system. Loaded content is added to the existing scene content.
See Resources & Assets.
LoadSceneJsonFromFile
boolean | (string path, Scene scene, PipelineResources resources, PipelineInfo pipeline) |
boolean | (string path, Scene scene, PipelineResources resources, PipelineInfo pipeline, LoadSaveSceneFlags flags) |
Load a scene in JSON format from the local filesystem. Loaded content is added to the existing scene content.
LoadTGA
boolean | (Picture pict, string path) |
Load a Picture in TGA file format.
LoadTextureFlagsFromAssets
TextureFlags | (string name) |
Load texture flags in the texture metafile from the assets system.
See Resources & Assets.
LoadTextureFlagsFromFile
TextureFlags | (string path) |
Load texture flags in the texture metafile from the local filesystem.
LoadTextureFromAssets
Texture, TextureInfo | (string path, TextureFlags flags) |
TextureRef | (string path, int flags, PipelineResources resources) |
Load a texture from the assets system.
- When not using pipeline resources the texture informations are returned directly.
- When using pipeline resources the texture informations can be retrieved from the PipelineResources object.
See Resources & Assets.
LoadTextureFromFile
Texture, TextureInfo | (string path, TextureFlags flags) |
TextureRef | (string path, int flags, PipelineResources resources) |
Load a texture from the local filesystem.
- When not using pipeline resources the texture informations are returned directly.
- When using pipeline resources the texture informations can be retrieved from the PipelineResources object.
LoadWAVSoundAsset
SoundRef | (string name) |
Load a sound in WAV format from the assets system and return a reference to it.
See Resources & Assets.
LoadWAVSoundFile
SoundRef | (string path) |
Load a sound in WAV format from the local filesystem and return a reference to it.
Log
nil | (string msg) |
nil | (string msg, string details) |
MakeForwardPipelineLinearLight
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, Vec4 pssm_split) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, Vec4 pssm_split, number priority) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, Vec4 pssm_split, number priority, ForwardPipelineShadowType shadow_type) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, Vec4 pssm_split, number priority, ForwardPipelineShadowType shadow_type, number shadow_bias) |
Create a forward pipeline linear light.
See ForwardPipelineLights, PrepareForwardPipelineLights and SubmitModelToForwardPipeline.
MakeForwardPipelinePointLight
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, number radius) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, number radius, number priority) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, number radius, number priority, ForwardPipelineShadowType shadow_type) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, number radius, number priority, ForwardPipelineShadowType shadow_type, number shadow_bias) |
Create a forward pipeline point light.
See ForwardPipelineLights, PrepareForwardPipelineLights and SubmitModelToForwardPipeline.
MakeForwardPipelineSpotLight
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, number radius) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, number radius, number inner_angle) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, number radius, number inner_angle, number outer_angle) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, number radius, number inner_angle, number outer_angle, number priority) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, number radius, number inner_angle, number outer_angle, number priority, ForwardPipelineShadowType shadow_type) |
ForwardPipelineLight | (Mat4 world, Color diffuse, Color specular, number radius, number inner_angle, number outer_angle, number priority, ForwardPipelineShadowType shadow_type, number shadow_bias) |
Create a forward pipeline spot light.
See ForwardPipelineLights, PrepareForwardPipelineLights and SubmitModelToForwardPipeline.
MakeFrustum
Frustum | (Mat44 projection) |
Frustum | (Mat44 projection, Mat4 mtx) |
Create a projection frustum. This object can then be used to perform culling using TestVisibility.
# Compute a perspective matrix
proj = hg.ComputePerspectiveProjectionMatrix(0.1, 1000, hg.FovToZoomFactor(math.pi/4), 1280/720)
# Make a frustum from this projection matrix
frustum = hg.MakeFrustum(proj)
MakePlane
Vec4 | (Vec3 p, Vec3 n) |
Vec4 | (Vec3 p, Vec3 n, Mat4 m) |
Geometrical plane in 3D space.
p
: a point lying on the plane.n
: the plane normal.m
: an affine transformation matrix that will be applied top
andn
.
MakeRectFromWidthHeight
Rect | (number x, number y, number w, number h) |
IntRect | (int x, int y, int w, int h) |
Make a rectangle from width and height.
MakeUniformSetTexture
UniformSetTexture | (string name, Texture texture, int stage) |
Create a uniform set texture object.
This object can be added to a UniformSetTextureList to control the shader program uniform values for a subsequent call to DrawModel.
MakeUniformSetValue
UniformSetValue | (string name, number v) |
UniformSetValue | (string name, Vec2 v) |
UniformSetValue | (string name, Vec3 v) |
UniformSetValue | (string name, Vec4 v) |
UniformSetValue | (string name, Mat3 v) |
UniformSetValue | (string name, Mat4 v) |
UniformSetValue | (string name, Mat44 v) |
Create a uniform set value object.
This object can be added to a UniformSetValueList to control the shader program uniform values for a subsequent call to DrawModel.
MakeVec3
Vec3 | (Vec4 v) |
Make a Vec3 from a Vec4. The input vector w
component is discarded.
MakeVertex
Vertex | (Vec3 pos) |
Vertex | (Vec3 pos, Vec3 nrm) |
Vertex | (Vec3 pos, Vec3 nrm, Vec2 uv0) |
Vertex | (Vec3 pos, Vec3 nrm, Vec2 uv0, Color color0) |
MakeVideoStreamer
IVideoStreamer | (string module_path) |
Mat3LookAt
Mat3 | (Vec3 front) |
Mat3 | (Vec3 front, Vec3 up) |
Return a rotation matrix looking down the provided vector. The input vector does not need to be normalized.
Mat4LookAt
Mat4 | (Vec3 position, Vec3 at) |
Mat4 | (Vec3 position, Vec3 at, Vec3 scale) |
Return a look at matrix whose orientation points at the specified position.
Mat4LookAtUp
Mat4 | (Vec3 position, Vec3 at, Vec3 up) |
Mat4 | (Vec3 position, Vec3 at, Vec3 up, Vec3 scale) |
Return a look at matrix whose orientation points at the specified position and up direction.
Mat4LookToward
Mat4 | (Vec3 position, Vec3 direction) |
Mat4 | (Vec3 position, Vec3 direction, Vec3 scale) |
Return a look at matrix whose orientation points toward the specified direction.
Mat4LookTowardUp
Mat4 | (Vec3 position, Vec3 direction, Vec3 up) |
Mat4 | (Vec3 position, Vec3 direction, Vec3 up, Vec3 scale) |
Return a look at matrix whose orientation points toward the specified directions.
Max
Vec2 | (Vec2 a, Vec2 b) |
iVec2 | (iVec2 a, iVec2 b) |
Vec3 | (Vec3 a, Vec3 b) |
number | (number a, number b) |
int | (int a, int b) |
Return a vector whose elements are the maximum of each of the two specified vectors.
Min
Vec2 | (Vec2 a, Vec2 b) |
iVec2 | (iVec2 a, iVec2 b) |
Vec3 | (Vec3 a, Vec3 b) |
number | (number a, number b) |
int | (int a, int b) |
Return a vector whose elements are the minimum of each of the two specified vectors.
MinMaxFromPositionSize
MinMax | (Vec3 position, Vec3 size) |
Set min = p - size/2
and max = p + size/2
.
MkDir
boolean | (string path) |
boolean | (string path, int permissions) |
Create a new directory.
See MkTree.
MkTree
boolean | (string path) |
boolean | (string path, int permissions) |
Create a directory tree on the local filesystem. This function is recursive and creates each missing directory in the path.
See MkDir.
Mm
number | (number mm) |
Convert a value in millimeters to the Harfang internal unit system.
See Coordinates and Units System.
Ms
number | (number milliseconds) |
Convert a value in milliseconds to the Harfang internal unit system.
See Coordinates and Units System.
Mtr
number | (number m) |
Convert a value in meters to the Harfang internal unit system.
See Coordinates and Units System.
NewFullscreenWindow
Window | (Monitor monitor, int mode_index) |
Window | (Monitor monitor, int mode_index, MonitorRotation rotation) |
Window | (string title, Monitor monitor, int mode_index) |
Window | (string title, Monitor monitor, int mode_index, MonitorRotation rotation) |
Create a new fullscreen window.
NewIsoSurface
IsoSurface | (int width, int height, int depth) |
Return a new iso-surface object.
See IsoSurfaceSphere to draw to an iso-surface and IsoSurfaceToModel to draw it.
NewWindow
Window | (int width, int height) |
Window | (int width, int height, int bpp) |
Window | (int width, int height, int bpp, WindowVisibility visibility) |
Window | (string title, int width, int height) |
Window | (string title, int width, int height, int bpp) |
Window | (string title, int width, int height, int bpp, WindowVisibility visibility) |
Create a new window.
NewWindowFrom
Window | (VoidPointer handle) |
Wrap a native window handle in a Window object.
Normalize
Vec2 | (Vec2 v) |
iVec2 | (iVec2 v) |
Vec4 | (Vec4 v) |
Quaternion | (Quaternion q) |
Mat3 | (Mat3 m) |
Vec3 | (Vec3 v) |
Return the input vector scaled so that its length is one.
NormalizePath
string | (string path) |
Normalize a path according to the following conventions:
- Replace all whitespaces by underscores.
Offset
Rect | (Rect rect, number x, number y) |
IntRect | (IntRect rect, int x, int y) |
Offset a rectangle by the specified amount of units.
Open
File | (string path) |
Open a file in binary mode.
See OpenText, OpenWrite, OpenWriteText
OpenFileDialog
boolean, string | (string title, FileFilterList filters, string file) |
boolean, string | (string title, FileFilterList filters, string file, string initial_dir) |
Open a native OpenFile dialog.
OpenFolderDialog
boolean, string | (string title, string folder_name) |
boolean, string | (string title, string folder_name, string initial_dir) |
Open a native OpenFolder dialog.
OpenTemp
File | (string template_path) |
Return a handle to a temporary file on the local filesystem.
OpenText
File | (string path) |
Open a file as text. Return a handle to the opened file.
See Open, OpenWrite, OpenWriteText
OpenVRCreateEyeFrameBuffer
OpenVREyeFrameBuffer | () |
OpenVREyeFrameBuffer | (OpenVRAA aa) |
Creates and returns an Virtual Reality eye framebuffer, with the desired level of anti-aliasing. This function must be invoked twice, for the left and right eyes.
OpenVRDestroyEyeFrameBuffer
nil | (OpenVREyeFrameBuffer eye_fb) |
Destroy an eye framebuffer.
OpenVRGetColorTexture
Texture | (OpenVREyeFrameBuffer eye) |
Return the color texture attached to an eye framebuffer.
OpenVRGetDepthTexture
Texture | (OpenVREyeFrameBuffer eye) |
Return the depth texture attached to an eye framebuffer.
OpenVRGetFrameBufferSize
iVec2 | () |
OpenVRGetState
OpenVRState | (Mat4 body, number znear, number zfar) |
Returns the current OpenVR state including the body, head and eye transformations.
OpenVRInit
boolean | () |
Initialize OpenVR. Start the device display, its controllers and trackers.
OpenVRPostPresentHandoff
nil | () |
Signal to the OpenVR compositor that it can immediatly start processing the current frame.
OpenVRShutdown
nil | () |
Shutdown OpenVR.
OpenVRStateToViewState
ViewState, ViewState | (OpenVRState state) |
Compute the left and right eye view states from an OpenVR state.
See OpenVRGetState.
OpenVRSubmitFrame
nil | (OpenVREyeFrameBuffer left, OpenVREyeFrameBuffer right) |
Submit the left and right eye textures to the OpenVR compositor.
See OpenVRCreateEyeFrameBuffer.
OpenWrite
File | (string path) |
Open a file as binary in write mode.
See Open, OpenText, OpenWriteText
OpenWriteText
File | (string path) |
Open a file as text in write mode.
Orthonormalize
Mat3 | (Mat3 m) |
Mat4 | (Mat4 m) |
Return a matrix where the row vectors form an orthonormal basis. All vectors are normalized and perpendicular to each other.
Overlap
boolean | (MinMax minmax_a, MinMax minmax_b) |
boolean | (MinMax minmax_a, MinMax minmax_b, Axis axis) |
Return true
if the provided volume overlaps with this volume, false
otherwise. The test can optionally be restricted to a specific axis.
PathJoin
string | (StringList elements) |
Return a file path from a set of string elements.
PathStartsWith
boolean | (string path, string with) |
Test if the provided path starts with the provided prefix.
PathStripPrefix
string | (string path, string prefix) |
Return a copy of the input path stripped of the provided prefix.
PathStripSuffix
string | (string path, string suffix) |
Return a copy of the input path stripped of the provided suffix.
PathToDisplay
string | (string path) |
Format a path for display.
PauseSource
nil | (SourceRef source) |
Pause a playing audio source.
See PlayStereo and PlaySpatialized.
PlaySpatialized
SourceRef | (SoundRef snd, SpatializedSourceState state) |
Start playing a spatialized sound. Return a handle to the started source.
PlayStereo
SourceRef | (SoundRef snd, StereoSourceState state) |
Start playing a stereo sound. Return a handle to the started source.
PrepareForwardPipelineLights
ForwardPipelineLights | (ForwardPipelineLightList lights) |
Prepare a list of forward pipeline lights into a structure ready for submitting to the forward pipeline.
Lights are sorted by priority/type and the most important lights are assigned to available lighting slot of the forward pipeline.
See SubmitModelToForwardPipeline.
PrepareSceneForwardPipelineCommonRenderData
int, SceneForwardPipelinePassViewId | (int view_id, Scene scene, SceneForwardPipelineRenderData render_data, ForwardPipeline pipeline, PipelineResources resources, SceneForwardPipelinePassViewId views) |
int, SceneForwardPipelinePassViewId | (int view_id, Scene scene, SceneForwardPipelineRenderData render_data, ForwardPipeline pipeline, PipelineResources resources, SceneForwardPipelinePassViewId views, string debug_name) |
Prepare the common render data to submit a scene to the forward pipeline.
Note: When rendering multiple views of the same scene, common data only needs to be prepared once.
See PrepareSceneForwardPipelineViewDependentRenderData.
PrepareSceneForwardPipelineViewDependentRenderData
int, SceneForwardPipelinePassViewId | (int view_id, ViewState view_state, Scene scene, SceneForwardPipelineRenderData render_data, ForwardPipeline pipeline, PipelineResources resources, SceneForwardPipelinePassViewId views) |
int, SceneForwardPipelinePassViewId | (int view_id, ViewState view_state, Scene scene, SceneForwardPipelineRenderData render_data, ForwardPipeline pipeline, PipelineResources resources, SceneForwardPipelinePassViewId views, string debug_name) |
Prepare the view dependent render data to submit a scene to the forward pipeline.
See PrepareSceneForwardPipelineCommonRenderData.
PrintProfilerFrame
nil | (ProfilerFrame profiler_frame) |
Print a profiler frame to the console. Print all sections in the frame, their duration and event count.
ProcessLoadQueues
int | (PipelineResources res) |
int | (PipelineResources res, int t_budget) |
ProcessModelLoadQueue
int | (PipelineResources res) |
int | (PipelineResources res, int t_budget) |
ProcessTextureLoadQueue
int | (PipelineResources res) |
int | (PipelineResources res, int t_budget) |
Process the texture load queue. This function must be called to load textures queued while loading a scene or model with the LSSF_QueueTextureLoads flag.
See LoadSaveSceneFlags.
ProjectOrthoToClipSpace
boolean, Vec3 | (Mat44 proj, Vec3 view) |
ProjectOrthoToScreenSpace
boolean, Vec3 | (Mat44 proj, Vec3 view, Vec2 resolution) |
ProjectToClipSpace
boolean, Vec3 | (Mat44 proj, Vec3 view) |
Project a world position to the clipping space.
ProjectToScreenSpace
boolean, Vec3 | (Mat44 proj, Vec3 view, Vec2 resolution) |
Project a world position to screen coordinates.
ProjectZToClipSpace
number | (number z, Mat44 proj) |
Project a depth value to clip space.
Quantize
number | (number v, number q) |
Return the provided value quantized to the specified step.
QuaternionFromAxisAngle
Quaternion | (number angle, Vec3 axis) |
Return a quaternion rotation from a 3d axis and a rotation around that axis.
QuaternionFromEuler
Quaternion | (number x, number y, number z) |
Quaternion | (number x, number y, number z, RotationOrder rotation_order) |
Quaternion | (Vec3 euler) |
Quaternion | (Vec3 euler, RotationOrder rotation_order) |
Return a quaternion 3d rotation from its Euler vector representation.
QuaternionFromMatrix3
Quaternion | (Mat3 m) |
Return a quaternion rotation from its Mat3 representation.
QuaternionLookAt
Quaternion | (Vec3 at) |
Return a quaternion 3d rotation oriented toward the specified position when sitting on the world’s origin {0, 0, 0}.
RGBA32
int | (int r, int g, int b) |
int | (int r, int g, int b, int a) |
Create a 32 bit integer RGBA color.
Rad
number | (number radians) |
Convert an angle in radians to the engine unit system.
See Coordinates and Units System.
Rad3
Vec3 | (number x, number y, number z) |
Convert a triplet of angles in radians to the engine unit system.
See Coordinates and Units System.
RadianToDegree
number | (number radians) |
Convert an angle in radians to degrees.
Rand
int | () |
int | (int range) |
Return a random integer value in the provided range, default range is [0;65535].
See FRand to generate a random floating point value.
RandomVec3
Vec3 | (number min, number max) |
Vec3 | (Vec3 min, Vec3 max) |
Return a vector with each component randomized in the inclusive provided range.
RandomVec4
Vec4 | (number min, number max) |
Vec4 | (Vec4 min, Vec4 max) |
Return a vector with each component randomized in the inclusive provided range.
ReadFloat
number | (File file) |
Read a binary 32 bit floating point value from a local file.
ReadGamepad
GamepadState | () |
GamepadState | (string name) |
Read the current state of a named gamepad. If no name is passed, default
is implied.
See GetGamepadNames.
ReadJoystick
JoystickState | () |
JoystickState | (string name) |
ReadKeyboard
KeyboardState | () |
KeyboardState | (string name) |
Read the current state of a named keyboard. If no name is passed, default
is implied.
See GetKeyboardNames.
ReadMouse
MouseState | () |
MouseState | (string name) |
Read the current state of a named mouse. If no name is passed, default
is implied.
See GetMouseNames.
ReadString
string | (File file) |
Read a binary string from a local file.
Strings are stored as a uint32_t length
field followed by the string content in UTF-8.
ReadUInt16
int | (File file) |
Read a binary 16 bit unsigned integer value from a local file.
ReadUInt32
int | (File file) |
Read a binary 32 bit unsigned integer value from a local file.
ReadUInt8
int | (File file) |
Read a binary 8 bit unsigned integer value from a local file.
ReadVRController
VRControllerState | () |
VRControllerState | (string name) |
Read the current state of a named VR controller. If no name is passed, default
is implied.
See GetVRControllerNames.
ReadVRGenericTracker
VRGenericTrackerState | () |
VRGenericTrackerState | (string name) |
Read the current state of a named VR generic tracked. If no name is passed, default
is implied.
Reflect
Vec3 | (Vec3 v, Vec3 n) |
Return the input vector reflected around the specified normal.
Refract
Vec3 | (Vec3 v, Vec3 n) |
Vec3 | (Vec3 v, Vec3 n, number k_in) |
Vec3 | (Vec3 v, Vec3 n, number k_in, number k_out) |
Return the input vector refracted around the provided surface normal.
k_in
: IOR of the medium the vector is exiting.k_out
: IOR of the medium the vector is entering.
RemoveAssetsFolder
nil | (string path) |
Remove a folder from the assets system.
See Resources & Assets.
RemoveAssetsPackage
nil | (string path) |
Remove a package from the assets system.
See Resources & Assets.
RenderInit
boolean | (Window window) |
boolean | (Window window, RendererType type) |
Window | (int width, int height, ResetFlags reset_flags) |
Window | (int width, int height, ResetFlags reset_flags, TextureFormat format) |
Window | (int width, int height, ResetFlags reset_flags, TextureFormat format, DebugFlags debug_flags) |
Window | (int width, int height, RendererType type) |
Window | (int width, int height, RendererType type, ResetFlags reset_flags) |
Window | (int width, int height, RendererType type, ResetFlags reset_flags, TextureFormat format) |
Window | (int width, int height, RendererType type, ResetFlags reset_flags, TextureFormat format, DebugFlags debug_flags) |
Window | (string window_title, int width, int height, ResetFlags reset_flags) |
Window | (string window_title, int width, int height, ResetFlags reset_flags, TextureFormat format) |
Window | (string window_title, int width, int height, ResetFlags reset_flags, TextureFormat format, DebugFlags debug_flags) |
Window | (string window_title, int width, int height, RendererType type) |
Window | (string window_title, int width, int height, RendererType type, ResetFlags reset_flags) |
Window | (string window_title, int width, int height, RendererType type, ResetFlags reset_flags, TextureFormat format) |
Window | (string window_title, int width, int height, RendererType type, ResetFlags reset_flags, TextureFormat format, DebugFlags debug_flags) |
Initialize the render system.
To change the states of the render system afterward use RenderReset.
RenderReset
nil | (int width, int height) |
nil | (int width, int height, ResetFlags flags) |
nil | (int width, int height, ResetFlags flags, TextureFormat format) |
Change the states of the render system at runtime.
RenderResetToWindow
boolean, int, int | (Window win, int width, int height) |
boolean, int, int | (Window win, int width, int height, int reset_flags) |
Resize the renderer backbuffer to the provided window client area dimensions. Return true if a reset was needed and carried out.
RenderShutdown
nil | () |
Shutdown the render system.
ResetClock
nil | () |
Reset the elapsed time counter.
Reverse
Vec2 | (Vec2 a) |
iVec2 | (iVec2 a) |
Vec3 | (Vec3 v) |
Return the provided vector pointing in the opposite direction.
ReverseRotationOrder
RotationOrder | (RotationOrder rotation_order) |
Return the rotation order processing each axis in the reverse order of the input rotation order.
Rewind
nil | (File file) |
Rewind the read/write cursor of an open file.
RmDir
boolean | (string path) |
Remove an empty folder on the local filesystem.
See RmTree.
RmTree
boolean | (string path) |
Remove a folder on the local filesystem.
Warning: This function will through all subfolders and erase all files and folders in the target folder.
RotationMat2D
Mat3 | (number angle, Vec2 pivot) |
Return a 2D rotation matrix by a radians around the specified pivot point.
RotationMat3
Mat3 | (number x, number y, number z) |
Mat3 | (number x, number y, number z, RotationOrder rotation_order) |
Mat3 | (Vec3 euler) |
Mat3 | (Vec3 euler, RotationOrder rotation_order) |
Return a 3x3 rotation matrix.
RotationMat4
Mat4 | (Vec3 euler) |
Mat4 | (Vec3 euler, RotationOrder order) |
Return a 4x3 rotation matrix from euler angles. The default rotation order is YXZ.
RotationMatX
Mat3 | (number angle) |
Return a 3x3 rotation matrix around the world X axis {1, 0, 0}.
RotationMatXY
Mat3 | (number x, number y) |
Return a 3x3 rotation matrix around the X axis followed by a rotation around the Y axis.
RotationMatXYZ
Mat3 | (number x, number y, number z) |
Return a 3x3 rotation matrix around the X axis followed by a rotation around the Y axis then a rotation around the Z axis.
RotationMatXZY
Mat3 | (number x, number y, number z) |
Return a 3x3 rotation matrix around the X axis followed by a rotation around the Z axis then a rotation around the Y axis.
RotationMatY
Mat3 | (number angle) |
Return a 3x3 rotation matrix around the world Y axis {0, 1, 0}.
RotationMatYXZ
Mat3 | (number x, number y, number z) |
Return a 3x3 rotation matrix around the Y axis followed by a rotation around the X axis then a rotation around the Z axis.
RotationMatYZX
Mat3 | (number x, number y, number z) |
Return a 3x3 rotation matrix around the Y axis followed by a rotation around the Z axis then a rotation around the X axis.
RotationMatZ
Mat3 | (number angle) |
Return a 3x3 rotation matrix around the world Z axis {0, 0, 1}.
RotationMatZXY
Mat3 | (number x, number y, number z) |
Return a 3x3 rotation matrix around the Z axis followed by a rotation around the X axis then a rotation around the Y axis.
RotationMatZYX
Mat3 | (number x, number y, number z) |
Return a 3x3 rotation matrix around the Z axis followed by a rotation around the Y axis then a rotation around the X axis.
SRanipalGetState
SRanipalState | () |
Return the current SRanipal device state.
SRanipalInit
boolean | () |
Initial the SRanipal eye detection SDK.
SRanipalIsViveProEye
boolean | () |
Return true
if the eye detection device in use is Vive Pro Eye.
SRanipalLaunchEyeCalibration
nil | () |
Launch the eye detection calibration sequence.
SRanipalShutdown
nil | () |
Shutdown the SRanipal eye detection SDK.
SaveBMP
boolean | (Picture pict, string path) |
Save a Picture in BMP file format.
SaveDataToFile
boolean | (string path, Data data) |
SaveFileDialog
boolean, string | (string title, FileFilterList filters, string file) |
boolean, string | (string title, FileFilterList filters, string file, string initial_dir) |
Open a native SaveFile dialog.
SaveForwardPipelineAAAConfigToFile
boolean | (string path, ForwardPipelineAAAConfig config) |
SaveGeometryToFile
boolean | (string path, Geometry geo) |
Save a geometry to the local filesystem.
Note that in order to render a geometry it must have been converted to model by the asset compiler.
See GeometryBuilder and ModelBuilder.
SaveJsonToFile
boolean | (JSON js, string path) |
Save a JSON object to the local filesystem.
SavePNG
boolean | (Picture pict, string path) |
Save a Picture in PNG file format.
SaveSceneBinaryToData
boolean | (Data data, Scene scene, PipelineResources resources) |
boolean | (Data data, Scene scene, PipelineResources resources, LoadSaveSceneFlags flags) |
SaveSceneBinaryToFile
boolean | (string path, Scene scene, PipelineResources resources) |
boolean | (string path, Scene scene, PipelineResources resources, LoadSaveSceneFlags flags) |
SaveSceneJsonToFile
boolean | (string path, Scene scene, PipelineResources resources) |
boolean | (string path, Scene scene, PipelineResources resources, LoadSaveSceneFlags flags) |
SaveTGA
boolean | (Picture pict, string path) |
Save a Picture in TGA file format.
ScaleMat3
Mat3 | (Vec2 S) |
Mat3 | (Vec3 S) |
Return a 3x3 scale matrix from a 2D vector.
ScaleMat4
Mat4 | (Vec3 scale) |
Mat4 | (number scale) |
Return a 4x3 scale matrix from the parameter scaling vector.
SceneClearSystems
nil | (Scene scene) |
nil | (Scene scene, SceneLuaVM vm) |
nil | (Scene scene, SceneBullet3Physics physics) |
nil | (Scene scene, SceneBullet3Physics physics, SceneLuaVM vm) |
Clear scene and all optional systems.
SceneGarbageCollectSystems
int | (Scene scene) |
int | (Scene scene, SceneLuaVM vm) |
int | (Scene scene, SceneBullet3Physics physics) |
int | (Scene scene, SceneBullet3Physics physics, SceneLuaVM vm) |
Garbage collect a scene and all its optional systems.
SceneSyncToSystemsFromAssets
nil | (Scene scene, SceneLuaVM vm) |
nil | (Scene scene, SceneBullet3Physics physics) |
nil | (Scene scene, SceneBullet3Physics physics, SceneLuaVM vm) |
Synchronize optional systems (eg. physics or script) states with the scene states. Load resources from the assets system if required.
See Resources & Assets.
SceneSyncToSystemsFromFile
nil | (Scene scene, SceneLuaVM vm) |
nil | (Scene scene, SceneBullet3Physics physics) |
nil | (Scene scene, SceneBullet3Physics physics, SceneLuaVM vm) |
Synchronize optional systems (eg. physics or script) states with the scene states. Load resources from the local filesystem if required.
See Resources & Assets.
SceneUpdateSystems
nil | (Scene scene, SceneClocks clocks, int dt) |
nil | (Scene scene, SceneClocks clocks, int dt, SceneLuaVM vm) |
nil | (Scene scene, SceneClocks clocks, int dt, SceneBullet3Physics physics, int step, int max_physics_step) |
nil | (Scene scene, SceneClocks clocks, int dt, SceneBullet3Physics physics, int step, int max_physics_step, SceneLuaVM vm) |
nil | (Scene scene, SceneClocks clocks, int dt, SceneBullet3Physics physics, NodePairContacts contacts, int step, int max_physics_step) |
nil | (Scene scene, SceneClocks clocks, int dt, SceneBullet3Physics physics, NodePairContacts contacts, int step, int max_physics_step, SceneLuaVM vm) |
Update a scene and all its optional systems.
ScreenSpaceToClipSpace
Vec3 | (Vec3 screen, Vec2 resolution) |
Transform a screen position to clip space.
Sec
number | (number seconds) |
Convert a value in seconds to the Harfang internal unit system.
See Coordinates and Units System.
Seed
nil | (int seed) |
Set the starting seed of the pseudo-random number generator.
Seek
boolean | (File file, int offset, SeekMode mode) |
Move the handle cursor to a specific position in the file.
SendVRControllerHapticPulse
nil | (int duration) |
nil | (int duration, string name) |
Send an haptic pulse to a named VR controller.
See GetVRControllerNames.
SetAxises
nil | (Mat3 m, Vec3 X, Vec3 Y, Vec3 Z) |
Inject X, Y and Z axises into a 3x3 matrix.
SetColumn
nil | (Mat3 m, int n, Vec3 column) |
nil | (Mat4 m, int n, Vec3 v) |
nil | (Mat44 m, int idx, Vec4 v) |
Returns the nth column.
SetHeight
nil | (Rect rect, number height) |
nil | (IntRect rect, int height) |
Set a rectangle height.
SetJsonValue
nil | (JSON js, string key, string value) |
nil | (JSON js, string key, boolean value) |
nil | (JSON js, string key, int value) |
nil | (JSON js, string key, number value) |
Set a JSON key value.
SetListener
nil | (Mat4 world, Vec3 velocity) |
Set the listener transformation and velocity for spatialization by the audio system.
SetLogDetailed
nil | (boolean is_detailed) |
Display the details
field of log outputs.
SetLogLevel
nil | (LogLevel log_level) |
Control which log levels should be displayed.
See Log, Warn, Error and Debug.
SetMaterialAlphaCut
nil | (Material mat, boolean enable) |
SetMaterialAmbientUsesUV1
nil | (Material mat, boolean enable) |
SetMaterialBlendMode
nil | (Material mat, BlendMode mode) |
Set material blend mode.
SetMaterialDepthTest
nil | (Material mat, DepthTest test) |
Set material depth test.
SetMaterialDiffuseUsesUV1
nil | (Material mat, boolean enable) |
SetMaterialFaceCulling
nil | (Material mat, FaceCulling culling) |
Set material face culling.
SetMaterialNormalMapInWorldSpace
nil | (Material mat, boolean enable) |
SetMaterialProgram
nil | (Material mat, PipelineProgramRef program) |
Set material pipeline program.
You should call UpdateMaterialPipelineProgramVariant after changing a material pipeline program so that the correct variant is selected according to the material states.
SetMaterialSkinning
nil | (Material mat, boolean enable) |
SetMaterialSpecularUsesUV1
nil | (Material mat, boolean enable) |
SetMaterialTexture
nil | (Material mat, string name, TextureRef texture, int stage) |
Set a material uniform texture and texture stage.
Note: The texture stage specified should match the uniform declaration in the shader program.
SetMaterialTextureRef
nil | (Material mat, string name, TextureRef texture) |
Set a material uniform texture reference.
See PipelineResources.
SetMaterialValue
nil | (Material mat, string name, number v) |
nil | (Material mat, string name, Vec2 v) |
nil | (Material mat, string name, Vec3 v) |
nil | (Material mat, string name, Vec4 v) |
nil | (Material mat, string name, Mat3 m) |
nil | (Material mat, string name, Mat4 m) |
nil | (Material mat, string name, Mat44 m) |
Set a material uniform value.
SetMaterialWriteRGBA
nil | (Material mat, boolean write_r, boolean write_g, boolean write_b, boolean write_a) |
Set a material color write mask.
SetMaterialWriteZ
nil | (Material mat, boolean enable) |
Set a material depth write mask.
SetRenderDebug
nil | (DebugFlags flags) |
Set render system debug flags.
SetRow
nil | (Mat3 m, int n, Vec3 row) |
nil | (Mat4 m, int n, Vec4 v) |
nil | (Mat44 m, int idx, Vec4 v) |
Sets the nth row of a matrix.
SetS
nil | (Mat4 m, Vec3 scale) |
Shortcut for SetScale.
SetSaturation
Color | (Color color, number saturation) |
Return a copy of the input RGBA color with its saturation set to the specified value, alpha channel is left unmodified.
SetScale
nil | (Mat3 m, Vec3 S) |
nil | (Mat4 m, Vec3 scale) |
Set the scaling part of the transformation matrix.
SetSourcePanning
nil | (SourceRef source, number panning) |
Set a playing audio source panning.
SetSourceRepeat
nil | (SourceRef source, SourceRepeat repeat) |
Set audio source repeat mode.
SetSourceTimecode
boolean | (SourceRef source, int t) |
Set timecode of the audio source.
SetSourceTransform
nil | (SourceRef source, Mat4 world, Vec3 velocity) |
Set a playing spatialized audio source transformation.
SetSourceVolume
nil | (SourceRef source, number volume) |
Set audio source volume.
SetT
nil | (Mat4 m, Vec3 T) |
Shortcut for SetTranslation.
SetTransform
nil | (Mat4 mtx) |
Set the model matrix for the next drawn primitive.
If not called, model will be rendered with the identity model matrix.
SetTranslation
nil | (Mat3 m, Vec3 T) |
nil | (Mat3 m, Vec2 T) |
nil | (Mat4 m, Vec3 T) |
Sets the 2D translation part, i.e. the first 2 elements of the last matrix row.
SetView2D
nil | (int id, int x, int y, int res_x, int res_y) |
nil | (int id, int x, int y, int res_x, int res_y, number znear, number zfar) |
nil | (int id, int x, int y, int res_x, int res_y, number znear, number zfar, ClearFlags flags, Color color, number depth, int stencil) |
nil | (int id, int x, int y, int res_x, int res_y, number znear, number zfar, ClearFlags flags, Color color, number depth, int stencil, boolean y_up) |
High-level wrapper function to setup a view for 2D rendering.
This function calls SetViewClear, SetViewRect then SetViewTransform.
SetViewClear
nil | (int view_id, ClearFlags flags) |
nil | (int view_id, ClearFlags flags, int rgba) |
nil | (int view_id, ClearFlags flags, int rgba, number depth) |
nil | (int view_id, ClearFlags flags, int rgba, number depth, int stencil) |
nil | (int view_id, ClearFlags flags, Color col) |
nil | (int view_id, ClearFlags flags, Color col, number depth) |
nil | (int view_id, ClearFlags flags, Color col, number depth, int stencil) |
Set a view clear parameters.
See Drawing to Views.
SetViewFrameBuffer
nil | (int view_id, FrameBufferHandle handle) |
Set view output framebuffer.
See Drawing to Views.
SetViewMode
nil | (int view_id, ViewMode mode) |
Set view draw ordering mode.
SetViewOrthographic
nil | (int id, int x, int y, int res_x, int res_y, Mat4 world) |
nil | (int id, int x, int y, int res_x, int res_y, Mat4 world, number znear, number zfar) |
nil | (int id, int x, int y, int res_x, int res_y, Mat4 world, number znear, number zfar, number size) |
nil | (int id, int x, int y, int res_x, int res_y, Mat4 world, number znear, number zfar, number size, ClearFlags flags, Color color, number depth, int stencil) |
High-level wrapper function to setup a view for 3D orthographic rendering.
This function calls SetViewClear, SetViewRect then SetViewTransform.
SetViewPerspective
nil | (int id, int x, int y, int res_x, int res_y, Mat4 world) |
nil | (int id, int x, int y, int res_x, int res_y, Mat4 world, number znear, number zfar) |
nil | (int id, int x, int y, int res_x, int res_y, Mat4 world, number znear, number zfar, number zoom_factor) |
nil | (int id, int x, int y, int res_x, int res_y, Mat4 world, number znear, number zfar, number zoom_factor, ClearFlags flags, Color color, number depth, int stencil) |
High-level wrapper function to setup a view for 3D perspective rendering.
This function calls SetViewClear, SetViewRect then SetViewTransform.
SetViewRect
nil | (int view_id, int x, int y, int w, int h) |
SetViewTransform
nil | (int view_id, Mat4 view, Mat44 proj) |
Set view transforms, namely the view and projection matrices.
SetWidth
nil | (Rect rect, number width) |
nil | (IntRect rect, int width) |
Set a rectangle width.
SetWindowClientSize
boolean | (Window window, int width, int height) |
Set the window client size. The client area of a window excludes its decoration.
SetWindowPos
boolean | (Window window, iVec2 position) |
Set window position.
SetWindowTitle
boolean | (Window window, string title) |
Set window title.
SetX
nil | (Mat3 m, Vec3 X) |
nil | (Mat4 m, Vec3 X) |
nil | (Rect rect, number x) |
nil | (IntRect rect, int x) |
Sets the first row.
SetY
nil | (Mat3 m, Vec3 Y) |
nil | (Mat4 m, Vec3 Y) |
nil | (Rect rect, number y) |
nil | (IntRect rect, int y) |
Sets the second row.
SetZ
nil | (Mat3 m, Vec3 Z) |
nil | (Mat4 m, Vec3 Z) |
Sets the third row.
ShowCursor
nil | () |
Show the system mouse cursor.
See HideCursor.
Sign
Vec3 | (Vec3 v) |
Returns a vector whose elements are -1 if the corresponding vector element is < 0 and 1 if it’s >= 0.
SkipClock
nil | () |
Skip elapsed time since the last call to TickClock.
Sleep
nil | (int duration) |
Sleep the caller thread, this function will resume execution after waiting for at least the specified amount of time.
Slerp
Quaternion | (Quaternion a, Quaternion b, number t) |
Interpolate between the rotation represented by two quaternions. The Spherical Linear Interpolation will always take the shortest path between the two rotations.
StopAllSources
nil | () |
Stop all playing audio sources.
StopSource
nil | (SourceRef source) |
Stop a playing audio source.
StreamOGGAssetSpatialized
SourceRef | (string name, SpatializedSourceState state) |
StreamOGGAssetStereo
SourceRef | (string name, StereoSourceState state) |
StreamOGGFileSpatialized
SourceRef | (string path, SpatializedSourceState state) |
StreamOGGFileStereo
SourceRef | (string path, StereoSourceState state) |
StreamWAVAssetSpatialized
SourceRef | (string name, SpatializedSourceState state) |
Start an audio stream from a WAV file from the assets system.
See SetSourceTransform and Resources & Assets.
StreamWAVAssetStereo
SourceRef | (string name, StereoSourceState state) |
Start an audio stream from a WAV file from the assets system.
See Resources & Assets.
StreamWAVFileSpatialized
SourceRef | (string path, SpatializedSourceState state) |
Start an audio stream from a WAV file on the local filesystem.
See SetSourceTransform.
StreamWAVFileStereo
SourceRef | (string path, StereoSourceState state) |
Start an audio stream from a WAV file on the local filesystem.
See Resources & Assets.
StringToFile
boolean | (string path, string value) |
Return the content of a file on the local filesystem as a string.
SubmitModelToForwardPipeline
int | (int view_id, Model mdl, ForwardPipeline pipeline, PipelineProgram prg, int prg_variant, int pipeline_stage, Color ambient, ForwardPipelineLights lights, ForwardPipelineFog fog, Mat4 mtx) |
Submit a model to the forward pipeline.
See SetViewMode.
SubmitSceneToForwardPipeline
Submit a scene to a forward pipeline.
See PrepareSceneForwardPipelineCommonRenderData and PrepareSceneForwardPipelineViewDependentRenderData if you need to render the same scene from different points of view.
SubmitSceneToPipeline
See SubmitSceneToForwardPipeline.
SwapFileExtension
string | (string path, string ext) |
Return the input file path with its extension replaced.
Tell
int | (File file) |
Return the current handle cursor position in bytes.
TestVisibility
Visibility | (Frustum frustum, int count, Vec3 points) |
Visibility | (Frustum frustum, int count, Vec3 points, number distance) |
Visibility | (Frustum frustum, Vec3 origin, number radius) |
Visibility | (Frustum frustum, MinMax minmax) |
Test if a list of 3d points are inside or outside a Frustum.
TickClock
int | () |
Advance the engine clock and return the elapsed time since the last call to this function. See GetClock to retrieve the current clock.
See GetClockDt.
ToEuler
Vec3 | (Quaternion q) |
Vec3 | (Quaternion q, RotationOrder rotation_order) |
Vec3 | (Mat3 m) |
Vec3 | (Mat3 m, RotationOrder rotation_order) |
Convert a quaternion rotation to its Euler vector representation.
ToFloatRect
Rect | (IntRect rect) |
Return an integer rectangle as a floating point rectangle.
ToHLS
Color | (Color color) |
Convert input RGBA color to hue/luminance/saturation, alpha channel is left unmodified.
ToIntRect
IntRect | (Rect rect) |
Return a floating point rectangle as an integer rectangle.
ToMatrix3
Mat3 | (Quaternion q) |
Convert a quaternion rotation to its Mat3 representation.
Touch
nil | (int view_id) |
Submit an empty primitive to the view.
See Frame.
TransformFrustum
Frustum | (Frustum frustum, Mat4 mtx) |
Return the input frustum transformed by the provided world matrix.
TransformationMat4
Mat4 | (Vec3 pos, Vec3 rot) |
Mat4 | (Vec3 pos, Vec3 rot, Vec3 scale) |
Mat4 | (Vec3 pos, Mat3 rot) |
Mat4 | (Vec3 pos, Mat3 rot, Vec3 scale) |
Creates a 4x3 transformation matrix from the translation vector p, the 3x3 rotation Matrix m (or YXZ euler rotation vector e) and the scaling vector s.
This is a more efficient version of TranslationMat4(p) * ScaleMat4(s) * m
TranslationMat3
Mat3 | (Vec2 T) |
Mat3 | (Vec3 T) |
Return a 2D translation 3x3 matrix from the first 2 components (x,y) of the parameter vector.
TranslationMat4
Mat4 | (Vec3 t) |
Return a 4x3 translation matrix from the parameter displacement vector.
Transpose
Mat3 | (Mat3 m) |
Return the transpose of the input matrix.
For a pure rotation matrix this returns the opposite transformation so that M*MT=I.
time_from_day
int | (int day) |
Convert days to time.
See Coordinates and Units System.
time_from_hour
int | (int hour) |
Convert hours to time.
See Coordinates and Units System.
time_from_min
int | (int min) |
Convert minutes to time.
See Coordinates and Units System.
time_from_ms
int | (int ms) |
Convert milliseconds to time.
See Coordinates and Units System.
time_from_ms_f
int | (number ms) |
Convert milliseconds to time.
See Coordinates and Units System.
time_from_ns
int | (int ns) |
Convert nanoseconds to time.
See Coordinates and Units System.
time_from_sec
int | (int sec) |
Convert seconds to time.
See Coordinates and Units System.
time_from_sec_f
int | (number sec) |
Convert fractional seconds to time.
See Coordinates and Units System.
time_from_us
int | (int us) |
Convert microseconds to time.
See Coordinates and Units System.
time_from_us_f
int | (number us) |
Convert fractional microseconds to time.
See Coordinates and Units System.
time_now
int | () |
Return the current system time.
time_to_day
int | (int t) |
Convert time to days.
time_to_hour
int | (int t) |
Convert time to hours.
time_to_min
int | (int t) |
Convert time to minutes.
time_to_ms
int | (int t) |
Convert time to milliseconds.
time_to_ms_f
number | (int t) |
Convert time to miliseconds.
time_to_ns
int | (int t) |
Convert time to nanoseconds.
time_to_sec
int | (int t) |
Convert time to seconds.
time_to_sec_f
number | (int t) |
Convert time to fractional seconds.
time_to_string
string | (int t) |
Return time as a human-readable string.
time_to_us
int | (int t) |
Convert time to microseconds.
time_to_us_f
number | (int t) |
Convert time to fractional microseconds.
Union
MinMax | (MinMax minmax_a, MinMax minmax_b) |
MinMax | (MinMax minmax, Vec3 position) |
Compute the union of this bounding volume with another volume or a 3d position.
Unlink
boolean | (string path) |
Remove a file from the local filesystem.
UnloadSound
nil | (SoundRef snd) |
Unload a sound from the audio system.
UnprojectFromClipSpace
boolean, Vec3 | (Mat44 inv_proj, Vec3 clip) |
Unproject a clip space position to view space.
UnprojectFromScreenSpace
boolean, Vec3 | (Mat44 inv_proj, Vec3 screen, Vec2 resolution) |
Unproject a screen space position to view space.
UnprojectOrthoFromClipSpace
boolean, Vec3 | (Mat44 inv_proj, Vec3 clip) |
UnprojectOrthoFromScreenSpace
boolean, Vec3 | (Mat44 inv_proj, Vec3 screen, Vec2 resolution) |
UpdateMaterialPipelineProgramVariant
nil | (Material mat, PipelineResources resources) |
Select the proper pipeline program variant for the current material state.
UpdateTexture
boolean, Texture, iVec2, TextureFormat | (IVideoStreamer streamer, pointer handle, Texture texture, iVec2 size, TextureFormat format) |
boolean, Texture, iVec2, TextureFormat | (IVideoStreamer streamer, pointer handle, Texture texture, iVec2 size, TextureFormat format, boolean destroy) |
UpdateTextureFromPicture
nil | (Texture tex, Picture pic) |
Update texture content from the provided picture.
Note: The picture is expected to be in a format compatible with the texture format.
UpdateWindow
boolean | (Window window) |
Update a window on the host system.
Vec3I
Vec3 | (int x, int y, int z) |
Create a vector from integer values in the [0;255] range.
Vec4I
Vec4 | (int x, int y, int z) |
Vec4 | (int x, int y, int z, int w) |
Create a vector from integer values in the [0;255] range.
VectorMat3
Mat3 | (Vec3 V) |
Return a vector as a matrix.
VertexLayoutPosFloatColorFloat
VertexLayout | () |
VertexLayoutPosFloatColorUInt8
VertexLayout | () |
VertexLayoutPosFloatNormFloat
VertexLayout | () |
Simple vertex layout with float position and normal.
vtx_layout = VertexLayout()
vtx_layout.Begin()
vtx_layout.Add(hg.A_Position, 3, hg.AT_Float)
vtx_layout.Add(hg.A_Normal, 3, hg.AT_Float)
vtx_layout.End()
VertexLayoutPosFloatNormUInt8
VertexLayout | () |
Simple vertex layout with float position and 8-bit unsigned integer normal.
vtx_layout = VertexLayout()
vtx_layout.Begin()
vtx_layout.Add(hg.A_Position, 3, hg.AT_Float)
vtx_layout.Add(hg.A_Normal, 3, hg.AT_Uint8, True, True)
vtx_layout.End()
VertexLayoutPosFloatNormUInt8TexCoord0UInt8
VertexLayout | () |
VertexLayoutPosFloatTexCoord0UInt8
VertexLayout | () |
Warn
nil | (string msg) |
nil | (string msg, string details) |
WindowHasFocus
boolean | (Window window) |
Return true
if the provided window has focus, false
otherwise.
WindowSystemInit
nil | () |
Initialize the Window system.
WindowSystemShutdown
nil | () |
Shutdown the window system.
See WindowSystemInit.
Wrap
number | (number v, number start, number end) |
int | (int v, int start, int end) |
Wrap the input value so that it fits in the specified inclusive range.
WriteFloat
boolean | (File file, number value) |
Write a binary 32 bit floating point value to a file.
WriteString
boolean | (File file, string value) |
Write a string to a file as 32 bit integer size followed by the string content in UTF8.
WriteUInt16
boolean | (File file, int value) |
Write a binary 16 bit unsigned integer to a file.
WriteUInt32
boolean | (File file, int value) |
Write a binary 32 bit unsigned integer to a file.
WriteUInt8
boolean | (File file, int value) |
Write a binary 8 bit unsigned integer to a file.
ZoomFactorToFov
number | (number zoom_factor) |
Convert from a zoom factor value in meters to a fov value in radian.