App Game Kit Version 2.0.19
AppGameKit now supports HTML5! Export your Tier1 games from the IDE and see they run in a browser.
Here's the full breakdown of featurs and improvements in this version;
HTML5
- Added HTML5 export to the IDE
- GetDeviceName will now return "html5" on HTML5
- Fixed edit boxes not working on HTML5
- Fixed OpenBrowser() not working on HTML5
- Fixed HTML5 export crashing if the project contains lots of media files
- HTML5 now exports to a folder
- Added option to use dynamic memory when exporting HTML5 to use more than 256MB of RAM
Images
- Transitioned Windows, iOS, and Mac to use the image loading routine used by the other platforms, namely libPNG and libJPEG
- Windows now only supports the officially supported image formats PNG and JPEG
- Added LoadImageResized to load an image whilst resizing it
- Added ResizeImage to resize an existing image
- Fixed PrintImage not correctly saving images that were created with SetRenderToImage
Platforms
Note: All platforms now behave the same way with UV scrolling, images must be a power of 2 in size to wrap properly
Android
- Set Android sensor refresh rate to 60fps to try and improve the update frequency on some devices
- Fixed Android not accepting SSL certificate chains if they were sent out of order
- Fixed instanced objects disppearing on Android if the app was sent to the background
- Updated Android lib to version r11b of the Android NDK
- Updated CA bundle for Android SSL certificate verification
Windows
Add RunApp(), GetAppRunning(), and TerminateApp() commands to Windows
Joystick X/Y commands on Windows will now return 0 instead of -1 if the axis doesn't exist
Added GetPaused command to Windows to return 1 when the window loses focus
Fixed depth textures as render targets not working on Windows, they were being replaced by internal depth buffers
Removed the dependency on atls.lib on Windows which improves compatibility with Express versions of Visual Studio
Fixed Windows touch pen tap not triggering GetPointerPressedLinux
Fixed GetDeviceLanguage not returning the correct value on Linux
Fixed GetDeviceType on Linux not returning anythingRaspberry Pi
Added Raspberry Pi support (FREE and only available from TheGameCreators website)
Modified OpenToRead and OpenToWrite to be able to access the GPIO pins on Raspberry Pi
Added new sample project to demonstrate GPIO pin usageGraphics
Fixed transparent objects not rendering properly when drawn over the dynamic skybox
Fixed loading shaders with more than about 4000 characters causing a crash if it uses lights or fog
Updated SetRenderToImage to use 24bit depth buffers instead of 16bit where possible
Fixed an object getting incorrectly culled if it had more than one mesh
Added commands to get the size of an object or mesh
Fixed CloneObject not copying animation names to the new object
Changed SetCameraFOV command to accept an FOV value of 0 to generate an orthographic matrix instead of a projection matrix
Using SetSyncRate with a value of 60 no longer activates VSync, only the SetVsync command will activate VSync
Changed shaders to use high precision values for UV coordinates, some cases like 2048x2048 atlas animations need this
Fixed DeleteTween causing a crash if an empty tween chain exists, or a tween chain exists that has not yet been played
Modified subimage.txt to accept floating point valuesSound
- Fixed LoadSound failing if the automatically assigned ID reaches 299, it would fail for one load before returning to ID 1 as expected
Tier 1 BASIC
Increase Tier 1 stack size from 1024 to 32768 to allow more recursionNotifications
Fixed SetLocalNotification not overwriting the message of an existing notification
Fixed CancelLocalNotification causing future notifications to have a blank messageSystem
Fixed GetUnixFromDate not returning the correct value if the year parameter is a leap year
Allowed RunApp() to use absolute paths, and to search the path environment variable for the executable on WindowsDocumentation
Added shader guide to detail how to write shaders for use with AGKNetwork
- Added network socket commands to establish and receive TCP connections directly to other devices
SharedVariables
- Added SaveSharedVariable, LoadSharedVariable, and DeleteSharedVariable for sharing values between apps on iOS and Android