GamePlay v1.6.0 Release Notes

    • ➕ Adds file Stream interface for reading/writing files instead of using fread/fwrite.
    • ➕ Adds Terrain class to support for heightmap based terrains featuring LOD, multiple surface layers, loading from PNG, RAW8/16, full transform, physics, patch culling and verticle skirt for cracks.
    • ➕ Adds object-space normal map generation to gameplay-encoder for terrain normal map generation.
    • ➕ Adds scene support for loading .terrain files in .scene files.
    • ➕ Adds scene support for inline cameras to .scene files.
    • ➕ Adds suppoft for defining .scene files without 'path' to gpb. New node can not be create in .scene file.
    • ➕ Adds static Scene::getScene(const char*) to query currently active scenes in a game, helpful for script access.
    • ➕ Adds support for multiple translate, rotate and scale commands in a single node entity within .scene files, processed in-order they are defined.
    • ➕ Adds scene support for material auto binding scene ambient color, light color and light direction.
    • ➕ Adds support for setting the depth compare function on materials.
    • ➕ Adds support for texture/sampler arrays being passed to materials.
    • ➕ Adds support for loading uncompressed DDS textures for the following formats: R8G8B8, A8R8G8B8, A8B8G8R8, X8R8G8B8, X8B8G8R8
    • ➕ Adds improvments to prefer higher quality mipmap generation.
    • ➕ Adds improved Gamepad API support for button enumeration, triggers and some mobile Gamepad support on BlackBerry.
    • ➕ Adds additional gameplay-tests for billboards, forms, gamepads and lights.
    • ➕ Adds support for launching the browser via launchURL(const char*).
    • ➕ Adds physics support for setLinearFactor and setAngularFactor on rigid bodies.
    • ➕ Adds methods to PhysicsCollisionObject to allow conversion to subclass types (i.e. PhysicsRigidBody, PhysicsCharacter, etc) from script.
    • ➕ Adds option for fullscreen without width/height config to use native desktop resolution.
    • ➕ Adds Linux support for OpenAL PulseAudio back-end.
    • ➕ Adds support for latest Bullet Physics 2.81 with NEON optimizations for mobile targets.
    • Adds support for preprocessor directive NO_LUA_BINDINGS in the gameplay project to omit inclusion of generated lua bindings in compilation for developer mode value.
    • ➕ Adds optimizations to Lua generator to only write generated files if they differ from existing files, reducing both build times and committing of unchanged script binding files.
    • ➕ Adds changes to Slider for setValueTextVisible, setValueTextAlignment, setValueTextPrecision and getters.
    • ➕ Adds Microsoft Windows 7 64-bit support.
    • ➕ Adds Apple iOS 6 support.
    • 🛠 Fixes to external-deps to reduce the size of the libraries on Windows.
    • 🛠 Fixes for Android to no longer need to copy files to the SD card before reading them. None of the Android samples require an SD card.
    • 🛠 Fixes for animation of opacity on UI and fonts.
    • 🛠 Fixes in UI for removing controls and also setVisible(bool).
    • 🛠 Fixes for UI controls missing on MacOSX.
    • 🛠 Fixes for setting UI alignment programmatically.
    • 🛠 Fixes for lighting shaders.
    • Fixes to the texture minification mode from GL_LINEAR_MIPMAP_LINEAR to GL_NEAREST_MIPMAP_LINEAR for newly created textures with mipmaps.
    • 🛠 Fixes minor memory leaks and possible access violations when calling Game::exit() from script.
    • 🛠 Fixes physics debug drawing for large scenes causing the internal MeshBatch to grow to an enormous size.