1 – Release Notes
Still no Raspberry Pi 4 here in Switzerland. Why???
It does not matter because I’ve done much work on the Windows version.
I re-organized the way plugins are loaded. In previous versions of GeeXLab, all available plugins were loaded during GeeXLab startup. Now, plugins are loaded when scripts require them. This small invisible change involved a bunch of bugs during the dev, last bugs related to plugins management have been fixed few days ago. But I won’t be surprised if some plugins related errors will popup in the future.
Many libraries have been updated to their latest version: Python 3.7.4, cgltf 1.3 (built-in glTF loader), imgui 1.72 (gh_imgui scripting API), PhysX 4.1.1 (gh_physx4 scripting API), SQLite 3.29.0 (gh_sqlite3 scripting API) and ImageMagick 7.0.8-60 (gh_imagemagick scripting API).
The Vulkan renderer has been optimized a bit but I’m still not satisfied because on many demos, the OpenGL renderer is still faster than the Vulkan one. I currently found one demo where Vulkan speed is twice the speed of OpenGL. But this boost in performance is only visible on GeForce GPUs. Maybe I will find the bottleneck once I will start the ray tracing support (RTX). The mipmapping has been finally added to the Vulkan renderer.
I added the support of SPIR-V shaders to the OpenGL renderer (GL_ARB_gl_spirv). It’s a cool feature. I will post an article + demo about this feature.
And because I wanted to quickly enable and disable the dark mode theme in latest Windows 10 v1903, I added some functions in the Lua/Python scripting API to read and write to Windows registry. I used these functions in a simple demo that allows to quickly enable/disable the dark theme. Same thing, I will post an article + demo about this feature.
A new documentation, in a single page, with all functions of the scripting API is now available HERE.
For compatibility reasons, previous documentation is still updated (I try to avoid dead links…).
I will update GeeXLab for Linux, macOS and SBCs (single board computers: RPi and TinkerBoard) as soon as possible!
2 – Changelog
Full changelog from beginning of time is available HERE.
Version 0.29.0.0 - 2019.08.21 + [2019.08.21] added vk_present_mode attribute to the window XML node. ! [2019.08.20] updated glTF built-in loader with latest version 1.3 of cgltf. + [2019.08.16] added create_scene_set_solver_type(), scene_sync_3d_objects_v2() and scene_get_num_active_actors() to gh_physx4 lib. ! [2019.08.14] [Windows] updated PhysX 4 plugin with latest version 4.1.1. ! [2019.08.13] Vulkan renderer plugin compiled with latest Vulkan headers v1.1.118. ! [2019.08.13] [Windows] updated ImageMagick plugin with latest version 7.0.8-60. ! [2019.08.10] now, plugins are loaded when necessary, no longer at the beginning of GeeXLab, resulting in a faster startup. + [2019.08.09] added win_registry_read_value_dword(), win_registry_read_value_string(), win_registry_write_value_dword(), win_registry_write_value_string(), win_registry_create_key() and win_registry_delete_key() to gh_utils. + [2019.08.07] added SPIRV support for OpenGL shaders (GL_ARB_gl_spirv). New scripting functions: create_gl_spirv(), create_from_shader_files_gl_spirv() and create_from_zip_file_gl_spirv() added to gh_gpu_program lib. + [2019.08.07] added set_value_4x4f() to gh_gpu_buffer lib. + [2019.08.07] added mipmapping support to Vulkan renderer. + [2019.08.07] added get_num_mipmaps() to gh_texture lib. * [2019.08.06] removed an unnecessary Vulkan plugin initialization at the start of a demo. This useless Vulkan plugin initialization prevented the debugging with Radeon GPU Profiler ([RDP] Ignoring duplicate instance of GeeXLab). + [2019.07.31] [GPU monitoring plugin] added support of GeForce RTX 2080 SUPER and added variant of RTX 2060/2070 SUPER. ! (2019.07.29) updated ImGui with latest version 1.72. ! (2019.07.29) updated Python 3 plugin with latest version 3.7.4. ! (2019.07.29) Python plugins renamed: plugin_gxl_python2_x64 and plugin_gxl_python3_x64. ! (2019.07.29) updated SQLite3 with latest version 3.29.0.