AppGameKit HTML5 version goes live!

The Game Creators today launched the AppGameKit HTML5 version – a significant release which adds yet another dimension to the already successful development engine.

Lee Bamber, CEO of The Game Creators, said, “HTML5 is the latest version of Hypertext Markup Language, the code that describes how web pages look and operate. More crucially, it's the first version which fully supports native execution of 3D games content, which means no more plugins to install. With the new version of AppGameKit, you can now export your creations directly to HTML5 compatible files which can be run locally or uploaded to a server, allowing your users to play your apps and games instantly through their browser. Thanks to the WebGL, a component of HTML5 technology, you can even run 3D games under hardware acceleration and optionally switch to full screen to create a smooth immersive experience for everyone.”

The Game Creators Development Director, Rick Vanner, said “Combined with a host of new commands, functional tweaks and bug fixes, version 2.0.19 continues to expand the AppGameKit universe with the capabilities you need to create awesome applications across multiple platforms.”

Towerbots ( is a great example of an AppGameKit HTML5 game, produced by Blendman (

The Game Creators used AppGameKit to develop Driving Test Success Theory, Hazard Perception and Highway Code apps for UK publisher Focus Multimedia, deploying them onto the App Store, Google Play, Amazon, Mac Store and Blackberry World - all from AppGameKit’s executable code. These Driving Test Success apps are now one of the UK’s #1 ‘Learning to Drive’ apps.


  • 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


  • 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


  • Note that all platforms now behave the same way with UV scrolling, images must be a power of 2 in size to wrap properly


  • 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


  • 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 GetPointerPressed


  • Fixed GetDeviceLanguage not returning the correct value on Linux
  • Fixed GetDeviceType on Linux not returning anything

Raspberry 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 usage


  • 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 values


  • 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 recursion


  • Fixed SetLocalNotification not overwriting the message of an existing notification
  • Fixed CancelLocalNotification causing future notifications to have a blank message


  • 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 Windows


  • Added shader guide to detail how to write shaders for use with AGK


  • Added network socket commands to establish and receive TCP connections directly to other devices


  • Added SaveSharedVariable, LoadSharedVariable, and DeleteSharedVariable for sharing values between apps on iOS and Android