Latest Release


https://github.com/gideros/gideros/commits/master


Gideros 2022.9 Latest

-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 Latest

-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 Latest

-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