I've uploaded version 2.0.15d to the downloads area with the following changes
Build 2.0.15d
------------------------
- Changed all the asserts for physics to return from the function
- Added an Assert to all commands to check if the physics world exists
- Fixed bug in Delete3DPhysicsWorld() not clearing the DynamicsWorldArray()
- Fixed memory leak in Delete3DPhysicsWorld()
- Added a call to the Delete3dPhysicsWorld() when an app is finished broadcasting
- Fixed bug in ragdoll where it was not deleting from rigid body manager
- Updated information for Create3DPhysicsWorld() help about calculating scale factor and minimum size of objects that solver can handle
- Fixed quad objects failing to draw when the camera moves
- Added SetObjectScreenCulling to turn off frustum culling in certain cases
- Fixed DeleteAllSprites causing a crash if an edit box or text object exists
- Fixed SetMusicSystemVolume not having any effect on Linux
- Fixed SetMeshMemblockVertexNormal setting the position instead of the normal
- Fixed SetMeshMemblockVertexUV setting the position instead of the UV
- Changed LoadObjectWithChildren to ignore all scaling on bones, use SetObjectScalePermanent after loading instead
- Fixed loading Collada objects sometimes failing with duplicate node name
Build 2.0.15c
------------------------
- Fixed Linux GetRawKeyState returning 0 after one second when the key is held
- Fixed InstanceObject and CloneObject causing a crash when Sync is called between creating the original object and the copy
- Fixed music volume on Linux not having any effect
- Fixed music on Linux not looping
- Fixed ShowChooseImageScreen not working on Linux
- Fixed ShowChooseImageScreen not working on iOS
- Fixed bug in Create3DPhysicsCharacterController() when width equals depth
- Fixed PlayTweenChar not having any effect
- Fixed GPS commands not working on iOS 8 and 9
- Fixed CreateObjectFromMeshMemblock not creating the object properly
- GetObjectInScreen is now fully functional
- Fixed sending an Android app to the background causing 3D objects to disappear
- Fixed Android taking up to 15 seconds to create an HTTPS connection
- HTTPS connections using self signed certificates will now fail verification
- Added SetHTTPVerifyCertificate to turn off certificate verification in certain cases
Build 2.0.15b
------------------------
- Fixed a crash when using InstanceObject or CloneObject
- Fixed crash when using CreateFullscreenAdvert on Android
- Fixed Android apps not being able to resume after being sent to the background
- Fixed not being able to set breakpoints when debugging in Tier 1
- Added missing tier 2 include files
Build 2.0.15
------------------------
- Updated iOS libraries to iOS 9 and XCode 7
- Updated iOS Google Ads SDK to version 7.5.1
- Minimum supported version of iOS has increased from 5.1.1 to 6.0, this only affects the iPad 1
- Increased number of raw joysticks to 8. Note that Microsoft still limit XBox controllers to 4 per PC.
- Added Visual Studio 2015 lib and template
- Added ragdoll and character controller commands for 3D physics
- Fixed a bug with SetObjectShapeCylinder
- Fixed spelling of Create3DPhysicStaticBody() to Create3DPhysicsStaticBody()
- Fixed LoadObjectWithChildren() not loading some models when using an auto assigned object ID
- Fixed FindStringCount returning the wrong value
- Removed CompareStringIgnoreCase command
- Changed CompareString to have an ignoreCase parameter
- Fixed FixObjectPivot not working correctly on bone animated objects
- Added DLC menu to the IDE to access installed DLC packs
- Note that Tier 2 projects now require these include paths ../../bullet and ../../bullet/BulletCollision/CollisionShapes
Build 2.0.15 Alpha
------------------------
- Added a check for invalid Android package names containing a dot followed by a number during APK export
- Fixed putting ExitFunction as the final statement of the last Case block in a Select statement causing a crash
- Fixed compiler crash if a source file contained a line longer than 1024 characters
- Updated iOS AdMob SDK to 7.2.2 to fix a validation warning
- Updated HTTP commands on Android to support SSL connections to hosts that use a single cetificate for multiple domains, such as CloudFlare
- Updated HTTP commands on Android to use the latest version of the curl library
- If AGK on Windows fails to detect a sound output device it will now continue running instead of throwing an error
- Added a check for DrawEllipse with a radius of 0, previously this caused a crash
- Fixed GetSpriteHit and GetSpriteHitTest not checking all shapes when additional shapes have been added to the sprite
- Modified auto assigned IDs to start at 100,000 instead of 10,000
- Added support for the following 3D file formats: .X .3ds .md3 .smd .md5 .lwo. .ac .b3d .dae .3d .lws .ms3d .blend .m3
- Fixed ClearTweenChain accidentally deleting the chain ID
- Modified the debugger so it should work on a local machine with no network connection
- Fixed calling StepPhysics followed by adding some forces and then calling Sync accidentally clearing those forces
- .obj files no longer support a previous hack to add a second set of UV coords to the file
- .ago files now require a Mesh{} tag around all the vertex data
- There can now only be one directional light which is enabled by default and called the sun for ease of use
- Point light command names have been rearranged to be easy to read, e.g. SetLightPointPosition is now SetPointLightPosition
- Added FixObjectToObject to create hierarchies of objects, similar to limbs from DarkBasic
- Added FixObjectToBone to attach objects to bones in skeletal objects
- Added LoadObjectWithChildren to load a model file that contains limbs or bones, as well as any associated animation
- Added bone commands to get and set the position and rotation of any bones an object contains
- Added new string commands FindStringCount, FindString, FindStringReverse, CompareString, CompareStringIgnoreCase, ReplaceString, StripString, TrimString, TruncateString, CountStringTokens2, GetStringToken2
- Added SetTweenSpriteXByOffset and SetTweenSpriteYByOffset
- Added commands to create a custom tween with up to 4 float and 4 integer values, and read the values as it is running
- Added GetSpriteOffsetX and GetSpriteOffsetY to return the current offset point
- Added animation commands for 3D objects, they will only work on objects created with LoadObjectWithChildren
- Fixed the tween commands not working properly when broadcasting multiple apps to a device
- Fixed DeleteAllSprites preventing text and edit boxes from drawing
- Fixed DeleteFile not refreshing the file list when using GetFirstFile
- Fixed OpenBrowser on Windows sometimes not detecting the correct default browser
- Added MinimizeApp command to minimize an app
- Fixed CreateMemblockFromImage not working on render images on Android
- Fixed render images becoming blank on Android when an app is sent to the background
- Added SetObjectZBias to prevent Z fighting
- Changed GetEditBoxChanged to no longer reset after being called, it will now return 1 until the next Sync or Swap call
- Fixed GetSoundsPlaying not recognising when a sound is stopped with StopSoundInstance
- Added a Log command that accepts a float to return the logarithm of a value
- Fixed SetSpriteAnimation from moving and repeatedly scaling the sprite when the sprite has been scaled with SetSpriteScale
- Fixed a crash when using transparent 3D objects on 64bit devices
- Fixed memblocks not getting deleted between broadcasts of an app
- Object colors are no longer limited to 0-255, to allow over saturation and negative colors that subtract light
- Objects can now be lit by up to 8 vertex lights and 4 pixel lights, if more lights exist in the scene then the closest will be used
Physics now has ragdoll commands but they require models to be rigged in a special way, I want to take a look at this in future to see if we can make it easier to use.
Unfortunately we no longer support the iPad 1 as the minimum version of iOS is now 6.0 and the iPad 1 only went up to 5.1.1. This shouldn't affect any other devices.
Let me know what you find.