I am happy to announce the (pre) release of Gideros 2022.9, maybe too soon but lets face it, I can't spend time doing in depth testing of each release so lets do it together. I am confident it should be at least backward compatible.
Major changes under the hood this time:
- LuaU engine have been upgraded to latest (or rather latest a few weeks ago!). It comes with performance improvements and a new form of litteral strings. More on this here:
https://devforum.roblox.com/t/luau-recap-july-august-2022/1966965 and here:
https://github.com/Roblox/luau/blob/master/rfcs/syntax-string-interpolation.md- True parallel multithreading is now possible in Gideros, with limitations similar to those that come with multithreading in C++. Parallel threads are launched by Core.asyncThread instead of Core.asyncCall, and have a lot in common with those asynchronous threads. They share the same environment as the rest of your code, and can access anything... in theory! In practise care should be taken to avoid concurrent modifications, and most Gideros API isn't thread safe. A new table.share call has been added to make a lua table protected with mutexes. Such table accesses are slower, but thread safe.
- Gideros now supports on demand rendering: rather than updating the screen continously (the fps), when on demand rendering is enabled Gideros will refresh the screen only if it can figure out something has changed. This saves a lot of GPU/CPU power as well as battery life.
- Audio used to depend on various engines: XAudio2 on UWP and several versions of OpenAL. Now we use the same OpenAL-Soft version for every platform, providing a consistent API accross platforms and opening the way for future audio additions such as filters and effects.
This version is a big step forward, multithreading in particular should allow for more efficient 3D games, by allowing to run 3D collision engine in parallel with rendering, and on demand rendering being a big improvement for professionnal apps.
Hope you'll like it!
New features[core] Implement on-demand rendering
[core] Support luau parallel threads
[core] Add signals for parallel threads, and improve yield api
Improvements[luau] upgrade to latest
[core/layout] Improve shrink mode
[audio] Use latest OpenAL soft for most platforms (apple,android,qt,uwp,html)
Fixes[android] Fix handling of numeric input
[io/win32] Convert filename to wchar_t for win32
Download it from here:http://giderosmobile.com/download
Comments
Likes: hgy29
Likes: hgy29
https://deluxepixel.com
https://deluxepixel.com
Likes: hgy29
The only thing is missing is a highlighting
Likes: hgy29
Atleast we can have this:
Just mimic a normal string.
I still have a messge after removing the variable
how does the on-demand-rendering work? i don't want of course the messy details, mostly i'm interested if i use the immediate mode imgui then does this new addition notice if the gui is the same and then have less gpu load or or not?
Fragmenter - animated loop machine and IKONOMIKON - the memory game
I am not sure how we could possibly deal with imgui...
Likes: hgy29, MoKaLux
Fragmenter - animated loop machine and IKONOMIKON - the memory game
It is possible to track events, but how do you deal with things that is manually added to draw lists?
Perhabs: https://github.com/ocornut/imgui/issues/2268#issuecomment-486450272
but I'm not an expert in memory / complexity measurements expert
Likes: MoKaLux, SinisterSoft
Likes: MoKaLux, PaulR
I have this error with the Threads plugin.-- edit my bad I was using an outdated code
EDIT2: quote from hgy29 below
"Threads plug-in is deprecated since luau move, and now you shouldn’t even need it since threads are built in"
--> can we remove the Threads plugin from Gideros? that would be less confusing!?
Likes: SinisterSoft, MoKaLux
Likes: hgy29
https://github.com/gideros/gideros/blob/cde15d0ef1efd61054794b0202f89b8d456d41ac/luabinding/luaapplication.cpp#L412
https://github.com/gideros/gideros/blob/cde15d0ef1efd61054794b0202f89b8d456d41ac/luabinding/luaapplication.cpp#L401
I mean this:
For example when enabled and you do a find, either you will have to scroll up to find the highlighted word or the word won't be highlighted at all.
Live syntax checking gives me weird warnings as well, for example: ax is never used within the scope..., but I don't even have an ax variable here
Thank you
EDIT: when disabled everything seems fine
EDIT2: nope, even with Live Syntax Checking and Type checking disabled, the find/replace functions are not working good There is like an offset and I have to scroll up to see the actual word. Could be related to the file length (in my case 500+ loc)?