GeeXLab 0.29.3 released for Windows 64-bit and Linux 64-bit

GeeXLab 3D prototyping for Win64, Linux64, macOS, RaspberryPi and TinkerBoard


1 – Release Notes

GeeXLab 0.29.3 is available for Windows and Linux 64-bit. This new version of GeeXLab brings the support of Assimp 5.0, adds some utility functions for threaded scripts (gh_utils.thread_lock_xxxxx()), fixes a crash in the Vulkan plugin (swapchain resizing…) and in the Python plugin (gh_utils.raycast_cast_ray_v2) and adds a new screenshot function (gh_utils.do_screenshot_v6()).

gh_utils.do_screenshot_v6 has the same parameters than gh_utils.do_screenshot_v5 but does the image saving operation in a separate thread. The image saving is an expensive operation and doing it in a separate thread allows to speed up the screen capture. I added a new demo in the OpenGL 2.1 demopack (d07-meshes-threaded-screenshots) that clearly shows the improvements:

  • no screenshot, the demo runs at 1800 FPS.
  • screenshot every frame with do_screenshot_v5, the demo runs at 30 FPS.
  • screenshot every frame with do_screenshot_v6, the demo runs at 300 FPS.

If we look at the stats, there are roughly 10 frame buffer readings for one image writing on the disk.

A future improvement could be real multi-threaded image saving. Currently a single thread stores images on the disk. This operation can be extended to several threads. But not now, because I have many other things in the pipeline!

GeeXLab screen capture demo


2 – Changelog

This changelog is intended for all versions of GeeXLab.

Full changelog from beginning of time is available HERE.

Version - 2019.10.01
* (2019.10.01) [Windows, Linux] fixed a bug in the swapchain re-creation 
  (after a window resizing) in the Vulkan plugin.
* (2019.10.01) fixed a crash in gh_utils.raycast_cast_ray_v2() in Python.
+ (2019.09.30) gh_utils.clipboard_get_text() now works on Linux.
+ (2019.09.30) added thread_lock_create(), thread_lock_kill_all(), 
  thread_lock_acquire() and thread_lock_release() to gh_utils.
+ (2019.09.29) added support of threaded screenshot: do_screenshot_v6(), 
  screenshot_kill_image_saving_thread(), screenshot_threaded_get_stats() 
  added to gh_utils.
! (2019.09.26) updated ASSIMP plugin with latest ASSIMP 5.0.0 SDK.
+ (2019.09.26) added a new command line option: /append_date_to_log_file .
  This option is also present in init0.xml (append_date_to_log_file="0|1").
  Appending date to log filename looks like: _geexlab_log.20190926.175815.txt
! (2019.09.26) gh_utils.get_date_str() updated for Linux and macOS platforms.

Leave a Comment

Your email address will not be published. Required fields are marked *