Build 1.00.6944

Posted on December 16, 2017

A new Murl Engine Build 1.00.6944Beta is available for download.

Changes:

  • Added Graph::VolumeCuller to replace deprecated Graph::BoxCuller and Graph::FrustumCuller
  • Unified Graph::PerspectiveCamera and Graph::OrthographicCamera (now deprecated) into Graph::Camera
  • Moved Android IAB files into a separate directory *

New Features:

  • Added IEnums::CONSTANT_BUFFER_ITEM_SHADOW_n and individual uniforms IEnums::UNIFORM_ITEM_SHADOW_VIEW_PROJECTION_MATRIX_n_m and IEnums::UNIFORM_ITEM_SHADOW_SPLIT_DISTANCE_n
  • Added Graph::ShadowCamera
  • Added PVRTC software decompressor

Improvements:

  • Updated and build with Android Studio 3.0.1 and Android NDK 16.1.4479499
  • Improved Resource::PvrImage to support all the different PVR file format variants
  • Added filter options to Resource::Image for base & mip scaling
  • Updated libpng to 1.6.32
  • Updated libwebp to 0.6.0
  • Updated openal_soft to 1.18.1
  • Added prescaling feature to atlas generator tool

Fixes:

  • Fixed a reinitialization problem in Graph::Light
  • Fixed resizing of Resource::NativeImage video streams
  • Fixed Resource::NativeImage not respecting resource parameters
  • fixed Math::Cone setter from an off-center Math::Frustum
  • Added missing multisample framebuffers with depth texture
  • Fixed various issues in Android::FileInterface
  • Fixed a crash in Resource::XmlImage when using invalid parameters
  • Fixed Resource::XmlImage returning wrong video stream format
  • Fixed Graph::TextGeometry ignoring objectBoundingModeX="CONTENTS" for bitmap fonts
  • Fixed a depth buffer issue in Video::Camera in certain situations
  • Fixed not setting boot time correctly upon resume on iOS & Android
  • Misc fixes for compressed texture formats

*) Android Changes:

You need to adapt your java and aidl source sets and your amazon lib dependency in your build.gradle file:

from:

sourceSets {
        main {
            java {
                srcDirs += project.ext.MURL_ENGINE_ROOT+'/tests/source/'+project.ext.MURL_MODULE_BIN_FILE+'/java'
                srcDirs += project.ext.MURL_ENGINE_ROOT+'/base/source/platform/android/java'
                if (project.ext.MURL_ANDROID_IAB_STORE != "samsung") {
                    exclude 'at/spraylight/murl/samsung/*'
                }
                if (project.ext.MURL_ANDROID_IAB_STORE != "google") {
                    exclude 'at/spraylight/murl/googleplay/**'
                }
                if (project.ext.MURL_ANDROID_IAB_STORE != "amazon") {
                    exclude 'at/spraylight/murl/amazon/*'
                }
            }
            aidl {
                srcDirs += project.ext.MURL_ENGINE_ROOT+'/base/source/platform/android/java'
                if (project.ext.MURL_ANDROID_IAB_STORE != "google") {
                    exclude 'com/android/vending/billing/IInAppBillingService.aidl'
                }
                if (project.ext.MURL_ANDROID_IAB_STORE != "samsung") {
                    exclude 'com/sec/android/iap/*'
                }
            }

to:

sourceSets {
        main {
            java {
                srcDirs += project.ext.MURL_ENGINE_ROOT+'/tests/source/'+project.ext.MURL_MODULE_BIN_FILE+'/java'
                srcDirs += project.ext.MURL_ENGINE_ROOT+'/base/source/platform/android/java'
                if (project.ext.MURL_ANDROID_IAB_STORE == "google") {
                    srcDirs += project.ext.MURL_ENGINE_ROOT+'/base/source/platform/android/iab/google/java'
                }
                if (project.ext.MURL_ANDROID_IAB_STORE == "amazon") {
                    srcDirs += project.ext.MURL_ENGINE_ROOT+'/base/source/platform/android/iab/amazon/java'
                }
                if (project.ext.MURL_ANDROID_IAB_STORE == "samsung") {
                    srcDirs += project.ext.MURL_ENGINE_ROOT+'/base/source/platform/android/iab/samsung/java'
                }
            }
            aidl {
                if (project.ext.MURL_ANDROID_IAB_STORE == "google") {
                    srcDirs += project.ext.MURL_ENGINE_ROOT+'/base/source/platform/android/iab/google/aidl'
                }
                if (project.ext.MURL_ANDROID_IAB_STORE == "samsung") {
                    srcDirs += project.ext.MURL_ENGINE_ROOT+'/base/source/platform/android/iab/samsung/aidl'
                }
            }

and from:

dependencies {
    if (project.ext.MURL_ANDROID_IAB_STORE == "amazon") {
        compile files(project.ext.MURL_ENGINE_ROOT+'/base/source/platform/android/libs/in-app-purchasing-1.0.3.jar')
    }
}

to:

dependencies {
    if (project.ext.MURL_ANDROID_IAB_STORE == "amazon") {
        compile files(project.ext.MURL_ENGINE_ROOT+'/base/source/platform/android/iab/amazon/libs/in-app-purchasing-1.0.3.jar')
    }
}

All changes can also be found in the change log.

As always, if you encounter difficulties, find a bug or want to discuss development issues, head over to the Forum.


Don't miss out on any update,
subscribe to our newsletter.


Copyright © 2011-2024 Spraylight GmbH.