GeeXLab 0.29.2 released for all platforms: Alpha to Coverage added, FMOD and WiringPi Support Updated

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


1 – Release Notes

GeeXLab 0.29.2 comes with the following changes:

– support of Alpha to Coverage for all platforms in OpenGL: Alpha to Coverage is not a new feature in OpenGL but it was missing in GeeXlab. And I needed this feature in a new demo I worked on these last days (grass rendering).

– support of FMOD on all platforms: so far, the FMOD plugin was only present on Windows, Linux and macOS. Now it’s also available on Raspberry Pi and TinkerBoard. FMOD is a powerful sound system and now it’s easy to play sounds (mp3, waw, xm, s3m, etc…) on any platform.

ImGui library updated to latest version 1.73 (released today!)

WiringPi 2.52 on Raspberry Pi: WiringPi is the reat lib that makes it possible to access the GPIO connector of the Raspberry Pi. I forgot to check updates of this lib in previous versions of GeeXLab. WiringPi 2.52 is the latest version of WiringPi and comes with full support of Raspberry Pi 4. WiringPi is included in the latest Raspbian but it’s an old version: 2.50, the RPi 4 being not fully supported. I was a bit sad to learn that WiringPi 2.52 is the last version: WiringPi’s author, Gordon Henderson, has decided to stop the public version of WiringPi because of too many … fu*k*ng assholes that don’t respect his amazing work on WiringPi. Gordon has posted an article that explains why: wiringPi – deprecated. I don’t understand why the Raspberry Pi Foundation doesn’t help Gordon, this situation shouldn’t exist.

I updated GPIO demos that are shipped with GeeXLab for RPi (in the demopack02/rpi_gpio/ folder ). All those demos are based on WiringPi. The following screenshot is the demo_v1.xml that uses gh_rpi.gpio_get_board_info() to get information about the Raspberry Pi hardware.

GeeXLab - WiringPi demo on RaspberryPi

Last thing: GeeXLab for Raspberry Pi works only on Raspbian Buster because it’s linked with GLIBC 2.28. My test version of Raspbian Stretch has GLIBC 2.24. If you really need GeeXLab for Stretch, let me know, I will try to find some time (no guarantee) to recompile it for Raspbian Stretch.

GeeXLab 0.29.2 is out, and now, it’s time to release new demos, articles and apps based on this version 0.29.2 😉


2 – Changelog

This changelog is intended for all versions of GeeXLab.

Full changelog from beginning of time is available HERE.

Version - 2019.09.25
+ (2019.09.25) [RaspberryPi / TinkerBoard] FMOD plugin added!
! (2019.09.25) [RaspberryPi / TinkerBoard] enabled multisampling support (GL_MULTISAMPLE).
+ (2019.09.25) [RaspberryPi] updated WiringPi with latest version 2.52 (including RPi 4 support). 
! (2019.09.25) updated ImGui with latest version 1.73.
! (2019.09.25) [Windows] updated GPU Shark
+ (2019.09.24) [OpenGL renderer] added support of GL_SAMPLE_ALPHA_TO_COVERAGE and GL_SAMPLE_ALPHA_TO_ONE in gh_renderer.enable_state().
! (2019.09.24) [FMOD plugin] updated with latest FMOD Core SDK version 2.0.4 on Windows, Linux and macOS.
! (2019.09.24) [FMOD plugin] added FMOD_CREATESAMPLE to sound creation. This flag forces the decompression at loadtime, decompressing or decoding whole file into memory. It's the fastest for playback.
* (2019.09.23) fixed a bug in libs/lua/gxl.lua and libs/python/ the addressing mode was not set in set_sampler_params().

5 thoughts on “GeeXLab 0.29.2 released for all platforms: Alpha to Coverage added, FMOD and WiringPi Support Updated”

  1. Ken

    GeeXLab crash on start on macOS 10.15( -[NSOpenGLContext setView:] must be called from the main thread. ):

    Process: GeeXLab [47349]
    Path: /private/var/folders/*/
    Identifier: Geeks3D.GeeXLab
    Version: 0.29 (1)
    Code Type: X86-64 (Native)
    Parent Process: ??? [1]
    Responsible: GeeXLab [47349]
    User ID: 501

    Date/Time: 2019-12-09 19:16:39.886 +0800
    OS Version: Mac OS X 10.15.1 (19B88)
    Report Version: 12
    Bridge OS Version: 4.1 (17P1081)
    Anonymous UUID: 75712460-7D05-B8BB-C2B5-020ACDA6C865

    Time Awake Since Boot: 35000 seconds

    System Integrity Protection: enabled

    Notes: Translocated Process

    Crashed Thread: 15

    Exception Codes: 0x0000000000000001, 0x0000000000000000
    Exception Note: EXC_CORPSE_NOTIFY

    Termination Signal: Illegal instruction: 4
    Termination Reason: Namespace SIGNAL, Code 0x4
    Terminating Process: exc handler [47349]

    Application Specific Information:
    -[NSOpenGLContext setView:] must be called from the main thread.

    Thread 15 Crashed:
    0 0x00007fff2d769cbc -[NSOpenGLContext setView:] + 229
    1 libgxc_r_osx.dylib 0x000000011021ab06 0x110082000 + 1673990
    2 libgxc_r_osx.dylib 0x0000000110216951 0x110082000 + 1657169
    3 libgxl_r_osx.dylib 0x000000010fe5d0f2 0x10fd7d000 + 917746
    4 libgxl_r_osx.dylib 0x000000010fd899e5 0x10fd7d000 + 51685
    5 libgxl_r_osx.dylib 0x000000010fdbe76f 0x10fd7d000 + 268143
    6 libgxl_r_osx.dylib 0x000000010fde2561 0x10fd7d000 + 415073
    7 libgxl_r_osx.dylib 0x000000010fde2283 0x10fd7d000 + 414339
    8 Geeks3D.GeeXLab 0x000000010fccc75a GXLAPP_Demo::init_window3d(GXLAPP_Window*) + 1642
    9 Geeks3D.GeeXLab 0x000000010fcf1159 RenderThread_Init(GXLAPP_Window*) + 265
    10 Geeks3D.GeeXLab 0x000000010fcf2c1d RenderThread(void*) + 29
    11 libsystem_pthread.dylib 0x00007fff678e2d36 _pthread_start + 125
    12 libsystem_pthread.dylib 0x00007fff678df58f thread_start + 15

  2. JeGX Post Author

    Thanks, I will look at that issue asap.
    But it’s weird, because I built GeeXLab on macOS 10.15 (mac-mini with an Intel GPU) and it worked perfectly.

Leave a Comment

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