documentation

Release 18.9.1

Version Info

Release date: 13.09.2018 Release info: General Release

General

After 18.3.1 this is the next release, where a lot of bugfixes have been taken into concideration. We have released a prerelease, 18.6.1, where some issues with ARKit have been fixed. This release features some minor updates in preparation to bigger changes:

  • More stable tracking, less jittering, resolving some issues around misleading snapping behaviour.
  • Towards the unification of HoloLens and VisionLib Tracking. There is only one vlUnity Plugin anymore.
  • Adding various tutorials for camera calibration, init data usage and guidelines for the usage of ARKit enabled devices.
  • Allow use of occlusion models for tracking
  • Use IL2CPP for UWP and Android
  • Optimizations for Android and iOS hardware
  • Ability to use hardware protection dongles for engineering and developer licenses on macOS and Windows.

Bugfixes

  • Fixing an issue, where the SDK tended to crash, when a not valid initDataURI had been passed.
  • Added filter to prevent the model-based tracking from accidentally initializing around a tiny area in the image.

Enhancements/Features

  • Added 'occlusionModelURI' parameter to 'modelTracker' and 'holoLensModelTracker' configurations. This allows to use a 3D model to occlude parts of the generated line-model. More details can be found in the modelTracker documentation.
  • Added warning, which will show up, if the current license will expire in less than 7 days.
  • It's now possible again to specify a Metaio initial pose directly inside vl-configurations (see modelTracker for more details).
  • Accuracy improvement for model-based trackers. The output noise of the calculated pose is reduced (especially noticeable on still images).

iOS

  • Experimental: ARKit 2.0, if available the VisionLib will allow you saving the WorldMap additionally to your init data. Enable this feature by adding UseExternalSLAMMap:true to your parameters. It is very useful, if the target object is not beeing moved (also you may set staticScene:true. This allows very reliable relocalization after an ARKit map has been built. It can be saved, cleared and reloaded using the initData commands.
  • Added calibration for iPhone 5 S and updated calibration for iPhone 6, adding missing id for iPhone X

HoloLens

  • More stability regarding reinitialization after changing the application focus

Android

  • More stability and preparation for 64bit support (next release)

Interfaces

  • The error JSON string given to the callback of the createTracker and createTrackerFromString commands now contains an issues array with more information about all occurred fatal errors.
  • The VLTrackingIssues.issues array will now be filled with VLTrackingIssue objects, if a fatal error occurred during the tracking initialization. In our example scenes, this has the effect, that the ShowInitWarningEventBehaviour will not only show warnings, but also errors.

Native

  • Added vlSDK libraries for Universal Windows Platform (UWP) to the vlSDKPackage. This allows to create UWP applications without the use of Unity.
  • For 32-bit Windows machines the calling convention of the vlSDK functions are now specified explicitly to be __stdcall. Previously this was left undefined and the __cdecl calling convention was used. All callback functions were already using the __stdcall convention through the VL_CALLINGCONVENTION define. Code changes therefore should only be necessary, if the vlSDK functions were loaded dynamically (e.g. using the GetProcAddress function from Kernel32.dll). A recompilation of your project will be necessary, because the ABI has changed. Simply overriding the vlSDK.dll file with the newer version will not work.

Unity

  • The vlUnitySDK package now includes all the script necessary for model-based tracking with the HoloLens. There will not be a separate HoloLens Unity package anymore.
  • Removed small delay before the transformation of the VLInitCamera / VLHoloLensInitCamera gets applied directly after the initialization.
  • The VLUnityCameraHelper.QuaternionFromMatrix function wasn't returning the correct result for certain matrices (e.g. for a rotation matrix constructed from euler angles [0, -90, 0] and [90, 180, 0]). This also affected the VLUnityCameraHelper.CameraToVLPose function, which is used by the VLInitCameraBehaviourEditor (script used to display the initial pose as JSON string in the Unity editor) and the LogInitPoseBehaviour (example script used to output the initial pose as JSON string debug message).
  • The VLRuntimeParameterBehaviour (used by the VLRuntimeParameters_ModelTracker_v1 prefab), SetTextBehaviour and CameraResolutionSelector weren't working correctly on systems with certain non-english locales. Now those scripts should be independent from the locale.
  • Applications build for 32-bit UWP with IL2CPP as scripting backend should not crash during startup anymore.
  • Init Data can now dynamically be written, loaded and reset. Please checkout the AdvancedModelTracker Example and Initialization: Fast Init & Re-initialization.
  • Added scripts and example scene (HoloLensCarTracker.unity) for using vlSDK under HoloLens to Unity package. For productively using the HoloLens an Engineering License (vlGeneral_Licensing) is required. For testing, also the Trial License allows running vlSDK on the HoloLens (with the trial limitations). Please keep in mind, that the HoloLens support is still experimental and we are still working on improving the experience.

Tools

License Tool

  • Small changes regarding stability of execution without valid parameters

Licensing Changes

  • Various changes in License Model explanation (vlGeneral_Licensing)
  • Added HW-Dongle feature

Documentation Changes