Build 1.00.4754 Available!

Posted on July 23, 2014

The new Murl Engine Build 1.00.4754Beta is available for download.

Release Highlights:

  • LUA scripting support.
  • Native Android x86 support.
  • Several bugs and issues got fixed.
  • Documentation has been reworked.
  • Android build scripts have been reworked.

For an detailed overview on what's new, please read the change log.

Please notice the following API changes:

  • Changed Murl::IApp class interface: Added 2nd parameter to Configure(IEngineConfiguration* engineConfig, IFileInterface* fileInterface)
  • Changed Murl::Logic::IState class interface: Renamed GetRecentTickDuration() to GetCurrentTickDuration()
  • Changed Murl::Logic::BaseProcessor class interface: Renamed GetEngineProcessor() to GetProcessor()
  • Changed Murl::ILoader class interface: Added overload for AddPackage() with 3 parameters only.
  • Introduced shared pointers for Murl::Logic interfaces:
    typedef SharedPointer<GraphSoundObject> GraphSoundObjectPtr;
    typedef SharedPointer<IAppGraph> IAppGraphPtr;
    typedef SharedPointer<IAppProcessor> IAppProcessorPtr;
    typedef SharedPointer<IAppStage> IAppStagePtr;
    typedef SharedPointer<IAppStepable> IAppStepablePtr;
    typedef SharedPointer<IAppTimeline> IAppTimelinePtr;
    typedef SharedPointer<INodeObserver> INodeObserverPtr;
    typedef SharedPointer<IObservableNode> IObservableNodePtr;
    typedef SharedPointer<IProcessor> IProcessorPtr;
    typedef SharedPointer<IStage> IStagePtr;
    typedef SharedPointer<IStageProcessor> IStageProcessorPtr;
    typedef SharedPointer<IStageTimeline> IStageTimelinePtr;
    typedef SharedPointer<IStepable> IStepablePtr;
    typedef SharedPointer<IStepableObserver> IStepableObserverPtr;
    typedef SharedPointer<ITimeframe> ITimeframePtr;
    typedef SharedPointer<ITimeline> ITimelinePtr;
    typedef SharedPointer<ITouchArea> ITouchAreaPtr;
    typedef SharedPointer<SoundFader> SoundFaderPtr;
    Changed several interfaces to accept shared pointers instead of raw pointers. To adjust existing code simply replace all * by Ptr, e.g. IProcessor* to IProcessorPtr.
  • Renamed all addon files to a consistent naming scheme: murl_addons_[name]_factory.h, murl_addons_[name]_i_addon.h.
  • Renamed all addon interface classes to a consistent naming scheme: Murl::Addons::[name]::Factory, Murl::Addons::[name]::IAddon.
  • Introduced shared pointers for Murl::Addons interfaces:
    typedef SharedPointer<IAddon> IAddonPtr; for namespace Murl::Addons::Facebook, Murl::Addons::Filepanel, Murl::Addons::Openmax and Murl::Addons::Vuforia. To adjust existing code simply replace all * by Ptr, e.g. Addons::Facebook::IAddon* to Addons::Facebook::IAddonPtr.
  • Changed Murl::IAppAddonRegistry class interface methods to accept IAddonPtr shared pointers only.
  • Changed vuforia addon graph nodes XML namespace: e.g. Vuforia::DataSet to Vuforia::Graph::DataSet
  • Changed addon libraries to separate files for each addon on all supported platforms.
  • Renamed file murl_logic_graph_sound_fader.h to murl_logic_sound_fader.h
  • Moved methods from Murl::Util to Murl::Math namespace: Abs(), Min(), Max(), Clamp() and IsEqual().
  • Changed Murl::Util string conversion methods StringToDouble() and StringToFloat() to locale independent comma separator ..
  • Changed Murl::Enum class interface: Changed GetEnumValue() to GetEnumValueByName(), GetEnumName() to GetEnumNameByValue(), and IsEnumAvailable() to IsEnumValueAvailable(). Added methods to query values/names by index.
  • Cleaned up enum definition macros in murl_enum.h
  • Allow multiple controllers per node (see Graph::INode::AddController() and related methods). In addition to specifying a single node controller by e.g. controller.animationResourceId="...", it is possible to create multiple controllers via XML by defining a trailing index after the "controller" attribute part, e.g. controller.0.animationResourceId="..." and controller.1.scriptResourceId="..."

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-2021 Spraylight GmbH.