HARFANG® 1.2.0 is available!


The version 1.2.0 of HARFANG® 3D is now available, with the following changes:

API Changes:

  • Engine: AnimTrackRotation::SetKey now takes a Vector3 as input.
  • Engine: Use harfang types instead of ImVec2, ImVec3 and ImVec4 in ImGui binding.

New features:

  • Engine: Add an ImGui widget for time_ns.
  • Engine: Add GLFW backend to egl_renderer.
  • Engine: Add support for ImGui docking.
  • Platform: Add GLFW backend.
  • Platform: Add GetMonitorContentScale and GetWindowContentScale to window system.
  • Foundation: Add Catmull-Rom spline generation functions.
  • Add toolchain files for Yocto cross-compilation.


  • Engine: Bind new Document API.
  • Engine: Bind Node Metadata Component.
  • Engine: Bind ImGuiSetWindowGlobalFontScale.
  • Global: Improve global_object assertions and default assertion function.
  • Refactor build process.
  • Various documentation improvements.

Bug fixes:

  • Engine: Properly deactivate anti-alias when it’s not supported.
  • Engine: Engine: Add support for OpenGL extensions for multisampled textures and instanced drawing.
  • Engine: Force loading of instanced drawing functions on OpenGL ES.
  • Engine: Fix undefined behavior when l_do_myfile fails in LuaVM.
  • Engine: Don’t render surfaces not associated with current pass/shader.
  • Engine: Fix Scene GetAnimTakeByName binding.
  • Engine: Fix a runtime crash in GetTypeValueFromLua when using a type unknown to the reflection layer.
  • Engine: Fix anim takes not cleared on Scene::Clear.
  • Emscripten: BinaryDocument: Need special aligned memory in asm.js
  • Default to no PCH on Unix build.


  • Engine: Update OpenVR to 1.0.11.
  • Engine: Update RapidJSON.
  • Engine: Update OpenAL soft to 1.19.1.
  • Merge all licenses into a single root license.txt file.

As usual, the Python module, Lua extension and the C++ SDK are available for both Windows and Linux on the download page