Latest Release

From GiderosMobile
Revision as of 19:35, 26 June 2024 by MoKaLux (talk | contribs)


Reminder: Gideros is free, but donations keep it growing

http://giderosmobile.com/donate&download

When Gideros went open source, my initial reaction wasn't "Wow! I've been paying for this, but it's free now!" My reaction was more like "Oh no... read more

Gideros

Gideros 2024.6.1 Latest @hgy29 released this 26 June 15:50

-Fixes

  • [gfx/textfield] Fix text layout in case of single line
  • [backend/opengl] Fix deleted buffers not unbound
  • [backend/gl] Don't assume buffer bindings are kept between frames
  • [export/html] Ignore JPEG truncated warning
  • [export/win32] Fix fetching state of Alt key
  • [plugin/ogg] Fix theora building on UWP


Gideros 2024.6 @hgy29 released this 28 May 14:14

-Improvements

  • [export/ios] Allow changing keyboard type
  • [plugin/ogg] Support opus recording
  • [plugin/ogg] Support Theora encoding
  • [core] Rework screen orientation (breaking change)

-Fixes

  • [gfx/textfield] Fix placement computations in texts
  • [export/apple] Fix special keys key codes for Mac
  • [export/oculus] fix menu action label
  • [gfx/path] Allow setLineThickness to be called before setPath()
  • [layout] Allow layout to be triggered when Sprite ios added to stage
  • [gfx/sprite] Add missing Sprite.STENCIL_GREATER definition
  • [plugin/camera] Fix for QT 6


Gideros 2024.3.1 @hgy29 released this 02 Apr 09:13

-Improvements

  • [libraries] Update
  • [gfx/texturepack] Handle mipmap and rawalpha flags
  • [studio] Files in the project can now be marked as 'Never export'

-Fixes

  • [library/3d] Be sure to set instance matrices when instancing is enabled
  • [export/ios] Setup first framebuffer before init code
  • [gfx/backend/metal] Allow large uniforms structures
  • [export/quest] Enable Anchor and Scene APIs
  • [export/uwp] Fix render target depth orientation for DirectX
  • [export/apple] Add PrivacyInfo file
  • [studio/themes] Make all themes Mac and Linux compatible


Gideros 2024.3 @hgy29 released this 15 Mar 08:53

-Improvements

  • [core/viewport] Allow RT mode to capture full scene automatically
  • [core/viewport] Allow to specify render target clear option and color in setTarget()
  • [core/profiling] Improve profiling (async threads, yields, etc)
  • [gfx/rendertarget] Allow specifying texture attributes as a table, as in Texture.new, and allow enabling mipmapping
  • [gfx/backend/metal] Handle mipmapping

-Fixes

  • [core/font] Add missing [!l] closing tag
  • [gfx/backend/gl] New VBO allocation algorithm
  • [gfx/backend/gl] Don't assume depth buffer is only cleared on depth test enabling
  • [gfx/backend/gl] Optimize state change calls
  • [gfx/sprite] Add missing depthClear flag from setDepthStencil call
  • [gfx/font] Fix strikethrough placement
  • [gfx/backend/dx11] Fix depth testing
  • [core] Fix access issue in Buffer object


Gideros 2024.2 @hgy29 released this 20 Feb 13:22

-New features

  • [export/quest] Implement Scene API
  • [core/sprite] Add Sprite:setAutoSort(bool) that tells Gideros to depth sort sprite children on draw
  • [core/viewport] Add Viewport:setTarget(rt) to allow viewports too be rendered automatically to rts
  • [core/textlayout] Support oblique,underlined and strikethrough styles

-Improvements

  • [backend/gl] Improve buffer management
  • [core/matrix] Improve API, allow passing vectors on some calls
  • [core/sprite] Allow passing vectors on some calls
  • [export/quest] Report menu button press
  • [export/html5] Better handle WebGL context loss
  • [examples/cube3d] Use new autosort feature

-Fixes

  • [ios] Clear touches table when a view is dismissed
  • [plugin/share] Use main lua context for events
  • [lua/compat] require now assumes dots are path separators
  • [core/compositefont] Fix space size determination
  • [core/fontlayout] Tinker with wrappable text layouts handling


Gideros 2024.1 @hgy29 released this 15 Jan 14:19

  • [plugin/share] Add file import/export capabilities
  • [core/debugging] Avoid losing debugging context on some (most ?) platforms
  • [core/luau] Implement debugging support for mobdebug/ZBS
  • [bridge/deamon] Add more functionalities


Gideros 2023.12 @hgy29 released this 15 Dec

-New features

  • [android] New Event.APPLICATION_PERMISSION reported when new permissions are gained or denied as a result of a request made by the app
  • [core] Add application:getProjectProperties()
  • [core] Add Cryptography.sha1()
  • [core] Add Cryptography.pbkdf2(password,salt,iterations,outputLength)

-Improvements

  • [studio] Make .gproj file more code-versionning friendly

-Fixes

  • [core/texture] Avoid mixing extended/non-extended textures in cache
  • [export/html5] Better handle JS events with arrays
  • [core] Avoid accumulating error in repeted setPosition() calls
  • [core] Force refresh after a Sprite:setGhosts()
  • [export/android] Fix set("statusBar")
  • [build] Fix for building UWP with VS 17.8.3


Gideros 2023.11 @hgy29 released this 09 Nov 06:52

-Improvements

  • [core/urlloader] Report error message in corresponding event
  • [core/application] Handle application:set("statusBar") for Android and iOS
  • [core/gfx] Allow specifying stencil clear value
  • [gfx/sprite] Make stencil op inheritable from parents
  • [plugin/ads] Implement AdReady on Android (for ApplovinMax and AdMob)
  • [Library] Update ui and 3d libs

-Fixes

  • [gfx/metal] Recreate texture on update if necessary
  • [gfx/metal] Avoid using too many buffers
  • [export/apple] Fix render target depth orientation for Metal
  • [gfx/pixel] Fix extra texture allocation


Gideros 2023.10 @hgy29 released this 16 Oct 12:06

-New features

  • [core/input] Handle numeric keypad keys
  • [core/audio] Add Sound.decode() call to get audio samples from encoded file

-Improvements

  • [gfx/backend] Don't allocate generic FBO below 192 bytes except on WebGL, this speeds up rendering on Adreno GPU at least
  • [textfield/ghost] Improve performance
  • [core/gfx] Correctly categorize a few composed matrices
  • [export/meta-quest] Migrate to OpenXR API
  • [export/meta-quest] Support Quest 3 passthrough
  • [Library/ui] Large update

-Fixes

  • [core/styling] Fix basic math support
  • [export/win32] Fix an issue with sticky modifier keys
  • [export/android] Only declare LEANBACK_LAUNCHER if TV support is enabled
  • [plugin/imgui] Add missing file on ios
  • [plugin/luasqlite3] Remove, since it is replaced by lsqlite3 plugin
  • [plugin/controller} Xcode 15/iOS17 compat


Gideros 2023.9.1 @hgy29 released this 21 Sep 15:10

-Improvements

  • [gfxbackend/gl] instancing is supported since GL es 3.0 and desktop GL 3.1
  • [plugin/luamidi] Build for Linux
  • [export] Support optional args on exec xml rule
  • [export/qt] Announce as QtLinux on Linux
  • [gfx/particles] Use 32bit indices
  • [gfx/particles] Add a getNumParticles() call
  • [gfx/sprite] Ghost now accept a transform matrix

-Fixes

  • [export/APK] fix for Mac
  • [studio] Fix opening player on OSX
  • [gfx/layout] Fix grid relative placement not acepting negative values anymore


Gideros 2023.9 @hgy29 released this 15 Sep 08:41

-New features

  • [core] Add math.fft() and math.ifft()
  • [gfx] Implement Sprite ghosts (Sprite,Pixel,TextField)
  • [audio] Allow to create sounds from raw waveform data
  • [export/linux] Support fullscreen and Screen API

-Improvements

  • [layout] Reduce memory usage
  • [layout] Add a fixed grid layout parameter telling Gideros to ignore children size requirements
  • [gfx] Deactivate clipping when 3D transform is detected
  • [gfx] Significantly reduce sprite memory usage
  • [gfx/textfield] Faster recoloring in most cases
  • [gfx/pixel] Reduce memory usage
  • [gfx/movieclip] Make native tween functions available to lua
  • [audio] Allow streaming a wave file
  • [studio] Add icons for Apple and Linux exports
  • [export/uwp] Use UWP Storage API to access files outside sandbox

-Fixes

  • [library/3d] fix missing alpha value for fbx (json) models
  • [gfx/layout] Avoid setting invalid bounds on sprites (if computations are still ongoing)


Gideros 2023.8 @hgy29 released this 25 Aug 06:20

-New features

  • [platform] Now available on Debian based Linux (tested on Debian 11, Debian 12 and Ubuntu 22-04)
  • [export/linux] Initial non QT linux export code
  • [export] Add QT Linux target

-Improvements

  • [export] Note about QT licensing
  • [plugin/rp3d] add Body:setSprite() so that rp3d can update Sprites after each physics simulation step
  • [addon] Scene builder: allow specifying asset folder and support capsule physics shapes
  • [Addon/SceneBuilder] Support GLTF files
  • [addon/scenebuilder] Support setting physics shape in library
  • [lib/3d] Improve GSCN handling

-Fixes

  • [gfx/rt] Fix non POT option not accepted
  • [gfx/sprite] Fix invalid bound caching
  • [gfx/shape] Fix crash when omitting matrix in setFillType
  • [core/Buffer] keep a reference to the buffer object while opened as a file
  • [studio] Ensure output window shows last lines of 'print'
  • [export/win32] Avoid key repeating
  • [export/win32] backport linux http fixes to win32 code
  • [plugin/rp3d] Fix crash on some android
  • [plugin/ads] Add consent API
  • [plugin/ads/AdMob] Implement google consent flow
  • [Library/3d] Fix gltf loader and anim
  • [Samples] Fix controller demo


Gideros 2023.7

-Improvements

  • [core/profiler] Hide profiling overhead
  • [core/sprite] Improve binding performances
  • [core/layout] Allow to override size after layout
  • [core/layout] Allow offseting the grid
  • [core/styling] Support basic math in styles
  • [gfx/pixel] Avoid unnecessary recomputing for FP precision changes
  • [gfx/particles] Avoid asking for redraw if graphics haven't changed
  • [studio] Enlarge Plugins Require Window
  • [export/android] Separate down and up recovered back key events
  • [export/html] Upgrade to latest emscripten
  • [plugin/ads/admob] Update iOS code for SDK 8/10

-Fixes

  • [core/layout] Fix endless loop when shrink=true sometimes


Gideros 2023.6 @hgy29 released this 15 June around 08:10 ;-)

-Improvements

  • [core] Remove gvfs related debug lines
  • [core/application] Report logical DPI from getScreenDensity() in UWP
  • [core/profiler] More accurate timings
  • [gfx/path] Avoid invaliding path on setLineThickness if not necessary
  • [gfx/sprite] Avoid unnecessary loop if no children at all
  • [plugin/imgui] Custom image functions now require an explicit ID
  • [plugin/imgui] Added ImGui:getItemRect()
  • [plugin/imgui] Added missing ImGui:imageButtonUV()
  • [plugin/imgui] Added ImGuiTextFilter
  • [plugin/imgui] Added "ImGui:scrollWhenDragging()" to scroll the window when touching void
  • [plugin/imgui] Added "ImGui.cachePoints()", "ImGui.freePoints()"
  • [plugin/imgui] Added "ImGui:plotCachedPoints()", "ImGui:plotCachedHistogram()" see examples
  • [plugin/imgui] Plot function renamed
  • [plugin/imgui] 1.89.6 update
  • [plugin/require] Fill Android OpenUrl in manifest
  • [Library/luashader] Improve std shaders code

-Fixes

  • [gfx/backend] Reset depth and stencil clear on state pop
  • [gfx/backend] DX11 VBO weren't always correctly updated
  • [gfx/backend] Fix particle shaders in 3D environment
  • [gfx/layout] Fix an endless loop condition
  • [gfx/opengl] Fix invalid texture filtering parameter sent to OpenGL
  • [gfx/opengl] Disable line smoothing
  • [gfx/path] Fix computing Path2D stroke bounds
  • [gfx/path] Don't clip Path2D filling, it is unnecessary and have issues with 3D
  • [gfx/sprite] Disable world alignment when in perspective projection
  • [gfx/texturepack] Avoid returning weird part when image name isn't found in atlas
  • [export/android] FINE_LOCATION now needs COARSE_LOCATION too
  • [export/apple] Don't call UI things from non UI thread
  • [export/apple] OSX don't have a native virtual keyboard
  • [export/mac] Don't send a keyChar when modifiers are presents beside shift
  • [export/uwp] Fix suspending leading to crash, report background and foreground events
  • [export/win32] fix win32 openDirectoryDialog (needed 3 arguments, now works with 2 arguments)


Gideros 2023.5 @hgy29 released this 10 May 08:29

-Improvements

  • [export/html5] Report modifiers in mouse wheel event
  • [export/android] Update to NDK r25, gradle 7.5, SDK 19 (KitKat) is now the minimum
  • [export/apple] Report modifiers in various calls
  • [plugin/imgui] Update to 1.89.5
  • [plugin/imgui] Added touch gesture detector (WIP)

-Fixes

  • [studio] Fixed editor global zoom
  • [gfx/font] Fix computations in composite fonts
  • [audio] Fix an issue when playing empty audio files
  • [audio] Move destructor out of luau GC
  • [plugin/imgui] Fix font atlas update

-Dear ImGui Changelog

  • Renamed ImGui:captureMouseFromApp() and ImGui:captureKeyboardFromApp() to ImGui:setNextFrameWantCaptureMouse() and ImGui:setNextFrameWantCaptureKeyboard()
  • Renamed ImGui:pushAllowKeyboardFocus()/ImGui:popAllowKeyboardFocus() to ImGui:pushTabStop()/ImGui:popTabStop()
  • Added IO:setAppAcceptingEvents([accepting_events = true])
  • Added ImGui.HoveredFlags_NoNavOverride flag to ImGui:isItemHovered(flags) & ImGui:isWindowHovered(flags)
  • Added ImGui:setNextWindowScroll(x, y)
  • Added ImGui.InputTextFlags_EscapeClearsAll flag for "inputText" widget (first press on Escape clears text if any, second press deactivate the InputText())
  • Added "isItemHovered" flags: ImGui.HoveredFlags_DelayNormal & ImGui.HoveredFlags_DelayShort, allowing to introduce a shared delay for tooltip idioms
  • Added "isItemHovered" flag: ImGui.HoveredFlags_NoSharedDelay to disable sharing delays between items, so moving from one item to a nearby one will requires delay to elapse again
  • Added ImGui:getItemID() It is not often expected that you would use this, but it is useful for ImGui:shortcut() and upcoming owner-aware input functions which wants to be implemented with public API
  • Added ImGui:shortcut(keyChord [, owner_id = 0, ImGuiInputFlags = 0]) (keyChord: an ImGuiKey optionally OR-ed with one or more ImGuiMod_XXX values (ImGuiKey | ImGuiMod_XXX))
  • Added ImGui:setShortcutRouting(keyChord [, owner_id = 0, ImGuiInputFlags = 0]) (disable CTRL + TAB combo: ImGui:setShortcutRouting(ImGui.Mod_Ctrl | ImGui.Key_Tab, ImGui.KeyOwner_None))
  • Added mouse key aliases: ImGui.Key_MouseLeft, ImGui.Key_MouseRight, ImGui.Key_MouseMiddle, ImGui.Key_MouseX1, ImGui.Key_MouseX2, ImGui.Key_MouseWheelX, ImGui.Key_MouseWheelY
  • Added ImGui.ItemFlags_NoTabStop to use with ImGui:pushItemFlag(flag, bool)
  • Added ImGui:setItemKeyOwner(keyCode [, ImGuiInputFlags = 0])
  • Added ImGui:setKeyOwner(keyCode, owner_id, [, ImGuiInputFlags = 0])
  • Added new widget ImGui:separatorText(label)
  • Added new styles:
    • Style:setSeparatorTextBorderSize(number)
    • number = Style:getSeparatorTextBorderSize()
    • Style:setSeparatorTextAlign(x, y)
    • x, y = Style:getSeparatorTextAlign()
    • Style:setSeparatorTextPadding(x, y)
    • x, y = Style:getSeparatorTextPadding()
  • Enums for push/popStyle: ImGui.StyleVar_SeparatorTextBorderSize, ImGui.StyleVar_SeparatorTextAlign, ImGui.StyleVar_SeparatorTextPadding to use with ImGui:pushStyleVar()
  • Added hold gesture (touch only) to trigger right mouse button. Off by default, to enable/disable use:
    • ImGui:setTouchGesturesEnabled(bool)
    • bool = ImGui:isTouchGesturesEnabled()
  • Changed ImGui:imageButton(texture, w, h [, padding = -1, tint_color = 0xffffff, tint_alpha = 1, border_color = 0xffffff, border_alpha = 0]) to ImGui:imageButton(str_id, texture, w, h [, tint_color = 0xffffff, tint_alpha = 1, border_color = 0xffffff, border_alpha = 0])
  • Removed ImGui:openPopupContextItem()


Gideros 2023.4 @hgy29 hgy29 released this 30 Mar 11:31

-Improvements

  • [core/gfx] Provision for MSAA in OpenGL
  • [export/html5] Handle get/set screenSize and windowTitle
  • [export/uwp] Handle get screenSize
  • [lua] update sources for latest luau
  • [export/uwp] Enable mipmapping
  • [gfx/path2d] Line position is now sent to the shaders
  • [export/android] Allow to add flags to permissions in manifest
  • [gfx/paths] Allow longer lines by using 32bit indices instead of 16bit
  • [android] Add recommanded way to detect TV's

-Fixes

  • [export/android] Locate Java in Android Studio Electric Eel
  • [export/uwp] Fix particle rotation
  • [export/win32] set user-agent in html requests
  • [export/win32] don't assume cwd is executable path
  • [export/win32] Fix scaling / DPI handling
  • [export/uwp] Fix modifiers not correctly reported in key events
  • [player] Optimize print to studio
  • [export/ios] Fix DPI reporting for newer phones


Gideros 2023.2

-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


Gideros 2023.1

-New features

  • [core] Implement mouse_enter and mouse_leave events on desktop
  • [core] Add memory leak identification tool
  • [library] Add ui lib
  • [library/3d] Support Magica voxel file format (.vox)
  • [addon] Add Scene builder addon

-Improvements

  • [core/shape] Expose tesselator to lua
  • [core/textfield] color tags in text now accept style references
  • [core/textfield] getTextPositionFromPoint now returns the line number also
  • [core/matrix] Decompose matrices into euler
  • [library] Include std lua shaders
  • [library/3d] update 3dbase 3DObjLoader to support latest Blender > 3.4.0 obj format
  • [library/3d] Add scene loader
  • [plugin/rp3d] Report contact points on collision
  • [ios/osx] Implement clipboard access
  • [win32] Support on demand rendering
  • [android] Implement clipboard access
  • [export/mac] Set window size to requested dimensions right on start

-Fixes

  • [core/viewport] Reference Content in children internal table
  • [core/styling] Don't bother clearing caches for now, since it can miss some caches anyway
  • [core/styling] Fix styling issues
  • [core] Don't propagate downward changes if flags are already set on children
  • [gfx/backend] Include the stride parameter to attributes descriptor
  • [core/shader] shader binder for stride field
  • [core] Avoid unecessary work when no effects are in use
  • [core] remove parent ref after sprite cloning
  • [osx] Handle retina displays (HiDPI)
  • [osx] Fix mouse wheel value
  • [android] Fix external storage permission request


Gideros 2022.12

-Improvements

  • [library/3d] Handle GLTF animation
  • [core] Improve checking sprite boundaries
  • [export/desktop] implemented pathfileexists for win64 (Qt)
  • [core/styling] Improve layout styling efficiency
  • [export/win32] pathfileexists test if a folder or a file exists + can test for modes: 0=Existence only, 2=Write-only, 4=Read-only, 6=Read and write returns 1 on success or nil on fail
  • [export/android] Support notch on screen
  • [export/uwp] Add modifiers to mouse/touch events + few minor adjustments
  • [core/styling] Improve performance and allow textfield font to be styled
  • [export/html] Support set cursor
  • [export/win32] Support set cursor
  • [export/uwp] Support set cursor and file pickers
  • [export/mac] Implement set cursor and file dialogs

-Fixes

  • [export/win32] getKeyboardModifiers were still activated after keyup events: fixed
  • [export/win32] mouse wheel had a 120 which resulted in delta of 144000 (120*120): fixed
  • [core/layout] Fix text size miscalculated, causing constant relayout
  • [core/textlayout] Fix breaking words
  • [export/android] Fix issue with on demand rendering when going into background
  • [export/apple] various redraw and resize fixes


Gideros 2022.10

  • [core/ui] Fixed search results not being visible when code is folded
  • [core/ui] Fixed undo/redo actions when using color picker
  • [core/ui] Fixed highlighter not being reset sometimes
  • [core/ui] Added adjustable highlighter delay
  • [core/ui] Added global zoom level
  • [core/ui] Added virtual space selection (only when using ALT + LMB)
  • [core/ui] Added the ability to change the color of whitespaces using styles
  • [core/ui] Added the ability to dock output widget to left and right panels
  • [studio] change position of find/replace dialog box
  • [core] Rework application get/set system
  • [core/signal] wait now accepts a lua predicate
  • [gfx] Fix Particles reallocation after clearing
  • [gfx] Sprite:getBounds gets a new parameter to compute real bounds depending on visibility and clipping
  • [gfx] Layout can optionnaly snap the coordinates to the logical grid
  • [gfx] Fix stencil mask not applied when clearing
  • [gfx/pixel] Fix setColor not triggering render in on-demand rendering
  • [layout] Fix switching back to raw values from styled values
  • [layout] Ensure relayout is done as quickly as possible
  • [layout] Fix layout group not propagating dirty info
  • [layout] Fix computation of required size when logical alignment is requested
  • [layout] Expose adjusted cell spacing in layout info
  • [layout] Add autoclip feature
  • [styles] Improve setStyle speed
  • [core/style] Lookup styles tables following hierarchy
  • [export/win32] Make a few missing plugins available
  • [win32] Improve/Fix http support (UrlLoader)
  • [win32] Update mouse and keyboard support
  • [win32] Report screen density (96, not 0)
  • [win32] Implement some of the getters/setters available on QT
  • [win32] Switch to unicode
  • [win32] Implement getKeyboardModifiers()
  • [winrt] Use initial window size value from project settings
  • [win32] Fix application paths and implement get(directory)
  • [win32] remove GetTempPath call because it caused window to disappear…
  • [win32] fix screen set position
  • [win32] Implement openFileDialog based on @mokalux code
  • [win32] Implement save file and open directory dialogs
  • [html5] Drop use of GLFW, directly use webgl
  • [html5] Fix resizing window
  • [android] Add a context variable to setTextInput call and event
  • [export/android] Intercept KEY_BACK before handled by IME
  • [export/ios] don't allocate buffers for short vertex data
  • [Library] Properly add COLOR mode to 3D library
  • [plugin/iab] Update to google BL 5
  • [plugin/require] Allow setting min sdk requirement (android)
  • [plugin/require] Avoid setting an empty NSUserTrackingUsageDescription
  • [plugin/threads] Deprecate


Gideros 2022.9

-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


Gideros 2022.8

-New features

  • [export/android] Add an application:setEventMerging() call which allows to enable/disable merging of touch/mouse move events together
  • [export/html] Initial WebXR support

-Improvements

  • [library/3d] Better GLTF support
  • [library/3d] Support vertex coloured meshes
  • [example] cute_c2 demo updated
  • [gfx] Allow to disable writing depth buffer through setStencilOperation()
  • [plugin/ads] Add option to include AD_ID permission on android

-Fixes

  • [gfx] Fix cloned color transforms
  • [styling] Fixes and improvements
  • [plugin/cute_c2] Fix name conflict with imgui
  • [plugin/share] Fix for Android
  • [html] Disable GApp override in an exported project
  • [gfx] Check 'application' presence in styling functions


Gideros 2022.6

-New features

  • [gfx] Support texture mipmap
  • [audio] Allow filtering and balance setting in audio/openal
  • [sprite] Initial support for style references
  • [plugin/cute_c2] Add cute_c2 plugin

-Improvements

  • [font] Break characters is now considered 'latin', to avoid running through slow harfbuzz shaping when a text is truncated
  • [export/html] Use wasm exception catching: provides a huge boost but only major browsers support it
  • [export/apple] Use OpenAL soft backend for more features
  • [plugins/imgui] ImGui v1.87
  • [plugins/imgui] Removed ImPlot from sources
  • [plugins/imgui] Fixed fonts not being loaded correctly sometimes
  • [plugins/imgui] Fixed key codes sended to inputText callback
  • [plugins/imgui] Added new functions to inputText callback data
  • [plugins/imgui] Added new functions to resize callback data
  • [plugins/imgui] Renamed "Font:getFontSize()" to "Font:getSize()"
  • [plugins/imgui] Renamed "getBufDirty()" to "isBufDirty()"

-Fixes

  • [gfx] Sprite: fix self references when cloning
  • [gfx] Fix textfield crashing when created with a sample text
  • [math] Prevent normalize function from returning nan if vector is 0 length
  • [examples] added missing gtween.png for the examples


Gideros 2022.5.1 Pre-release

-Improvements

  • [gfx/rendertarget] Render targets can now be created as NPOT

-Fixes

  • [gfx/cloning] Fix a crash condition and better handle textfield cloning
  • [plugin/rp3d] Add sanity checks
  • [library] Fix 3D shader bump mapping for ios


Gideros 2022.5

-New features

  • [gfx] Sprites are now clonable, except MovieClip
  • [gfx] Support 3D Particles
  • [gfx] Partciles can be multitextured (through shaders)
  • [gfx/particles] Add auto depth sorting of 3D particles
  • [gfx/particles] Differentiate X,Y and Z decay, add acceleration support
  • [gfx/particles] Add a method to retrieve recently dead particles
  • [examples] Add 3D particles demo

-Improvements

  • [Library] update to 3d library to better handle texture loading and glb format
  • [library/3d] remove code hack thanks to luau
  • [Library] Update luashader lib
  • [sample/3D-Anim] Improved demo
  • [font/layout] Avoid calling harfbuzz plugion (if present) when text is Latin
  • [core] Use optimized memory allocator for Luau (as we did for Lua)
  • [gfx/textfield] Delay texture recreation until really displayed
  • [ios] Export entitlements file
  • [Studio] Preview pic for GTween example

-Fixes

  • [plugin/rp3d] don't try to destroy a body twice
  • [sprite] Fix auto update and autobuffer of effect shaders
  • [audio] Fix audiobinder destructor
  • [studio] Fix 'Browse' buttons not working
  • [library/luashader] Auto correct HLSL swizzling
  • [uwp] Update certificate
  • [Studio] Fix simple word highlighter
  • [Studio] Revert replace function with a minor change - clean one
  • [plugin/rp3d] Fix event listener
  • [ios] fix Metal shaders


Gideros 2022.3.1

-Improvements

  • [core/sprite] Honor setHiddenChildren in bounds lookup
  • [export/html5] Change optimization settings for faster execution

-Fixes

  • [core] check if lua is closing in destructors to avoid crashes
  • [plugin/rp3d] Better fix for crash on reload
  • [gfx/backend] Catch uniform setting mismatch
  • [core/sprite] Fix stencil initialization
  • [core] Fix TexturePack not using premultiplied alpha as it ought to be


Gideros 2022.3

-Improvements

  • [luau] Update to latest
  • [studio] Expand folded region if search result is inside
  • [studio] Slightly decreased highlighter delay
  • [studio] Types mismatch
  • [studio] Text editor update
  • [studio] Can now open json and xml in Studio
  • [texture] Add a way to disable alpha premultiplication
  • [particles] Accept vector for color
  • [core/layout] Add proportional filling and aspect ratio setting
  • [gfx/pixel] setColor allows vectors parameters + fix anchor point in some cases
  • [core/layout] Avoid wrappable textfield from constantly needing relayout
  • [core] Most color calls now accept vectors. Notable exception is Shape sprite
  • [core] Add a way to hide some childrens from the parent sprite context
  • [core] Speed up (non) rendering of clipped objects
  • [core] Keep state of sprite changes to enable caching for faster response
  • [core] Add application:enableDrawInfo() call
  • [core] Slower integration of mean frame time
  • [core] Improve rendering performance
  • [core] Improve Sprite.getChildrenAtPoint
  • [plugin/rp3d] Update to 0.9.0
  • [export/android] Add exported setting to comply with Android 32
  • [samples] Update more sample .gproj files

-Fixes

  • [studio] Fixed highlighter not being reset sometimes
  • [plugin/cbump] Fix destructor
  • [plugin/r3d] Fix reactphysics 3D destructors
  • [build/Linux] Fix linux build script


Gideros 2022.1.3

-Improvements

  • [luau] Update to latest
  • [luabinding] Support luau vectors in math
  • [luabinding] add Sprite:isOnStage() call
  • [studio] Allow "multi paste" when using multiple cursors
  • [studio] Added compact folding option
  • [studio] Added missing functions to synax highlighter (math, table, string, coroutine, os)
  • [studio] gather identifiers from code for autocompletion
  • [studio] Text editor update
  • [studio] Set tab position to north
  • [studio] Added word highlighter
  • [studio] Added custom folding regions
  • [studio] Preferences window updated
  • [player] Support debugging through studio
  • [studio] Change debugging symbol and allow looking through tables

-Fixes

  • [library] Improve lua shaders
  • [studio] secure type checking against race conditions
  • [studio] Fixed brackests highlight style
  • [studio] Fixed autoindentation outside folding region
  • [player] Fix wheel coordinates
  • [studio] Fix styling of c++ (glsl, hlsl)
  • [build] fix prep.repo for scintilla/lexilla
  • [studio] Fix outlinier being triggered too often
  • [studio] Align items in preferences window
  • [plugins/imgui] Fixed debug config
  • [luau] pass module name to "require"d script as argument
  • [core] Fix viewport projection not restored after draw


Gideros 2022.1.2

-Improvements

  • [build] Package for 64bit on Windows
  • [luashader] Support atan2 function
  • [plugin/luamidi] add setQueueSi
  • [studio] Feed Gideros API to luau type checker
  • [studio] Add more reserved luau words to the syntax highlighterzeLimit and remove queue overflows

-Fixes

  • [core] Reserve stack in event dispatcher for luau
  • [player] Fix setFullscreen(false) not restoring normal size
  • [export/apk] Fix AAB generation
  • [samples] Fix Horse project
  • [studio] Fix addon support
  • [studio] Fix player connection
  • [android] Avoid crashing if IP cannot be retrieved for player
  • [plugin/applovin] Fix for android


Gideros 2022.1.1

-New features

  • [studio] Add block comment
  • [studio] Add customizable shortcuts
  • [studio] Enable Luau type checking

-Fixes

  • [desktop] Fix wintab code
  • [export] Fix merging compiled files
  • [core] Fix MovieClip lua_ref for Luau
  • [studio] Fix calltip display
  • [studio] Fix top folding
  • [studio] Fix reconnection to player
  • [studio] Avoid save failed popup box for example projects
  • [pkg] install to 64bit


Gideros 2022.1

WARNING: BREAKING CHANGES

-New features

  • [studio/desktop] Switch to QT6 and 64 bit
  • [studio] Use Scintilla instead of QScintilla for better integration (improved auto indent and EOL annotations)
  • [core] Use luau engine instead of lua 5.1
  • [desktop] Implement application:set("wintabMode")

-Improvements

  • [export/android] Upgrade to Gradle 7 (needs JDK 11+)
  • [Library/luaushader] Add support for while/repeat, if-then-else, and better handling of execution flow thanks to luau
  • [plugin/imgui] 1.86 update

-Removed

  • [plugin] Deprecate bit plugin (builtin luau, and obsoloted by gideros bit ops)
  • [plugin] Don't compile threads plugin (not compatible with luau)



Gideros 2021.11

-New features

  • [core] Added Matrix:duplicate() and Matrix.fromSRT()
  • [gfx/mesh] Add setCullMode() call Mesh:setCullMode
  • [core] Add a mouseType field in mouse events, to distinguish real and synthetic events
  • [core] Add Base64 functions
  • [Library] Support GLTF/GLB 3D import
  • [examples] Add an Oculus demo
  • [plugin/share] implement for UWP

-Experiments

  • [lua] Add optional French language keywords
  • [studio/textedit] Detect and hilight syntax for 'French' lua

-Improvements

  • [oculus] Add touch and trackpad reporting
  • [mesh] Allow strings instead of arrays in setXXXArrays()
  • [mesh] Use 32bit index array instead of 16bit
  • [android] Make sure we get Event.APPLICATION_BACKGROUND immediately
  • [plugin/share] Support more mime types for iOS
  • [android] Remove Old apache HTTP (Fix #331)
  • [plugin/share] Support multiple mime types
  • [apple] Include simulator metal library
  • [winrt] Update to use runtime v143 and VS2022
  • [android] Update base build to SDK 31
  • [Library] Add Oculus support library
  • [Library] Update 3D and Shader libs

-Fixes

  • [oculus] Fix Hand mesh indices
  • [desktop] Fix tablet button reporting
  • [gfx/opengl] Fix ortho projection for render target (Z axis was inverted)
  • [plugin/android] Add various missing androidx references
  • [plugin/share] Fix iOS code
  • [core] Fix mesh binder
  • [export/uwp] Fix SoundChannel:getPosition() resolution
  • [export/oculus] Fix suspend/resume
  • [plugin/imgui] fix for uwp

-Breaking changes

  • [library/3d] Invert expected Z direction to match what industry usually expect


Gideros 2021.10

-New features

  • [export/oculus] Oculus Quest export support (BETA)

-Improvements

  • [core] Add application:getNativePath()
  • [plugin/imgui] Better way to detect modifiers keys (ALT, CTRL, SHIFT, META (SUPER))
  • [plugin/imgui] 1.84.2 update
  • [plugin/imgui] Added "IO:loadIniSettings(file_path)"
  • [TextureBase] Added "getSize" function
  • [lib/luashader] Handle WebGL2
  • [desktop/input] Propagate table/pen button to touch event
  • [core] Effect stack now support automatic buffer resizing
  • [plugin/reactphysics3d] Add a few missing API calls

-Fixes

  • [plugins/bump] Fixes for some API calls
  • [plugin/imgui] Fixed "ImGui:pushFont()"
  • [plugin/imgui] Added "IO:saveIniSettings(file_path)"
  • [plugin/imgui] Fixed "attempt to call a nil value" issue when using input text OR window resize callbacks
  • [Sprite] Fixed "Sprite:redrawEffects()"
  • [qt] Avoid reporting duplicate mouse events for pen events


Gideros 2021.9

-New features

  • [core] Add Texture.loadAsync() call
  • [core] Add TexturePack.loadAsync() call
  • [core/font] Allow multiple fonts in a single TextField
  • [core/font] Allow to turn TexturePacks into Fonts

-Improvements

  • [core] Support grayscale render targets
  • [core] Add TexturePack:getRegionsNames()
  • [tools] Associate .tproj and .GApp extensions so that they open the required tool
  • [plugin/camera] Add a setOrientation() Call (iOS, Android)
  • [plugin/share] Allow setting of photo library usage (iOS)
  • [plugin/virtualtntpad] Update
  • [export/html] Update to latest emscripten (2.0.27)
  • [export/html] Support APPLICATION_SUSPEND/APPLICATION_RESUME

-Fixes

  • [core] Fix rendering 3D in render target
  • [player] Allow setting FPS from lua
  • [player] Fix Open project and Restart project menu actions


Gideros 2021.8

-New features

  • [plugin/camera] Camera plugin now allows to query camera capabilities, control Flash and take pictures

-Imgui

  • [plugin/imgui] Added scaled image functions to DrawLists
  • [plugin/imgui] Added InputText callback functions
  • [plugin/imgui] Added new IO functions
  • [plugin/imgui] Added "ImGui:tableSetColumnEnabled(col, bool)"
  • [plugin/imgui] Added button flags enums
  • [plugin/imgui] Added new param to image buttons
  • [plugin/imgui] Changed ImGui:newFrame(dt)
  • [plugin/imgui] Removed ImGui:setAutoUpdateCursor(flag)
  • [plugin/imgui] Added CTX functions
  • [plugin/imgui] Added color drag&drop data
  • [plugin/imgui] Added generic sliders functions
  • [plugin/imgui] Fixed existed sliders functions
  • [plugin/imgui] Removed "Scalar" sliders
  • [plugin/imgui] Fixed Log app output
  • [plugin/imgui] ImPlot WIP
  • [plugin/imgui] Image functions changed
  • [plugin/imgui] Added new enum: ImGuiI.mageScaleMode_XXX
  • [plugin/imgui] Removed "ImGui:imageFilled()"
  • [plugin/imgui] Removed "ImGui:imageButtonWithText()"
  • [plugin/imgui] Removed "ImGui:scaledImageFilled()"
  • [plugin/imgui] Added default size to image buttons
  • [plugin/imgui] Added an ability to control visible area of the image
  • [plugin/imgui] Fixed "scaledImageButton" border
  • [plugin/imgui] Fixed texture memory leaks
  • [plugin/imgui] Fixed shared FontAtlas crush
  • [plugin/imgui] Fixed ImGui:setNextWindowSizeConstraints()
  • [plugin/imgui] Fixed ImGui:tableSetupScrollFreeze(cols, rows)
  • [plugin/imgui] Fixed image clipping
  • [plugin/imgui] Fixed ImPlot memory leaks
  • [plugin/imgui] Fixed image padding
  • [plugin/imgui] Fixed images visible area
  • [plugin/imgui] Fix compilation on non Win32 platforms

-Fixes

  • [plugin/require] Fix Apple User tracking message
  • [export/html] catch another warning that crashes html5: 'Interlace handling should be turned on when using png_read_image'
  • [core/effects] Fix clearing of effects rendertarget
  • [core/text] Fix unbalanced text sizing issue


Gideros 2021.6

-New features

  • [export/html] Basic PWA support
  • [plugin/require] Support Apple user tracking stuff
  • [plugin/ads] New ADS_READY event (indicate the SDK is ready)
  • [plugin/ads] Support Vungle on UWP

-Improvements

  • [core] Include keyboard modifiers in Key events (fix #447)
  • [core] Support async version of clipboard access calls (UWP, HTML)
  • [export] Use paletted PNG when exporting some large icons for UWP to meet MS store file size restrictions
  • [plugin/ads] Add support for AppLovin MAX, update Applovin (IOS, Android)
  • [plugin/imgui] 1.83 update
  • [library/luashaders] Specific handling for HTML + reworked support for complex if/then/else (not yet 100% working)

-Fixes

  • [core] Fix hitTestPoint() on invisible sprites
  • [plugin/imgui] removed NodeEditor code
  • [plugin/imgui] Fixed texture memory leak
  • [plugin/imgui] disable autoUpdateCursor by default, as it crashes on most platforms


Gideros 2021.5

-Improvements

  • [plugin/imgui] Update imgui bindings (by @mokalux)
  • [plugin/map] Update by @paulh

-Fixes

  • [gfx/rendertarget] Fix clear area size
  • [gfx/pixel] Fix extent check with new setAnchorPoint
  • [gfx/sprite] Fix crash in clearLayoutConstraints()
  • [core/sprite] Fix usage of effects stack on anything above stage
  • [plugin/gaming] Fix a crash in Googleplay/Android


Gideros 2021.3 Pre-release

-Improvements

  • [gfx/particles] Don't try to draw an empty particle set
  • [gfx/path] Add new options to speed up Path rendering in some cases (curve subdivision+margin setting)
  • [plugin/iab/android] Update to google billing library V3 (incl. pending purchases)
  • [export/android] SDK 30 is now the default

-Fixes

  • [gfx/pixel] Fix bindings for get/setAnchorPoint
  • [plugin/osx] Fix import definition (for some plugins)
  • [plugin/imgui] fixed ImGui:setAutoUpdateCursor()
  • [plugin/imgui] Styles fix
  • [plugin/imgui] Image buttons fix
  • [export/uwp] Update temporary signing key
  • [export/apple-mac] Add a Quit menu entry as per apple guidelines
  • [export/apple-mac] Set app package name to specified app name


Gideros 2021.2

-Improvements

  • [studio] Allow assigning a name to library files through tagging
  • [gfx/layout] Add a 'shrink' layout option
  • [gfx/pixel] Implement setAnchorPoint the same way as in Bitmap
  • [core/lua] Extend string.encodeValue and string.decodeValue functions to deal with 8,16,32 and 64 bit values, as well as handling multiple values at once
  • [plugin/imgui] 1.80 update
  • [plugin/imgui] Changed "ImGui:colorConvertXXXtoXXX" functions. Now it must be called without ImGui instance. Just use "." instead of ":"
  • [plugin/imgui] Added TextEditor widget with Coloring and Style
  • [plugin/imgui] Added fonts functions
  • [plugin/imgui] "FontAtlas:addFonts()" now returns table of fonts
  • [plugin/imgui] Added FontAtlas:getFonts()
  • [plugin/imgui] Added Font:calcWordWrapPositionA()

-Fixes

  • [studio] Fix dependency tags parsing
  • [studio] Remove memory limit setting for HTML (not compatible with wasm)
  • [plugin/scenemanager] Update scenemanager.lua: Replaced crossfade by crossFade for consistency between functions name. Plus removed some empty lines.
  • [plugin/iab] Fix iOS IAP support code
  • [plugin/imgui] Clipper fix
  • [plugin/imgui] Fixed sliders/drags
  • [plugin/imgui] Fixed demo windows functions
  • [plugin/imgui] Indices fix
  • [plugin/imgui] Fonts build fix
  • [plugin/imgui] Removed unnecessary assertions
  • [Library] 3D & luashasder: don't use features when they are not available


Gideros 2021.1.1

-Improvements

  • [gfx/layout] Add anchoring to the layout grid
  • [gfx/effects] Add an option to clear the render target before draw
  • [gfx/shader] Add SYS_BOUNDS shader constant
  • [plugin/rp3d] Allow changin the world parameters
  • [plugin/imgui] Touch support, fix crash for Android, add more bindings
  • [export/android] Inject Android 29 background location permission if needed
  • [export/html5] Track keyboard modifiers + fix dialogs stucks

-Fixes

  • [core] Fix a few lua bindings
  • [backend/metal] Fix memory leaks
  • [lib] Fix bloom effect for Metal
  • [export/apple] Fix Mac/iOS export issues
  • [export/apple] Fix .xcasset file reference
  • [export/apple] Remove server entitlement from Mac export by default


Gideros 2021.1

-New features

  • Implement Sprite effects

-Changes on Apple targets (now they are out of beta)

  • Metal is now the only renderer (completely removed OpenGL on Apple)
  • Moved the code base to use ARC system (some plugins may still malfunction)
  • Added macos support: the exported project now targets ios, apple tv and macos.

-Improvements

  • [plugin/tntvirtualpad] changed function distance to math.distance and pii to math.pi
  • [plugin/imgui] Changes ImGui:beginFullscreenWindow(). It is now have padding by default.
  • [plugin/imgui] Drawlist items can be now rotated.
  • [gfx/shaders] Allow to specify multiple shader type and variant, plus inheritance
  • [sample/bloom] Use effects lib instead of GLSL only shader
  • [library/shaders] Add effects library (Bloom/Blur)

-Fixes

  • [android] Fix onTextInput char counting
  • [plugin/camera] Fix for Metal on Apple devices
  • [plugin/camera] Ensure given texture is actually a RenderTarget
  • [plugin/imgui] Fixed existing images function and added new "scaled" functions.
  • [plugin/imgui] Fixed data plotting.
  • [plugin/imgui] Fixed drag&drop.
  • [plugin/ads] Switch to podfile for AdMob on iOS
  • [export/apple] General fixes related to Apple target overhaul


Gideros 2020.12 Pre-release

Intermediary version for testing -Changes on Apple targets

  • Metal is now the only renderer (completely removed OpenGL)
  • Moved the code base to use ARC system (this is the trickiest part, I am not sure all plugins will still work although I did my best)
  • Added macos support: the exported project now targets ios, apple tv and macos. This allows to get rid of QT on desktop mac projects


Gideros 2020.11.1

-Improvements

  • [Library] Small changes 3D and LuaShaders
  • Update movieclipbinder.cpp
  • Recursive visibility check
  • MovieClip:isPlaying()

-Fixes

  • [backend/metal] Fix memory leaks
  • [backend/metal] Fix Color3D Shader
  • [plugin/rp3d] Fix convex shape creation
  • [osx] Gideros now runs on MacOS Big Sur

Remark, this version breaks the texturing of the 3D-Anim sample, this will be fixed later


Gideros 2020.11

-Improvements

  • [studio] Masquerade merged lua file names to mimic what is done on export
  • [core/font] Add missing getDescender() call
  • [core/path] get distance and auto segmentation in getPathPoints()
  • [gfx/backend] Expose projection matrix to shaders
  • [export/android] Provision for adding extra build targets to gradle call
  • [uwp] Request DX10 feature level
  • [plugin/imgui] Update
  • [plugin/rp3d] Update to 0.8.0 version
  • [library] Improve lua shader library
  • [library] 3D library now use lua shader for easier maintainability

-Fixes

  • [core/font] Fix inconsistency on layout of empty lines
  • [core/text] fix getTextPositionFromPoint and interwork with layout
  • [core/text] More fixes regarding text point<>offset translation
  • [core/text] Fixed more issue regarding text layout (word-break, etc)
  • [core/pixel] fix setTextureMatrix()
  • [core/math] Fix minor lua stack issue
  • [gfx/metal] Fix setClip()
  • [uwp] Fix HTTP header managemenet (was growing request after request)


Gideros 2020.9.1 Pre-release

-Fixes

  • [core] Fixing a huge memory leak when loading textures
  • [plugin/require] Fix dereferencing EP_ plugins
  • [plugin/imgui] Change plugin symbol name to match configuration files
  • [plugin/imgui] Update to latest sources


Gideros 2020.9

-New features

  • [core] Add vector/game specific math functions
  • [plugin/iab] UWP support
  • [plugin/storereview] files for android and uwp
  • [plugin/imgui] ImGui bindings by @Rraptor

-Improvements

  • [core/layout] Add offset and origin constraints
  • [core/textlayout] Add 'singleline' option, compute minimum size
  • [gfx] Add Particles:getNearestParticle call
  • [library/luashader] Support nested functions and more code constructs

-Fixes

  • [ios] Make APNS code disabled by default, to avoid appstore warning about APNS not enabled
  • [html5] Fix test in JS code for UI, call hide after event is dispatched
  • [plugin/share] share_path files was missing
  • [library/3dbase] Check for proper GLSL extension before enabling shadows
  • [textlayout] fix minimum size computing
  • [backend] Using SYS_CONST_TIME was leading to crashes
  • [export/android] Min target SDK is now 29
  • [library] Update luashader library to support more functions and code sequences


Gideros 2020.7.1

-Improvements

  • [core] add Sprite:getDrawCount diagnostic call
  • [android] Improve rich text editing support
  • [export/android] Raise default SDK to 28 (required by google store for AAB)

-Fixes

  • [studio] Load project file as UTF-8
  • [ios] Change orientation handling on iOS
  • [html] Fix TextInputDialog with empty default text
  • [ios] Report correct orientation to iOS
  • [uwp] Fix DX11 rendering engine (issue with pixel shader constants)
  • [uwp/audio] Expand sound buffer if needed instead of crashing
  • [html5] skip event processing when dialogs are shown
  • [html5] update dialogs style
  • [plugin/firebase] Include in Gideros Distribution
  • [plugin/share] Fix iOS code
  • [plugin/share] Fix Android code (allow sharing of images)
  • [plugin/camera] Fix orientation issue on iOS when app is in landscape + prepare for Metal


Gideros 2020.7

-New features

  • [library] A library is provided to allow writing shaders in lua, in a platform independent way
  • [plugin/chroma] Add Chroma plugin by @SinisterSoft
  • [plugin/share] Add share plugin (Android/iOS)

-Improvements

  • [core/layout] Allow anchoring by floating point amount
  • [core/layout] Layout now accept cellSpacing parameter
  • [core/input] Support F1-F12 keys (on QT)
  • [core/object] Core.class now accepts a destructor has third arg
  • [export/android] Migrate to androidX
  • [export/android] Update gradle and build tools
  • [plugin/lfs] Upgrade to 1.6.3, add unicode support for windows, report AHS flags for windows

-Fixes

  • [core/text] Improve tab handling
  • [core/text] Use the previous separator length and not the current one when computing current line width
  • [core/text] Fix reporting of minimum size for empty textfields (for layout)
  • [core/layout] Support zero sized sprites
  • [core/sprite] hitTestPoint and related functions shouldn't return true if Sprite isn't on screen
  • [export/uwp] Fix shader uniforms initialization, reduce Win10 SDK minimum version
  • [export/html5] Support UrlLoader PUT with data
  • [export/android] Ignore exception on buffer based text input
  • [plugin/map] Replace deprecated call
  • [plugin/native] Normalize class names for android
  • [plugin/threads] Fix build for Win32


Gideros 2020.5.1

-New features

  • [gfx] TextField Layout: add alignx and aligny parameters
  • [plugin/gsfxr] UWP port

-Fixes

  • [plugin/ads] Fix gplugin file
  • [player] Fix Always on top functionnality
  • [gfx] Don't rely on rt:clear() honoring the clipping
  • [xmp] Fix file loading random errors
  • [uwp] Fix alpha blending issues
  • [uwp] Avoid throwing an exception on player probing
  • [dx11/shaders] Don't discard pixels for plain color shaders


Gideros 2020.5

-New features

  • [uwp] Now supporting Xbox One platform
  • [plugin/controller] Support UWP raw controllers
  • [plugin/controller] Support HTML5

-Enhancements

  • [plugin/controller] report hardware ids on windows
  • [plugin/fastnoise] Merge recent additions by @Rraptor
  • [uwp] Migrate to VS2019/Runtime v142
  • [studio] Upgrade to Qt 5.14.2
  • [ui/export] Gideros can read lua files and infer noexec and dependencies from tags in the file
  • [examples] Add controller plugin demo

-Fixes

  • [plugin/controller] Fix name reporting on win/html
  • [ios/require] Include a default NSLocation message if GPS isn't used
  • [ios] Fixes for Metal (liquidfun particle shader, RenderTarget upside down, RenderTarget commit)
  • [export/fbig] Load Instant library before gideros code

-Removals

  • [plugin/ads] Removal of UWP/WinRT Ads support due to Microsoft discontinuing its Ad SDK.


Gideros 2020.4

Remark: we found a bug with controller plugin on android in this version.

To fix it, donwload the extra controller.gplugin file from this page and replace the one in your 'All plugins' folder with it.

-New features

  • [core] Add APIs for soft keyboard integration and clipboard access. Clipboard is implemented on desktop only for now, and soft keyboard additions on android only.
  • [studio] Add cloning and consolidating options

-Enhancements

  • [audio] Allow declaring of streaming sounds (they don't stop when input data is exhausted, so can be used with Buffers)
  • [audio] Channel:isPlaying() now returns the amount of buffered audio too
  • [studio] Add an option to only load main.lua on start
  • [export] Allow plugins to change project files before assets are written (add new plugins to project dynamically)
  • [luaplugins] allow code to be executed before init.lua, allow assets
  • [android] add application:get("batteryLevel")
  • [uwp] Implement setFullScreen,setWindowSize and getAppId

-Fixes

  • [core] fix getLogicalBounds for oriention-less platforms (HTML,UWP,...)
  • [ogg] handle streaming
  • [ogg] Fix crashes when stream isn't properly formed
  • [plugin/rp23d] Ensure update delay is never 0


Gideros 2020.2

-New features

  • [core] Stream mode on UrlLoader
  • [core] New Buffer object
  • [sample] Add Shoutcast example

-Improvements

  • [android] Improved heading recovery
  • [ios] Use internal MP3 player
  • [plugin/reactphysics3d] More bindings

-Fixes

  • [core] Fix resolution handling
  • [pi] Remove QT code from native Pi sources
  • [plugin/reactphysics3d] Fix joints creation
  • [html5] Fix uncompressed export
  • [gfx/font] Fix uninitialized BG on TTBM fonts
  • [installer/win] Fix doc links
  • [lib] Fix objloader
  • [plugin/lfs] Querying drives isn't allowed on UWP


Gideros 2019.12.1

This release fixes a few issues in 2019.12, the most notable one being slow texture handling on HTML5 export.

-Enhancements

  • [plugins] add scenemanager and easing as lua plugins
  • [core] Improve memory management when handling textures
  • [core] Delay TTBM cached chars uploading to GPU until draw time (saves extraneous uploads during initialization)

-Fixes

  • [plugins] Fix fastnoise for html, fix virtualpad platforms availability
  • [android] Fix lua plugins being stripped at export
  • [gfx] Fix text layout computations corner cases
  • [gfx] Prevent layout from trying sizes below the minimum
  • [html5] disable assertions


Gideros 2019.12

-New features

  • [Core] Allow instanced rendering on Meshes
  • [plugin] Add fastnoise plugin by @MultiPain

-Improvements

  • [core] Add accuracy and source to geolocation events
  • [core] Report magnetic X,Y,Z values in Geolocation heading event
  • [core/gfx] Use GL ES 3/ WebGL 2 is available
  • [core/Path2D] Allow gradients in setFillColor
  • [ui/examples] Rework 3D exemples, remove cubemap as it doesn't work anymore
  • [examples] Add 3D animation
  • [examples] Add instancing demo
  • [ios/metal] General improvements and support instancing+depth textures
  • [html5] Update to emscripten upstream, switch to WASM compltely as a consequence

-Fixes

  • [studio] Fix dependency graph being lost
  • [studio] Fix newly linked directories leading to file I/O issues
  • [core/fonts] Fix text layouts positionning, add more options
  • [uwp] run open url on UI thread
  • [android] Allow reads from http connections
  • [android] Possible fix for OpenSl crash (#450, #480)
  • [android] Only comment out uses-sdk for AAB
  • [ios/metal] Don't clear error log before displaying
  • [ios/metal] inline shaders functions shall not be called main: use vmain and fmain instead


Gideros 2019.10

-New features

-Improvements

  • [core] Support rendering to depth texture
  • [plugin/ogg] Add opus decoding support
  • [plugin/gmedia] Update for Android (by @mokalux)

-Fixes

  • [core] Minor but annoying issues fixed in layout system
  • [core] Fix 3D rendering matrices handling in viewport
  • [android] Various minor fixes (causing rare crashes)


Gideros 2019.9

-New features

  • [core] Manage platform permissions from lua (android only currently)
  • [core] Handle 9-patch images in Pixel
  • [core] Allow to set stopPropagation on a sprite

-Improvements

  • [studio] Add themes contributed by @oleg, fix MetroDark (by @mokalux)
  • [core] Improve layout functionnality: fixes, more options, can now force layout and get more detailed results
  • [core] Allow to pass a function to Core.class to change superclass args
  • [android] Use official Apache HTTP Client library + log errors

-Fixes

  • [ios] Fix metal rendering issue
  • [html5] Ignore PNG related warning
  • [html5] Fix possible floating point issues
  • [fbig] Fix some API calls and update to 6.3


Gideros 2019.5.1 Pre-release

  • [plugin/iab] billing package conflicts with AIDL (probably) remove it until we know better
  • [plugin/controller] Fix variable scope issue for android
  • [export/apk] Make labels more explicit


Gideros 2019.5

-New features

  • [plugin/harfbuzz] Support for harfbuzz font shaping library
  • [core/qt] Add application:getKeyboardModifiers()
  • [player] Add screenshot shortcut (F12)

-Enhencements

  • [gfx] Allow querying text position from coordinates and vice-versa
  • [plugin/luamidi] Update rtmidi to v4.0
  • [plugin/luamidi] catch errors in lua
  • [plugin/ads] Update AppLoving SDK
  • [player] Add iPad Pro 3 & iPhone XR resolutions

-Fixes

  • [gfx] Fix layout constraints and add fontbase layout infos
  • [uwp] Fix various UTF-8 to widechar conversions
  • [ios/metal] Sanitize setClip()
  • [plugin/spout] Fix destructors


Gideros 2019.4

-Enhancements

  • [gfx] add Particles:scaleParticles() API
  • [core] support aes 192 and 256
  • [android] Optionaly deny backups
  • [html5] Improve error handling
  • [plugins] Add virtualpad

-Fixes

  • [gfx] Fix particles allocation
  • [ios] Don't compile metal shaders in debug mode
  • [plugin/ogg] Ogg plugin wasn't fully compiled by default
  • [gfx/opengl] More error checking/safe guards


Gideros 2019.2.1

  • [uwp] Fix audio libs for UWP/x64 compat
  • [ios] Add metal lib to project by default
  • [html5] Compress GApp and fix loading progress
  • [gfx] Improve addParticle performance for bulk additions
  • [opengl] Check shader existence before detaching
  • [html5] Don't export loading icon for FBInstant (it isn't shown)
  • [gfx] Improve Layout/setDimension performance
  • [gfx] Fix TTFont using random resolution (Fix Invalid Font Size issue)


Gideros 2019.2

-New features

  • [core] Support Apple Metal backend for iOS
  • [export] Drop WiNRT for UWP (universal windows platform)

-Improvements

  • [gfx] Allow to specify scale when building a texture from raw data
  • [lua] Add string.encodeValue and string.decodeValue, used to encode/decode int and float values to byte sequences

-Fixes

  • [core] Allow Core.asyncCall to be reentrant
  • [core] Fix Sprite:getChildrenAtPoint()
  • [core] ensure async calls runs at least once per frame
  • [export/osx] Set minimum supported OSX version
  • [export/apk] Fix absolute/relative path mismatch for key store
  • [plugin/steam] Strip x86 code from steam lib on OSX
  • [plugin/bump] Fix querySegment functions
  • [plugin/gaming] Remove Google Drive dependency (save games are no longer available)
  • [plugin/gaming] Fix iOS player scope (Fix #462)


Gideros 2019.1

-New features

  • [core] Introduce Sprite:getChildrenFromPoint()
  • [gfx] Add CompositeFont object type
  • [gfx] Allow alpha in textfield

-Enhencements

  • [html5] Reduce package size
  • [studio] Make paths relative in project file
  • [export] Probe android path from Windows Registry

-Fixes

  • [studio] Fix profiler report count field truncated
  • [core] Fix layout issue
  • [core] Ignore non constrained sprites from layout
  • [megacool] Fix megacool init


Gideros 2018.12

-New features

  • [studio] Introduce fs-backed folders
  • [html5] Experimental wasm, compress plugins
  • [plugin/luamidi] luamidi for desktop and win32
  • [studio] integrate profiler

-Improvements

  • [studio] Add multi-cursor editing
  • [studio] Add shortcuts for debugger (Fix #440)
  • [texturepacker] Associate file type on winows
  • [core] Layout now takes a parameter to enable equally sized cells
  • [core] Add a method to path 2D to compute location of points of the path
  • [core] Allow transparent canvas (for HTML)
  • [examples] Added Spine animation example
  • [examples] Added benchmark example using Core.Profiler
  • [android] Enable multidex
  • [android] Update google services min version to 16.0.0
  • [android] APK are now always signed, using a debug key if no keystore is provided
  • [plugin/camera] add availability check
  • [plugin/map] Integrate @paulh native map plugin
  • [plugin/megacool] Update megacool plugin to lib 3.3.7, added setSharingText api command
  • [plugin/spine] New API calls (cf #451)
  • [plugin/threads] Add luasocket, lfs and json.
  • [plugin/threads] Add configurable exit delay

-Fixes

  • [studio] Save outline settings (Fix #446)
  • [studio] Fix windows VSYNC detection
  • [core] Fix broken shaders for color transform
  • [iOS] Minimum SDK is now 8.0 (Fix #448)
  • [ios] Apply scalefactor for exported apps (Should fix #442)
  • [html5] Fix sound enabling on iOS
  • [html5] Fix background colour on export splash screen
  • [plugin/bump] Fix new object allocation system
  • [plugin/bump] Fix bounce and slide collision return values
  • [plugin/camera] Fix random crash on start on QT
  • [plugin/iab] Reissue failed consumes
  • [plugin/liquidfun] Turn off neon has it fails on some platforms
  • [plugin/megacool] Detect size change and reinit (missing deinit part)
  • [plugin/ogg] Fix file streaming issue causing premature end of audio stream (Fix #437)


Gideros 2018.10

-New features

  • [studio] Add debugging options (breakpoints/stepping/inspect variables)
  • [plugin/Threads] Introduce true threads plugin
  • [plugin/megacool] Add megacool support (Android only)

-Enhancements

  • [studio] Improve auto completion proposals with icons
  • [studio] Update icons for HiDPI
  • [studio] Add preferences dialog
  • [android] Use GL ES 3 if available
  • [plugin/lfs] Add a lfs.drives() call to get a list of possible drives (win essentially)
  • [plugin/controller] Allow to control deadzone (Controller.setDeadZone(float)
  • [plugin/ads] update unity and applovin

-Fixes

  • [gfx] Avoid multiplying texture scale factor two times
  • [gfx] Fix TextureRegion:getRegion() parameter check
  • [plugin/ogg] Fix looping sound issue
  • [core] Fix Particles.setParticleSpeed


Gideros 2018.9

-New features

  • [core] document layout system and add missing related constants
  • [studio] Introduce addons system, with GSFXR sound editor addon
  • [studio] Add more examples (gestures, async tasks, addons)
  • [plugin/spine] Native version of spine plugin

-Enhancements

  • [studio] Add fullscreen mode (Settings/F11)
  • [android] Update project to recent versions of AS/Tools
  • [android] Allow to remove ARM libs
  • [android] Add an option to timestamp the APK file
  • [plugin/gaming] Update gaming plugin to work with recent APIs and integrate googleplay plugin functionnality

-Fixes

  • [core] Fix compatibility of some classes with fake threads
  • [android] fix a no response issue after unlock the screen on some device
  • [html5] Hides highlight that shows on iPhone 6+ when using a browser and Gideros content exported to HTML5.
  • [html5] request an alpha capable buffer
  • [fbinstant] Correct API typo with createAsync
  • [plugin/ads/admob] Fix for bug outlined here: #394
  • [plugin/cbump] Fix issues #404 & #405


Gideros 2018.6.3

-Enhancements

  • [gfx] Support Bearing command in SVG Paths
  • [gfx] Try all image formats as fallback when type cannot be determined by file name
  • [core] Add getScale() to TextureRegion, and add a parameter to get @1 sizes from getRegion()

-Fixes

  • [core] Fix a crash condition when using rendertarget in APPLICATION_EXIT on iOS
  • [core] Fix a crash case with empty sound files
  • [plugin/camera] Fix a crash when camera access is denied
  • [plugin/ogg] Fix end of files not played


Gideros 2018.6.2

-Enhancements

  • [plugin/ogg] Implement setPosition and getLength
  • [player] Add 75% zoom option (Fix #200)

-Fixes

  • [plugin/camera] Fix selection routine for Android
  • [plugin/ogg] Fix output file name case for html5
  • [ui] Fix line focusing from output pane click (Fix #327)
  • [desktop] Forward shortcuts to gideros (Fix #382)
  • [desktop] Use VSYNC only if it was explicitly requested
  • [desktop] Properly handle all kind of dialog dismiss (Fix #274)
  • [android] Check audio context validity before attempting to suspend/resume
  • [desktop] Reset mouse button known state on suspend (Fix #347)
  • [player] Fix settings save and iPhone X res tick (Fix #380,#381)
  • [ios] Allow delete key repeating in soft keyboard


Gideros 2018.6.1

-Enhancements

  • [core] add a removeAllListeners() call to EventDispatchers (incl. Spites)

-Fixes

  • FBInstant Update getConnectPlayerEntriesAsync to getConnectedPlayerEntriesAsync to match with document and FB Instant sdk
  • Documented "size" parameter to b2.ParticleSystem:setTexture.
  • [core] Fix TTFont crash and TTFont recoloring
  • [core] Fix random crash on exported desktop app
  • [plugins] Make liquidfun a default plugin for Android
  • [core] Include scale factor into outline size


Gideros 2018.6

-New features

  • [core] TTFont now support an outline size parameter, which allow to create fonts with a thicker border
  • [core] Support external launch from custom URL schemes

-Enhancements

  • [fbig] Update support and docs to 6.2
  • [core] Remove box2d from core gideros (use liquidfun plugin instead)
  • [android] Switch to NDK r17, min SDK is now 14 and armeabi/mips are no longer supported/built
  • [plugin/microphone] Allow usage of other file formats beside wav
  • [plugin/ogg] Allow vorbis encoding when microphone is also used
  • [android] Fixed x64 enable and added x86 disable

-Fixes

  • [plugin/microphone] Ask for permission on android 23+ (async)
  • [plugin/camera] Ask for permission for Android 23+
  • [plugin/gaming] fix ptr alignment error on some methods
  • [plugin/ads] updated ads plugin: Unity 2.2.1, Chartboost 7.2.0, AppLovin 8.0.1
  • [doc] Various corrections
  • [plugin/microphone] Ask usage description for iOS


Gideros 2018.3.3 -Fixes

  • [html5] Fix iOS 11.3 scroll issue, Fix clip issue and canvas sizing
  • [core] Track font resets due to display change and correctly reinit associated textfields
  • [core] Handle exceptions in fake threads (Fix #368)
  • [qt] ensure context is current before trigger suspend/resume events (fix subsequent rendering issue)
  • [gfx] Pixel: Fix #371 and honor alpha values when making gradients with angles

-Enhancements

  • [core/font] More layout ref options



...




2015.02

  • New player resolutions
  • Auto player scaling
  • Fullscreen player
  • Scaling images in preview to fit them
  • It also should work with Retina display
  • And of course fat binaries for ios
  • Also tested and it works for me on Yosemite.


2014.10 Test Pre-release

  • Test release


Gideros v2014.10

  • Update (iOS): Build with Xcode 6.1
  • Update (Desktop): Build with Qt 5.3.2.
  • Bugfix: Fixed crash when Sound is created inside coroutine.