HarfangHighLevel

Submodules

Package Contents

Classes

GlobalVal

Functions

Init(width: int, height: int, activate_vr: bool = False)

execute_assetc(input_path: str, output_path: str)

getColoredMaterial(color: harfang.Color)

Creates a material using the chosen color. Returns harfang.Material object. Material is cached, meaning that if you create 2 material objects of the same color, modifying one of them will modify the other one as well.

AddFpsCamera(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0)

Creates a fps controller state (uses scene main camera).

AddFpsCameraV(p: harfang.Vec3, r: harfang.Vec3)

AddPointLight(x: float, y: float, z: float, color: harfang.Color = hl.Color.White, shadow: bool = True) → harfang.Node

Initialize a PointLight Node in the scene. Returns harfang.Node object.

AddSpotLight(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, color: harfang.Color = hl.Color.White, shadow: bool = True) → harfang.Node

Initialize a SpotLight Node in the scene. Returns harfang.Node object.

AddLinearLight(angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, color: harfang.Color = hl.Color.White, shadow: bool = True) → harfang.Node

Initialize a LinearLight Node in the scene. Returns harfang.Node object.

AddBox(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_y: float = 1, size_z: float = 1, color: harfang.Color = hl.Color.White) → harfang.Node

Initialize a 3d box node in the scene. Returns harfang.Node object.

AddBoxM(m: harfang.Mat4, size_x: float = 1, size_y: float = 1, size_z: float = 1, color: harfang.Color = hl.Color.White) → harfang.Node

AddPhysicBox(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_y: float = 1, size_z: float = 1, mass: float = 0, friction=0.5, rolling_friction=0.0, restitution=0.0, is_kinematic: bool = False, is_trigger: bool = False, color: harfang.Color = hl.Color.White) → harfang.Node

Initialize a 3d physic box node in the scene. Returns harfang.Node object.

AddPhysicBoxM(m: harfang.Mat4, size_x: float = 1, size_y: float = 1, size_z: float = 1, mass: float = 0, friction=0.5, rolling_friction=0.0, restitution=0.0, is_kinematic: bool = False, is_trigger: bool = False, color: harfang.Color = hl.Color.White) → harfang.Node

AddSphere(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, radius: float = 1, color: harfang.Color = hl.Color.White) → harfang.Node

Initialize a 3d sphere node in the scene. Returns harfang.Node object.

AddSphereM(m: harfang.Mat4, radius: float = 1, color: harfang.Color = hl.Color.White) → harfang.Node

AddPhysicSphere(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, radius: float = 1, mass: float = 0, friction=0.5, rolling_friction=0.0, restitution=0.0, is_kinematic: bool = False, is_trigger: bool = False, color: harfang.Color = hl.Color.White) → harfang.Node

Initialize a 3d physic sphere node in the scene. Returns harfang.Node object.

AddPhysicSphereM(m: harfang.Mat4, radius: float = 1, mass: float = 0, friction=0.5, rolling_friction=0.0, restitution=0.0, is_kinematic: bool = False, is_trigger: bool = False, color: harfang.Color = hl.Color.White) → harfang.Node

AddPlane(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_y: float = 1, color: harfang.Color = hl.Color.White) → harfang.Node

Initialize a 3d plane node in the scene. Returns harfang.Node object.

AddPlaneM(m: harfang.Mat4, size_x: float = 1, size_y: float = 1, color: harfang.Color = hl.Color.White) → harfang.Node

AddCylinder(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, radius: float = 1, height: float = 2, color: harfang.Color = hl.Color.White) → harfang.Node

Iinitialize a 3d cylinder node in the scene. Returns harfang.Node object.

AddCone(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, radius: float = 1, height: float = 2, color: harfang.Color = hl.Color.White) → harfang.Node

Initialize a 3d cone node in the scene. Returns harfang.Node object.

AddCapsule(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, radius: float = 1, height: float = 2, color: harfang.Color = hl.Color.White) → harfang.Node

Initialize a 3d capsule node in the scene. Returns harfang.Node object.

LoadScene(scn_path: str)

Creates a new instance of a 3d object such as a scene or an asset. Returns harfang.Node, bool object.

Add3DFile(file_path: str, override: bool = False, make_physics_object: bool = False, physic_type=hl.RBT_Static, collision_type=hl.CT_Mesh, physic_mass=0, friction=0.5, rolling_friction=0, make_pathfinding: bool = False) → harfang.Node

Creates a new instance of a 3d object by giving the path to the .fbx or .gltf model. Returns harfang.Node object.

Flush3D()

Flush2D(view_id)

UpdateDraw()

DrawBox(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_y: float = 1, size_z: float = 1)

Draws a 3d box. Info : every Draw function is immediate and will not return any node object.

DrawBoxM(m: harfang.Mat4, size: harfang.Vec3 = hl.Vec3(1, 1, 1))

DrawPlane(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_z: float = 1)

Draws a 3d plane.

DrawGeo(geo, x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_y: float = 1, size_z: float = 1)

Draws a 3d geometry.

DrawQuad3D(a_x, a_y, a_z, b_x, b_y, b_z, c_x, c_y, c_z, d_x, d_y, d_z, uv_a=0, uv_b=0, uv_c=1, uv_d=1, tex_path: str = None, color_a: harfang.Color = hl.Color.White, color_b: harfang.Color = hl.Color.White, color_c: harfang.Color = hl.Color.White, color_d: harfang.Color = hl.Color.White)

Draws a 3d quad.

DrawQuad3DV(a, b, c, d, uv_a=0, uv_b=0, uv_c=1, uv_d=1, tex_path: str = None, color_a: harfang.Color = hl.Color.White, color_b: harfang.Color = hl.Color.White, color_c: harfang.Color = hl.Color.White, color_d: harfang.Color = hl.Color.White)

DrawQuad2D(pos_in_pixel_x: float, pos_in_pixel_y: float, width: int, height: int, tex_path: str = None, color: harfang.Color = hl.Color.White, render_state: harfang.RenderState = hl.ComputeRenderState(hl.BM_Alpha, hl.DT_Disabled), depth: float = 0, show_in_vr: bool = True)

Draws a 2d quad.

DrawText2D(text: str, pos_in_pixel_x: float, pos_in_pixel_y: float, size: float = 1.0, color: harfang.Color = hl.Color.Green, text_centered: bool = False, font_: harfang.Font = None, depth: float = 1)

Draws 2d text on screen (requires loading a font).

DrawText(text: str, x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size: float = 0.01, color: harfang.Color = hl.Color.Green, text_centered: bool = False, font_: harfang.Font = None, is_2d: bool = False)

Draws 3d text.

DrawTextM(text: str, mat: harfang.Mat4, size: float = 0.01, color: harfang.Color = hl.Color.Green, text_centered: bool = False, font_: harfang.Font = None, is_2d: bool = False, depth: float = 1)

DrawLine(a_x: float, a_y: float, a_z: float, b_x: float, b_y: float, b_z: float, color: harfang.Color = hl.Color.White, color2: harfang.Color = hl.Color.White)

Draws a 3d line.

DrawLineV(a: harfang.Vec3, b: harfang.Vec3, color: harfang.Color = hl.Color.White, color2: harfang.Color = hl.Color.White)

DrawLineList(points, colors)

DrawCross(x: float, y: float, z: float, color: harfang.Color = hl.Color.White, size: float = 0.5, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0)

Draws a 3d Cross.

DrawCrossV(pos: harfang.Vec3, color: harfang.Color = hl.Color.White, size: float = 0.5, rot: harfang.Vec3 = hl.Vec3(0, 0, 0))

ReturnTrueEveryXSec(sec: float, name_event: str)

Draws a 3d Cross. Returns a boolean.

GetDTSec()

Returns delta-time value in float.

SetCamSpeed(v)

Set camera velocity.

GetCamSpeed()

Get camera velocity. Returns an int

DestroyNode(node: harfang.Node)

Destroys a node from the scene.

__update_physic_mat__(node: harfang.Node)

Updates node physic rigidbody.

ResetWorldAndForce(node: harfang.Node, x: float = 0, y: float = 0, z: float = 0, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0)

ResetWorldAndForceV(node: harfang.Node, p: harfang.Vec3, r: harfang.Vec3)

ResetWorldAndForceM(node: harfang.Node, v: harfang.Mat4)

SetPosition(node: harfang.Node, x: float = 0, y: float = 0, z: float = 0)

Set the position of a node.

SetPositionV(node: harfang.Node, v: harfang.Vec3)

SetRotation(node: harfang.Node, x: float = 0, y: float = 0, z: float = 0)

Set the rotation of a node.

SetRotationV(node: harfang.Node, v: harfang.Vec3)

SetScale(node: harfang.Node, x: float = 1, y: float = 1, z: float = 1)

Set the scale of a node.

SetScaleV(node: harfang.Node, v: harfang.Vec3)

SetMat4(node: harfang.Node, m: harfang.Mat4)

Set the matrix of a node.

SetDiffuseTexture(node: harfang.Node, texture_path: str)

Set the diffuse texture of a node.

KeyPressed(key: int)

Key pressed event, returns a boolean.

KeyDown(key: int)

Key down event, returns a boolean.

GetCameraMat4()

Get camera matrix 4. Returns harfang.Mat4.

NodeAddImpulse(node: harfang.Node, dt_velocity: harfang.Vec3, world_pos: harfang.Vec3 = None)

Adds a physic impulse to a node.

NodeAddForce(node: harfang.Node, F: harfang.Vec3, world_pos: harfang.Vec3 = None)

Adds force to a physic node.

SetParent(node: harfang.Node, parentNode: harfang.Node)

Adds a parent node to a node.

SetVRGroundAnchor(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0)

Sets the VR Ground Anchor.

SetVRGroundAnchorV(p: harfang.Vec3, r: harfang.Vec3)

GetVRControllersMat()

Get VR Controllers Matrix. Returns harfang.Mat4.

Uninit()

Uninit Harfang High Level, destroys scene and window.

PlaySound(file_path: str, repeat: bool = False, volume: float = 1, mat: harfang.Mat4 = None)

Plays a sound.

Attributes

current_folder_path

render_type

gVal

output_assets_path

output_assets_compiled_path

text_render_state

HarfangHighLevel.current_folder_path
HarfangHighLevel.render_type = VK
class HarfangHighLevel.GlobalVal
width :int = 128
height :int = 128
win :int
pipeline :harfang.ForwardPipelineAAA
res :harfang.PipelineResources
render_data :harfang.SceneForwardPipelineRenderData
pass_views :List[harfang.SceneForwardPipelinePassViewId] = []
activate_VR :bool = False
vr_controllers :Dict[str, harfang.VRController]
ground_vr_mat :harfang.Mat4
vr_left_fb :harfang.OpenVREyeFrameBuffer
vr_right_fb :harfang.OpenVREyeFrameBuffer
vr_state :harfang.OpenVRState
vtx_layouts :Dict[str, harfang.VertexLayout]
materials :Dict[str, harfang.Material]
models :Dict[str, harfang.Model]
model_refs :Dict[str, harfang.ModelRef]
shaders :Dict[str, Union[harfang.PipelineProgram, harfang.PipelineProgramRef]]
CacheTexturePathToUniformTargetTex :Dict[str, harfang.UniformSetTexture]
dt :int
clocks :harfang.SceneClocks
scene :harfang.Scene
camera :harfang.Node
update_fps_controller :bool = False
cam_speed :float = 1.0
physics
debug_physics :bool = False
models_3D :List[Dict[str, Any]] = []
texts_3D :List[Dict[str, Any]] = []
lines_3D :List[Dict[str, Any]] = []
quads_3D :List[Dict[str, Any]] = []
objects_2D :List[Dict[str, Any]] = []
font :harfang.Font
mouse :harfang.Mouse
keyboard :harfang.Keyboard
EventNameElapsedSec
HarfangHighLevel.gVal
HarfangHighLevel.output_assets_path
HarfangHighLevel.output_assets_compiled_path
HarfangHighLevel.text_render_state
HarfangHighLevel.Init(width: int, height: int, activate_vr: bool = False)
HarfangHighLevel.execute_assetc(input_path: str, output_path: str)
HarfangHighLevel.getColoredMaterial(color: harfang.Color)

Creates a material using the chosen color. Returns harfang.Material object. Material is cached, meaning that if you create 2 material objects of the same color, modifying one of them will modify the other one as well.

HarfangHighLevel.AddFpsCamera(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0)

Creates a fps controller state (uses scene main camera).

HarfangHighLevel.AddFpsCameraV(p: harfang.Vec3, r: harfang.Vec3)
HarfangHighLevel.AddPointLight(x: float, y: float, z: float, color: harfang.Color = hl.Color.White, shadow: bool = True) harfang.Node

Initialize a PointLight Node in the scene. Returns harfang.Node object.

HarfangHighLevel.AddSpotLight(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, color: harfang.Color = hl.Color.White, shadow: bool = True) harfang.Node

Initialize a SpotLight Node in the scene. Returns harfang.Node object.

HarfangHighLevel.AddLinearLight(angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, color: harfang.Color = hl.Color.White, shadow: bool = True) harfang.Node

Initialize a LinearLight Node in the scene. Returns harfang.Node object.

HarfangHighLevel.AddBox(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_y: float = 1, size_z: float = 1, color: harfang.Color = hl.Color.White) harfang.Node

Initialize a 3d box node in the scene. Returns harfang.Node object.

HarfangHighLevel.AddBoxM(m: harfang.Mat4, size_x: float = 1, size_y: float = 1, size_z: float = 1, color: harfang.Color = hl.Color.White) harfang.Node
HarfangHighLevel.AddPhysicBox(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_y: float = 1, size_z: float = 1, mass: float = 0, friction=0.5, rolling_friction=0.0, restitution=0.0, is_kinematic: bool = False, is_trigger: bool = False, color: harfang.Color = hl.Color.White) harfang.Node

Initialize a 3d physic box node in the scene. Returns harfang.Node object.

HarfangHighLevel.AddPhysicBoxM(m: harfang.Mat4, size_x: float = 1, size_y: float = 1, size_z: float = 1, mass: float = 0, friction=0.5, rolling_friction=0.0, restitution=0.0, is_kinematic: bool = False, is_trigger: bool = False, color: harfang.Color = hl.Color.White) harfang.Node
HarfangHighLevel.AddSphere(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, radius: float = 1, color: harfang.Color = hl.Color.White) harfang.Node

Initialize a 3d sphere node in the scene. Returns harfang.Node object.

HarfangHighLevel.AddSphereM(m: harfang.Mat4, radius: float = 1, color: harfang.Color = hl.Color.White) harfang.Node
HarfangHighLevel.AddPhysicSphere(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, radius: float = 1, mass: float = 0, friction=0.5, rolling_friction=0.0, restitution=0.0, is_kinematic: bool = False, is_trigger: bool = False, color: harfang.Color = hl.Color.White) harfang.Node

Initialize a 3d physic sphere node in the scene. Returns harfang.Node object.

HarfangHighLevel.AddPhysicSphereM(m: harfang.Mat4, radius: float = 1, mass: float = 0, friction=0.5, rolling_friction=0.0, restitution=0.0, is_kinematic: bool = False, is_trigger: bool = False, color: harfang.Color = hl.Color.White) harfang.Node
HarfangHighLevel.AddPlane(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_y: float = 1, color: harfang.Color = hl.Color.White) harfang.Node

Initialize a 3d plane node in the scene. Returns harfang.Node object.

HarfangHighLevel.AddPlaneM(m: harfang.Mat4, size_x: float = 1, size_y: float = 1, color: harfang.Color = hl.Color.White) harfang.Node
HarfangHighLevel.AddCylinder(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, radius: float = 1, height: float = 2, color: harfang.Color = hl.Color.White) harfang.Node

Iinitialize a 3d cylinder node in the scene. Returns harfang.Node object.

HarfangHighLevel.AddCone(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, radius: float = 1, height: float = 2, color: harfang.Color = hl.Color.White) harfang.Node

Initialize a 3d cone node in the scene. Returns harfang.Node object.

HarfangHighLevel.AddCapsule(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, radius: float = 1, height: float = 2, color: harfang.Color = hl.Color.White) harfang.Node

Initialize a 3d capsule node in the scene. Returns harfang.Node object.

HarfangHighLevel.LoadScene(scn_path: str)

Creates a new instance of a 3d object such as a scene or an asset. Returns harfang.Node, bool object.

HarfangHighLevel.Add3DFile(file_path: str, override: bool = False, make_physics_object: bool = False, physic_type=hl.RBT_Static, collision_type=hl.CT_Mesh, physic_mass=0, friction=0.5, rolling_friction=0, make_pathfinding: bool = False) harfang.Node

Creates a new instance of a 3d object by giving the path to the .fbx or .gltf model. Returns harfang.Node object.

HarfangHighLevel.Flush3D()
HarfangHighLevel.Flush2D(view_id)
HarfangHighLevel.UpdateDraw()
HarfangHighLevel.DrawBox(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_y: float = 1, size_z: float = 1)

Draws a 3d box. Info : every Draw function is immediate and will not return any node object.

HarfangHighLevel.DrawBoxM(m: harfang.Mat4, size: harfang.Vec3 = hl.Vec3(1, 1, 1))
HarfangHighLevel.DrawPlane(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_z: float = 1)

Draws a 3d plane.

HarfangHighLevel.DrawGeo(geo, x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size_x: float = 1, size_y: float = 1, size_z: float = 1)

Draws a 3d geometry.

HarfangHighLevel.DrawQuad3D(a_x, a_y, a_z, b_x, b_y, b_z, c_x, c_y, c_z, d_x, d_y, d_z, uv_a=0, uv_b=0, uv_c=1, uv_d=1, tex_path: str = None, color_a: harfang.Color = hl.Color.White, color_b: harfang.Color = hl.Color.White, color_c: harfang.Color = hl.Color.White, color_d: harfang.Color = hl.Color.White)

Draws a 3d quad.

HarfangHighLevel.DrawQuad3DV(a, b, c, d, uv_a=0, uv_b=0, uv_c=1, uv_d=1, tex_path: str = None, color_a: harfang.Color = hl.Color.White, color_b: harfang.Color = hl.Color.White, color_c: harfang.Color = hl.Color.White, color_d: harfang.Color = hl.Color.White)
HarfangHighLevel.DrawQuad2D(pos_in_pixel_x: float, pos_in_pixel_y: float, width: int, height: int, tex_path: str = None, color: harfang.Color = hl.Color.White, render_state: harfang.RenderState = hl.ComputeRenderState(hl.BM_Alpha, hl.DT_Disabled), depth: float = 0, show_in_vr: bool = True)

Draws a 2d quad.

HarfangHighLevel.DrawText2D(text: str, pos_in_pixel_x: float, pos_in_pixel_y: float, size: float = 1.0, color: harfang.Color = hl.Color.Green, text_centered: bool = False, font_: harfang.Font = None, depth: float = 1)

Draws 2d text on screen (requires loading a font).

HarfangHighLevel.DrawText(text: str, x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0, size: float = 0.01, color: harfang.Color = hl.Color.Green, text_centered: bool = False, font_: harfang.Font = None, is_2d: bool = False)

Draws 3d text.

HarfangHighLevel.DrawTextM(text: str, mat: harfang.Mat4, size: float = 0.01, color: harfang.Color = hl.Color.Green, text_centered: bool = False, font_: harfang.Font = None, is_2d: bool = False, depth: float = 1)
HarfangHighLevel.DrawLine(a_x: float, a_y: float, a_z: float, b_x: float, b_y: float, b_z: float, color: harfang.Color = hl.Color.White, color2: harfang.Color = hl.Color.White)

Draws a 3d line.

HarfangHighLevel.DrawLineV(a: harfang.Vec3, b: harfang.Vec3, color: harfang.Color = hl.Color.White, color2: harfang.Color = hl.Color.White)
HarfangHighLevel.DrawLineList(points, colors)
HarfangHighLevel.DrawCross(x: float, y: float, z: float, color: harfang.Color = hl.Color.White, size: float = 0.5, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0)

Draws a 3d Cross.

HarfangHighLevel.DrawCrossV(pos: harfang.Vec3, color: harfang.Color = hl.Color.White, size: float = 0.5, rot: harfang.Vec3 = hl.Vec3(0, 0, 0))
HarfangHighLevel.ReturnTrueEveryXSec(sec: float, name_event: str)

Draws a 3d Cross. Returns a boolean.

HarfangHighLevel.GetDTSec()

Returns delta-time value in float.

HarfangHighLevel.SetCamSpeed(v)

Set camera velocity.

HarfangHighLevel.GetCamSpeed()

Get camera velocity. Returns an int

HarfangHighLevel.DestroyNode(node: harfang.Node)

Destroys a node from the scene.

HarfangHighLevel.__update_physic_mat__(node: harfang.Node)

Updates node physic rigidbody.

HarfangHighLevel.ResetWorldAndForce(node: harfang.Node, x: float = 0, y: float = 0, z: float = 0, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0)
HarfangHighLevel.ResetWorldAndForceV(node: harfang.Node, p: harfang.Vec3, r: harfang.Vec3)
HarfangHighLevel.ResetWorldAndForceM(node: harfang.Node, v: harfang.Mat4)
HarfangHighLevel.SetPosition(node: harfang.Node, x: float = 0, y: float = 0, z: float = 0)

Set the position of a node.

HarfangHighLevel.SetPositionV(node: harfang.Node, v: harfang.Vec3)
HarfangHighLevel.SetRotation(node: harfang.Node, x: float = 0, y: float = 0, z: float = 0)

Set the rotation of a node.

HarfangHighLevel.SetRotationV(node: harfang.Node, v: harfang.Vec3)
HarfangHighLevel.SetScale(node: harfang.Node, x: float = 1, y: float = 1, z: float = 1)

Set the scale of a node.

HarfangHighLevel.SetScaleV(node: harfang.Node, v: harfang.Vec3)
HarfangHighLevel.SetMat4(node: harfang.Node, m: harfang.Mat4)

Set the matrix of a node.

HarfangHighLevel.SetDiffuseTexture(node: harfang.Node, texture_path: str)

Set the diffuse texture of a node.

HarfangHighLevel.KeyPressed(key: int)

Key pressed event, returns a boolean.

HarfangHighLevel.KeyDown(key: int)

Key down event, returns a boolean.

HarfangHighLevel.GetCameraMat4()

Get camera matrix 4. Returns harfang.Mat4.

HarfangHighLevel.NodeAddImpulse(node: harfang.Node, dt_velocity: harfang.Vec3, world_pos: harfang.Vec3 = None)

Adds a physic impulse to a node.

HarfangHighLevel.NodeAddForce(node: harfang.Node, F: harfang.Vec3, world_pos: harfang.Vec3 = None)

Adds force to a physic node.

HarfangHighLevel.SetParent(node: harfang.Node, parentNode: harfang.Node)

Adds a parent node to a node.

HarfangHighLevel.SetVRGroundAnchor(x: float, y: float, z: float, angle_x: float = 0, angle_y: float = 0, angle_z: float = 0)

Sets the VR Ground Anchor.

HarfangHighLevel.SetVRGroundAnchorV(p: harfang.Vec3, r: harfang.Vec3)
HarfangHighLevel.GetVRControllersMat()

Get VR Controllers Matrix. Returns harfang.Mat4.

HarfangHighLevel.Uninit()

Uninit Harfang High Level, destroys scene and window.

HarfangHighLevel.PlaySound(file_path: str, repeat: bool = False, volume: float = 1, mat: harfang.Mat4 = None)

Plays a sound.