Quick Links: Download Gideros Studio | Gideros Documentation | Gideros Development Center | Gideros community chat | DONATE
Gideros 2023.2 Released — Gideros Forum

Gideros 2023.2 Released

hgy29hgy29 Maintainer
edited March 2023 in Announcements
With all the work that have happened regarding win32 export, it was time to make a new full release of Gideros. Beside the vastly improved win32 export, a few internal calls have been improved and optimized for performance.

Here is the full change log:

Improvements
[sprite] Add Sprite:spriteToLocal to convert from one sprite local space to another
[sprite] hitTestPoint accepts a fourth arg specifying which sprite is the reference of x,y coordinates given. if nil global coordinates are assumed as before.
[audio] add a way to supply biquad filters parameters
[core/screen] add Screen:setTitle() call
[core] Improve performance in various fields

[player] Handle tablet hover

[export/win32] Implement touch/pen support
[export/win32] Export icon into app

[plugin/ads] Use AdMob 21.5.0 on android
[plugin/spout] Compile for win32

[library/3d] use Luau internal string:split function (8x faster)
[Library] Update many libs

Fixes
[core] Fix getChildrenAtPoint
[eventdispatcher] Fix removeAllListeners

[export/win32] generate APPLICATION_EXIT event
[export/win32] Use 64 bit, fix internal app naming
[export/win32] Fix GL buffers dropped on resize
[export/win32] Fix alert/textinput dialogs not working
[export/win32] Fix file dialogs not completely modal
[export/win32] Fix project internal name, use app name as default window title
[export/win32] Use absolute directory when looking for resources
[export/win32] Fix catching of F10 key
[export/win32] Fix mouse wheel coordinates (and add buttons)
[export/win32] Fix Screen closed state handling

[plugin/ads] Fix ads template for winrt
[plugin/microphone] winrt support (experimental)
[plugin/microphone] Fix building for win32

Download it from here:
http://giderosmobile.com/download
Tagged:
+1 -1 (+6 / -0 )Share on Facebook

Comments

  • MoKaLuxMoKaLux Member
    edited February 2023
    awesome, thank you for the continuous hard work hgy29 aka captain :)

    Trying to update the wiki to the best of my knowledge :*
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • amazing update, i recommend everybody to try the win32 export when exporting to windows.

    Likes: MoKaLux, MobAmuse

    +1 -1 (+2 / -0 )Share on Facebook
  • Thank you! :smile:

    May I ask what is this?
    [audio] add a way to supply biquad filters parameters

    Likes: MoKaLux

    +1 -1 (+1 / -0 )Share on Facebook
  • MoKaLuxMoKaLux Member
    edited February 2023
    thanks pie for the wiki :)

    at keszegh below DONE :)

    Likes: pie

    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
    +1 -1 (+1 / -0 )Share on Facebook
  • hgy29hgy29 Maintainer
    pie said:

    Thank you! :smile:

    May I ask what is this?
    [audio] add a way to supply biquad filters parameters

    Sure! Now that openal soft is used on all platforms for audio output, I decided to expose its built in equalizer to gideros.

    It can be enabled on a sound channel through
    			audioChannel:setEffect("equalizer",{ equalizer settings })
    equalizer settings is table with the main gain as first number and the following values afterwards:
    #define AL_EQUALIZER_LOW_GAIN 0x0001
    #define AL_EQUALIZER_LOW_CUTOFF 0x0002
    #define AL_EQUALIZER_MID1_GAIN 0x0003
    #define AL_EQUALIZER_MID1_CENTER 0x0004
    #define AL_EQUALIZER_MID1_WIDTH 0x0005
    #define AL_EQUALIZER_MID2_GAIN 0x0006
    #define AL_EQUALIZER_MID2_CENTER 0x0007
    #define AL_EQUALIZER_MID2_WIDTH 0x0008
    #define AL_EQUALIZER_HIGH_GAIN 0x0009
    #define AL_EQUALIZER_HIGH_CUTOFF 0x000A

    So this tells about the equalizer, but you asked about biquads. The equalizer turns the above coefficient into four biquad digital filters, but I wanted to be able to pass my own biquad settings (for one of my apps) directly, so now we can call
     audioChannel:setEffect("biquad",{ biquad coefficients })
    too.

    Likes: pie, MoKaLux

    +1 -1 (+2 / -0 )Share on Facebook
  • keszeghkeszegh Member
    edited February 2023
    a problem/question:
    when using a wacom pen then when the touchesEnd event comes then the button is set as '0' always (whereas it should be '1' when the pen is not on the tablet anymore and it should be '2' when the pen button is released (when hovering)). at least with mouse it is like this. can this be corrected or i have to live with it? the main issue is if both are pressed then i don't know which one was released.

    it seems this happens on both winqt and win32 (others i did not test).

    btw on mouse when 2 buttons are pressed it gives mouseMove with 1 and 2 alternately. on pen it only gives '2' in this case. but this i guess is intentional and cannot be changed.
  • The Win32 export is superb!

    Likes: hgy29, MoKaLux

    +1 -1 (+2 / -0 )Share on Facebook
  • MoKaLuxMoKaLux Member
    edited March 2023
    Does html5 export works for you guys?

    On my side when building I have those errors. The app loads with the Gideros loading bar but then all I have is a blank screen.

    The web log is:
    WebGL warning: framebufferRenderbuffer: No framebuffer bound. 2
    scenemanager.lua Not found in archive gidloader.js:244:17
    easing.lua Not found in archive gidloader.js:244:17
    WebGL warning: framebufferRenderbuffer: No framebuffer bound. 2
    scenemanager.lua Not found in archive gidloader.js:244:17
    easing.lua Not found in archive gidloader.js:244:17
    Uncaught RuntimeError: index out of bounds
        browserIterationFunc <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:7456" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:7456</a>
        callUserCallback <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:6742" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:6742</a>
        runIter <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:6816" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:6816</a>
        Browser_mainLoop_runner <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:7440" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:7440</a>
    gideros-wasm.wasm:323494:1
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:323494" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:323494</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:721724" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:721724</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1646922" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1646922</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1504132" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1504132</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1475084" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1475084</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:665255" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:665255</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1078841" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1078841</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:784555" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:784555</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1646922" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1646922</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1504132" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1504132</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1475362" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1475362</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1503021" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1503021</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1505878" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1505878</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1475296" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1475296</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1119617" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:1119617</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:775237" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:775237</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:599611" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:599611</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:598043" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:598043</a>
        <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:649221" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.wasm:649221</a>
        browserIterationFunc <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:7456" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:7456</a>
        callUserCallback <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:6742" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:6742</a>
        runIter <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:6816" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:6816</a>
        Browser_mainLoop_runner <a href="https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:7440" rel="nofollow">https://v6p9d9t4.ssl.hwcdn.net/html/7457725/gideros-wasm.js:7440</a>
    The function at line 7456 is:
    function _emscripten_set_main_loop_arg(func, arg, fps, simulateInfiniteLoop) {
     var browserIterationFunc = function() {
      getWasmTableEntry(func)(arg);
     };
     setMainLoop(browserIterationFunc, fps, simulateInfiniteLoop, arg); // line 7456
    }
    The function at line 6742 is:
    function callUserCallback(func, synchronous) {
     if (runtimeExited || ABORT) {
      return;
     }
     if (synchronous) {
      func();
      return;
     }
     try {
      func(); // line 6742
     } catch (e) {
      handleException(e);
     }
    }
    Part of the function at line 6816 is:
    },
      runIter: function(func) {
       if (ABORT) return;
       if (Module["preMainLoop"]) {
        var preRet = Module["preMainLoop"]();
        if (preRet === false) {
         return;
        }
       }
       callUserCallback(func); // 6816
       if (Module["postMainLoop"]) Module["postMainLoop"]();
      }
     },
     isFullscreen: false,
    The code at line 7440 is:
    Browser.mainLoop.runIter(browserIterationFunc);
    PS: tested the app with previous Gideros (2023.1), html5 export is working
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • @MoKaLux Just did a few tests with html export and can confirm it appears broken now like you said above. I tested with latest Explorer and Brave.
  • hgy29hgy29 Maintainer
    @MoKaLux , @MobAmuse,

    I have hard time finding the html issue: it works fine on my computer, whatever the browser I use, but I see it crash on another computer using the same version of firefox as me. I have no clue what happens here.
  • hgy29 said:

    @MoKaLux , @MobAmuse,

    I have hard time finding the html issue: it works fine on my computer, whatever the browser I use, but I see it crash on another computer using the same version of firefox as me. I have no clue what happens here.

    Take it easy hgy29 o:)
    Yes I am using FF too, I will test on other web browsers. No worries o:)
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • hgy29hgy29 Maintainer
    I think I identified the commit that broke html, now I need to figure out which change is problematic

    Likes: pie, MoKaLux, MobAmuse

    +1 -1 (+3 / -0 )Share on Facebook
  • hgy29hgy29 Maintainer
    Ok, I found the line that triggered the issue, but I don't understand why. I feel like there is memory corruption somewhere, but couldn't find it. I managed to work around the problem though.

    Likes: MoKaLux, pie

    +1 -1 (+2 / -0 )Share on Facebook
  • MoKaLuxMoKaLux Member
    edited March 2023
    my two cents, when you create a shortcut and click it to launch the app that doesn't work, the OS complains that plugins could not be found (problem reading the path). The system cannot point to those plugins. I don't know if this could be related to html5 export as well?! :/

    To make the shortcut work I create a shortcut in the app folder first then I create another shortcut anywhere I want but pointing to the shortcut created in the app folder!

    I don't know if it is only happens when creating shortcuts with win32 export or other exports as well.

    As as said my two cents ;)


    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • hgy29hgy29 Maintainer
    When you create a shortcut, don't forget to set the working directory too. Gideros apps expect the working directory to be the application directory initially. This could be fixed, it may take time to find every location in the code where this is assumed.

    Likes: MoKaLux, MobAmuse

    +1 -1 (+2 / -0 )Share on Facebook
  • yes something like this

    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • hgy29hgy29 Maintainer
    @MoKaLux, I think I fixed the cwd issue with win32 export at least: https://github.com/gideros/gideros/commit/6acbea36d0cb5ff4c82d9b22fb3cc47c6bc772d1

    Likes: MoKaLux

    +1 -1 (+1 / -0 )Share on Facebook
  • MoKaLuxMoKaLux Member
    edited March 2023
    thank you hgy29, I wanted to build Gideros with your latest commits but I don't know how to build html5 export :'(
    anyway I am going to build it see what cwd is :p
    ps: thank you for below comment ;)
    ps2: building Gideros
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • hgy29hgy29 Maintainer
    CWD = Current Working Directory

    Likes: MoKaLux

    +1 -1 (+1 / -0 )Share on Facebook
  • MoKaLuxMoKaLux Member
    edited March 2023
    yes CWD is working on win32 64bit export that is now when you create a shortcut to your app/game it just runs (don't need hack in previous post no more). Superb captain hgy29 o:)

    PS: I also copied html5 needed files (in my case cbump and json in All Plugins folder and html5 in Templates folder) from Gideros Studio 2023.1 (since I cannot build html5 export myself) and that worked on Firefox!

    PS2: tested copying latest Gideros 2023.2 html5 plugins and stuff (as above) but game doesn't run on Firefox, with the messages below:
    - tagged Errors:
    libpng warning: Interlace handling should be turned on when using png_read_image gidloader.js:256:19
    Uncaught RuntimeError: index out of bounds
    browserIterationFunc https://v6p9d9t4.ssl.hwcdn.net/html/7493700/gideros-wasm.js:7456
    callUserCallback https://v6p9d9t4.ssl.hwcdn.net/html/7493700/gideros-wasm.js:6742
    runIter https://v6p9d9t4.ssl.hwcdn.net/html/7493700/gideros-wasm.js:6816
    Browser_mainLoop_runner https://v6p9d9t4.ssl.hwcdn.net/html/7493700/gideros-wasm.js:7440
    gideros-wasm.wasm:323494:1

    - tagged Warnings:
    This page uses the non standard property “zoom”. Consider using calc() in the relevant property values, or using “transform” along with “transform-origin: 0 0”. gideros-tests-02
    Some cookies are misusing the recommended “SameSite“ attribute 2
    Feature Policy: Skipping unsupported feature name “autoplay”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “midi”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “monetization”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “xr-spatial-tracking”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “gyroscope”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “accelerometer”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “xr”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “cross-origin-isolated”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “autoplay”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “midi”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “monetization”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “xr-spatial-tracking”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “gyroscope”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “accelerometer”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “xr”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “cross-origin-isolated”. lib.js:2:39203
    Feature Policy: Skipping unsupported feature name “autoplay”. lib.js:2:50992
    Feature Policy: Skipping unsupported feature name “midi”. lib.js:2:50992
    Feature Policy: Skipping unsupported feature name “monetization”. lib.js:2:50992
    Feature Policy: Skipping unsupported feature name “xr-spatial-tracking”. lib.js:2:50992
    Feature Policy: Skipping unsupported feature name “gyroscope”. lib.js:2:50992
    Feature Policy: Skipping unsupported feature name “accelerometer”. lib.js:2:50992
    Feature Policy: Skipping unsupported feature name “xr”. lib.js:2:50992
    Feature Policy: Skipping unsupported feature name “cross-origin-isolated”. lib.js:2:50992
    Partitioned cookie or storage access was provided to “https://v6p9d9t4.ssl.hwcdn.net/html/7493700/index.html” because it is loaded in the third-party context and dynamic state partitioning is enabled.
    An AudioContext was prevented from starting automatically. It must be created or resumed after a user gesture on the page. gideros-wasm.js:1440:21
    An AudioContext was prevented from starting automatically. It must be created or resumed after a user gesture on the page. gideros-wasm.js:1444:41
    WebGL warning: framebufferRenderbuffer: No framebuffer bound. 2

    - tagged Logs:
    Loading plugin:EP_Mp3.wasm gideros-wasm.js:56:15
    Instanciating plugin:EP_Mp3.wasm gideros-wasm.js:73:14
    Loading plugin:EP_Xmp.wasm gideros-wasm.js:56:15
    Instanciating plugin:EP_Xmp.wasm gideros-wasm.js:73:14
    Loading plugin:json.wasm gideros-wasm.js:56:15
    Instanciating plugin:json.wasm gideros-wasm.js:73:14
    Loading plugin:bump.wasm gideros-wasm.js:56:15
    Instanciating plugin:bump.wasm gideros-wasm.js:73:14
    Plugins loaded gideros-wasm.js:87:12
    EP_Mp3 gideros-wasm.js:126:11
    EP_Xmp gideros-wasm.js:126:11
    json gideros-wasm.js:126:11
    bump gideros-wasm.js:126:11
    Resize:640,360 gidloader.js:244:17
    CanvasSize: 640,360 (1.000000) gidloader.js:244:17
    GL Version 3.000000 (ES) gidloader.js:244:17
    GL_VERSION:OpenGL ES 3.0 (WebGL 2.0) gidloader.js:244:17
    gidloader.js:244:17
    GLSL_VERSION:OpenGL ES GLSL ES 3.00 (WebGL GLSL ES 3.00) gidloader.js:244:17
    gidloader.js:244:17
    scenemanager.lua Not found in archive gidloader.js:244:17
    easing.lua Not found in archive gidloader.js:244:17


    That's just for info because I didn't build html5 export for latest GH updates.
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
Sign In or Register to comment.