GeeXLab released for Windows, Linux, macOS and Raspberry Pi

GeeXLab logo

A new version of GeeXLab is ready for your pixel hacks.

1 – Release Highlights

GeeXLab is available for all supported platforms: Windows (32/64-bit), Linux (64-bit), macOS and Raspberry Pi (OpenGL 2.1, OPenGL ES 2.0 and OpenGL ES 2.0 for Stretch).

GeeXLab brings to all platforms features added in versions 0.17.3.x and 0.17.4.x for Windows.

And here is an overview of new features of version


1.1 – ASUS Aura Lighting for the Motherboard and GPU (Windows 32-bit)

ASUS Aura is ASUS’ illumination technology that makes it possible to control the LEDs available on different devices such as motherboard, graphics cards, RAM, mouse and keyboard. Obviously, Aura is limited to ASUS products.

Other major motherboard and graphics cards makers have also their own illumination technology but ASUS is the one that shares its SDK.

So I decided to code a plugin for GeeXLab based on Aura SDK. The ASUS Aura plugin currently supports illumination on motherboard and graphics cards. I have no keyboard, mouse or even RAM from ASUS so I didn’t add their support (I don’t want to add functionalities in GeeXLab without minimal tests).

A new library (gh_asus_aura) is available in Lua and Python as well as a new code sample (gl-32/asus_aura_led_sdk/).

ASUS ships only 32-bit version of Aura DLLs for Windows and then the GeeXLab plugin is available for the Windows 32-bit version of GeeXLab only. And according to this thread, no 64-bit version is planned. Why??? ASUS does not like 64-bit app???


1.2 – Vulkan Extensions and Layers (Windows and Linux)

I added a simple way to specify additional Vulkan extensions and layers. The Vulkan plugin enables some extensions and layers but if you need to test new layers or extensions you can specify them by two methods:
A – command line

GeeXLab /vulkan_instance_extensions="..." /vulkan_instance_layers="..." /vulkan_device_extensions="..." /vulkan_device_layers="..."


GeeXLab /vulkan_device_extensions="VK_NV_clip_space_w_scaling VK_NV_fragment_coverage_to_color"

Each extension or layer is separated by a space.

B – Window XML node
The second way requires to modify the window XML node by adding new attributes. This works like the command line:

<window name="win3d01" title="Vulkan demo" 
          width="800" height="400" 
          renderer_type="Vulkan" gpu_index="0"
          vulkan_instance_layers="..." vulkan_device_layers="..."
          vulkan_instance_extensions="..." vulkan_device_extensions="..." />

I added this support because I wanted a simple way to test (enable or disable) the overlay layer available with the LunarG Vulkan SDK.


2 – Downloads

The latest version of GeeXLab as well as code sample packs can be downloaded from THIS PAGE.

For bug-reports or feedbacks, a thread is available HERE.


3 – Changelog

Full changelog from beginning of time is available HERE.

Version – 2017.11.10
+ [WINDOWS 32-bit] added support of ASUS Aura lighting SDK.
New lib gh_asus_aura in Lua and Python. No ASUS Aura support on Windows 64-bit (see here).
+ added specification of Vulkan layers and extensions by user (in XML window node
and by command line).
+ added new Lua lib for text rendering based on gh_font
lib in {GeeXLab Folder}/libs/lua/libfont/libfont1.lua