Changelog

SDK v1.13.1

2021-06-18

Added

    REST: On-server localization now returns the localization time on the server

Changed

    Core: Optimized plug-in sizes
    Samples: Cleaned navigation samples

Fixed

    Mapper: VGPS was not working

SDK v1.13

2021-05-18

Added

    Core: Adjustable plugin image compression level (0..9)
    Core: ARSpace; LoadAndInstantiateARMap() improvements, overloaded version for on-server localizer use cases
    Samples: Mapper; added image limit warning
    Sample: Mapper; tracker alignment support
    Developer Portal: Metadata downloadable as an .json file

Changed

    Core: Removed 'bank' and other unused parameters from the REST API
    Core: OnPoseFound/Lost events are now public
    Core: Removed MapToEcecGet(), now fetches it from map metadata instead
    Samples: Now uses a binary endpoint for loading the map data instead of Base64
    Developer Portal: allow max. 8 jobs for alignment/stitching
    Developer Portal: email address changed to user ID
    REST API: Sending maps now requires the recipient's user ID, not the email address

Fixed

    Core: REST; Map load workaround for pre 1.12 servers
    Core: ARMap; fixed point cloud shader slowness with multiple points
    Bug fixes and general SDK clean up

SDK v1.12.1

2021-04-11

Fixed

    Core: Updated point cloud shader to fix errors on some Android devices

SDK v1.12

2021-04-05

Changed

    SDK: mapId used everywhere instead of mapHandle
    SDK: ARMap tries to parse mapId from map name when loading .bytes files
    Cloud Service: Map alignment stored in the new map metadata as a Vector3(tx, ty, tz) and Quaternion(qw, qx, qy, qz). The old ECEF endpoint and transform matrix will be deprecated later.
    Cloud Service: Default map alignment in metadata is based on captured GPS coordinates and is stored in the metadata in the ECEF coordinate system.
    Cloud Service: Faster map stitching
    Core: Added Geo Pose localizer to ARLocalizer
    Core: Removed old v1.10 localizer from the plugin to make it smaller
    Core: Made CaptureImage() faster - the image connectivity is not tested if not specified. Testing connectivity was useless for on-server localization anyway
    Core: Removed old pointcloud3d shader and support for it in scripts
    Samples: Unified Mapper to use ARLocalizer, ARMap and ARSpace components like the rest of the samples
    Samples: Unified MapDownloadSample, which also now supports loading multiple maps

Fixed

    SDK: Lots of clean up and minor fixes
    Magic Leap: fixed compiling when using Unity 2020.2, AR Foundation 4, and ML XR Plugin 6

Added

    Cloud Service: New map metadata stored with all new maps
    Cloud Service: New REST API endpoints to get and set metadata and reset map alignment in metadata
    Cloud Service: New Align Maps feature aligns maps and updates their metadata. Similar to stitching maps but no new map is constructed.
    Cloud Service: output coverage.json log file for map stitching and alignment jobs
    Cloud Service: Maps can now be renamed
    Core: New pointcloudDisk shader with adjustable point size and 2D/3D modes
    Core: Added a helper function LoadAndInstantiateARMap() in ARSpace for easier runtime map initialization
    Core: LoadMapAsync() now fetches the map metadata
    Core: ARMap functionality to load/save/reset map alignment metadata
    Core: New AR Map Downloader tool to automatically download and set up maps in scenes
    Samples: Added "Check image connectivity" toggle to Mapper workspace settings

Known issues

    ARMap might throw warnings about disposing of ComputeBuffers
    Point cloud shader not working on Android devices with certain Mali GPUs

SDK v1.11.3

2021-01-20

Changed

    Core: Fixed a minor compatibility problem with the latest GitHub samples

SDK v1.11.2

2021-01-12

Changed

    Core: Updated all plugins
    Core: Improvements to the on-server localizer in ARLocalizer and ARMap

SDK v1.11.1

2021-01-11

Changed

    Core: Updated localizer with improved performance and speed
    REST API: New functions using async/await instead of Unity coroutines
    Switched to System.Net.HttpClient everywhere, because of random problems with UnityWebRequest on iOS
    General bug fixes

SDK v1.10

2020-11-11

Added

    REST API: Proper URI identifiers
    REST API: new endpoints for image capture and on-server localization, where the image payload can be sent as binary instead of a Base64-encoded string (smaller filesize -> faster uploads)

Changed

    Immersal Mapper: Smaller filesize in image uploads
    Immersal Mapper: Localization and capturing is now faster especially on older devices, such as iPhone 7 and beyond

SDK v1.9

2020-10-23

Added

Changed

    Core: Localizer does not return the map id anymore. Instead, it returns a map handle like an earlier SDK version did.
    Immersal Mapper: Updated UI
    Samples: Restructured Unity core package and the Unity sample project. ARMap.cs, ARLocalizer.cs, and other essential scripts are now part of the core package. This should make future SDK updates to new versions easier.
    Samples: Code cleanup
    Samples: Reworked the pointcloud3d shader to support point size attribute on OpenGL, Vulkan, and Metal platforms.
    Samples: Mapper app sample updated to the latest version.

SDK v1.8

2020-09-11

Added

Fixed

    Samples: `NativeBindings` errors in Unity Editor.

Changed

    Huawei AR Engine support moved to its https://github.com/immersal/arcloud-sdk-samples/tree/hwar
    Samples: Api Compatibility Level was errorneously set to .NET 4.x, switched back to .NET Standard 2.0
    Samples: Mapper now stores queued images into the persistent data directory to avoid out-of-memory crashes
    Samples: Updated to Unity 2019.4.9f1 LTS and AR Foundation 4.0.8

SDK v1.7

2020-07-06

Added

    Core: Improved localization robustness.
    Core: REST API clean-up; error, start, progress, and complete callbacks.
    Core: REST API; Map construct detail level.
    Samples: Native double-precision GPS coordinates for iOS and Android.
    Samples: Image upload progress bar to Mapper UI.
    Samples: Map construction detail level in Mapper.
    Samples: Visual GPS compass bearing in Mapper.

Fixed

    Samples: ARMap.cs crashing in Unity Editor when editing.
    Samples: Bug fixes to Huawei AR sample scripts.

Changed

    Core: Smaller plug-in size.
    Core: Changed map hashes from MD5 to SHA256.
    Samples: Updated to Unity 2019.4 LTS and AR Foundation 4.
Known issues:
    Assets\ImmersalSDK\Core\Plugins\NativeBindings.cs(73,24): error CS0161: 'NativeBindings.GetLatitude()': not all code paths return a value If Unity's platform is 'PC, Mac & Linux Standalone', there's a regression bug in the Core SDK. Switch platform to iOS or Android to resolve the issue.

SDK v1.6

2020-06-05

Added

    Server / Developer Portal: Support for textured meshes (both grayscale and RGB).
    Samples: ARLocalizer.cs, ARSpace.cs & ARMap.cs: support for uniform scaling of maps.
    Samples: ARLocalizer.cs now has MapChanged and PoseFound events.

Fixed

    Plugin: image capturing is now a lot faster.

SDK 1.5

2020-05-05
SDK v1.4 was released to closed testing earlier. After a round of updates and new features, we decided to fast-track v1.5 out for public release.
New v1.5 (technically v1.4) maps are not supported by older SDK versions.

Added

    Server/Developer Portal: Support for private and public maps.
    Server/Developer Portal: Sending/copying maps between accounts.
    Server/Developer Portal: Search for public maps and filter by GPS coordinates or user accounts.
    Server/Developer Portal: SHA256 hashes for new maps.
    Server/Developer Portal: Reset the private developer token.
    Samples: ARLocalizer.cs has a new toggle to reset filtering when the last localized map id changes.
    Samples: Graph-based navigation sample.

Fixed

    Immersal Mapper: Android now properly requests for location (GPS) permissions.

Changed

    Server/Plug-in: Generated maps are now up to 80% smaller.
    Server/Plug-in: Map file format is not compatible with v1.3 anymore. v1.5.0 plugin can still load maps done with earlier SDK versions. Server/Plug-in: Both the localization accuracy and speed have been improved. Plug-in: The native plugins are now 75% smaller.
    Developer Portal: Updated version of the Developer Portal to support new features.
    Samples: ARlocalizer.cs lastLocalizedMapId variable made public.

SDK 1.3

2020-02-07
New v1.3 maps are not supported by older SDK versions.

Added

    Developer Portal: v1.3 breaks map file format forward compatibility. Old maps are stored in a separate legacy v1.2 Developer Portal. Maps are not carried over to the new version.
    Developer Portal: A new sparse state in map construction. Maps are generated faster as you can now download the .bytes file and sparse .ply point cloud before the dense mesh is computed.
    Server: On-server localizer now also accepts RGB24 .png images in addition to 8-bit grayscale ones for easier headset integration.
    Plugin: Visual GPS support. If a map contains GPS data, the localizer will return WGS84 lat/long/alt coordinates with a successful localization.
    Samples: Mapping App now has a GPS toggle. When on, captured images contain GPS coordinate data which is used in map construction. Also, maps in the map list are filtered with a 200-meter radius from the current location.

Fixed

    ARLocalizer.cs Burst mode now runs when the app enters the foreground.
    ARLocalizer.cs and ARHelper.cs Fixed rotation for different screen orientations so portrait/landscape/auto now work.
    Plugin: Localizer now returns -1 mapID if no maps are loaded.

Changed

    Immersal AR Cloud SDK name to Immersal SDK everywhere.
    Developer Portal: Dense meshes are now more detailed.
    Plugin: Localizer now returns the actual mapID from the Developer Portal instead of a mapHandle unique to the session.
    Plugin: Map file format changed. Old .bytes files continue to work in v1.3, but new maps will not work in older versions.
    Samples: Updated project to Unity 2019.2.20f1.
    Samples: Added dependancy to AR Foundation 3.1 preview, because some scenes have AR Occlusion Manager attached to the AR Camera. Older versions of AR Foundation continue to work.
    Samples: Updated NavigationSample scripts.

SDK 1.2

2019-10-16

Added

    Developer Portal: Map stitching. You can select multiple maps and combine them into one new map (assuming the maps have overlapping features).
    Samples: Mapping App can now restore any old map's source data to the workspace from the map list.
    Samples: Mapping app can also delete maps from the map list directly.
    SDK: Mapping performance improvements.
    SDK: REST API updated.

Fixed

    Samples: The "AR Cloud space" rotation and position can now be gotten from ARSpace.cs instead of ARLocalizer.cs, which was buggy anyway and returned only the first map's pose, thus giving incorrect results when using multimaps.
    Samples: Navigation and multiplayer samples fixed to work with multimaps.
    Samples: UI fixes all over.

Changed

    Samples: Updated project to Unity 2019.2.8f1 and AR Foundation 3.0.0 preview.3, should continue to work just fine with older versions.
    Developer Portal: Updated EULA.

SDK 1.1

2019-09-12

Added

    A simple Multiplayer Sample scene using Unity Networking (Note: You need to enable Multiplayer in Unity Services).
    Variable lighting adaptation.
    Android 64-bit support.
    Map Download Sample (previously SampleScene) and MapListController.cs are back by popular demand.
    On-server localization.
    Gravity-based map alignment when constructing a new map.

Fixed

    Mapping and localization now work on iPad Mini (probably fixes problems with various Android devices as well).
    Point cloud renderer and runtime map loading fixes.
    On-device localization was sometimes giving false results.

Changed

    Supported Unity version is now 2019.2.3f1+, should work on 2018.4 LTS still with correct AR Foundation packages.
    Android plugin is now an .aar file with both 32-bit and 64-bit binaries.

SDK 1.01

2019-06-24

Added

    Samples: Mapping App now notifies the user if sequential captured images can be connected by their matching feature points.

Changed

    Samples: C# API updated for AR Foundation 1.5 / 2.2.
    Samples: Point cloud preview bugs fixed.
    Samples: Now distributed in a separate GitHub repository.
    SDK: Requires Unity 2018.4 LTS.
    SDK: Now distributed as a .unitypackage (available at the developer portal).

SDK 0.19

2019-06-12

Added

    SDK: Improved multimap support in Unity Editor.
    SDK: ARLocalizer.cs finds the first pose much faster.

Changed

    Samples: Improved MappingApp with separate Workspace and Visualize modes.
    Samples: Changes to sample scenes to support multimap feature.
    SDK: ARSpace.cs functionality moved to ARMap.cs to clarify multimap workflow.

SDK 0.18

2019-05-23

Added

    Samples: Downsample option in ARLocalizer. Uses less memory and is faster.
    Samples: Multimap loading support in MappingApp.
    Samples: RGB Image Capture Toggle in MappingApp.
    Developer Portal: Dense point cloud download.
    Developer Portal: Delete map function.
    SDK: Initial multimap support.

Changed

    SDK: Fixed camera intrinsics calculation (fixes screen space Y offset bug on iOS devices).
    SDK: ARCloud.cs script removed, ARSpace.cs has the same functionality.

Known issues

    Samples: Removed the drop-down menu for dynamic map loading. It needs to be completely reworked to support multimaps.

SDK 0.17

2019-04-08

Added

    Samples: Persistent Content Placement Sample Scene.
    Samples: Pose Filtering in SampleScene.
    Developer Portal: Dense point cloud download.
    SDK: RGB Camera Capture option.

Changed

    Samples: MappingApp UI and UX improvements.
    SDK: Updated to OpenCV 4.
    SDK: Improved network bandwidth usage during mapping.

SDK 0.16

2019-03-07

Added

    Samples: Indoor Navigation Sample Scene.
    Samples: Tracking Quality Indicator PoseIndicator in SampleScene.
    Developer Portal: Sparse point cloud download.
    SDK: Feature Anchor sets map orientation.

Changed

    Samples: Option to switch between different maps in addition to the embedded one.
    Samples: MappingApp UI and UX improvements.
    Samples: MappingApp Capture Delay decreased from 0.5 seconds to 0.25 seconds.
    Unity Package: Project cleanup.

Fixed

    Samples: Fixed crash when no debug text was assigned to ARLocalizer.
    SDK: Fixed a bug with setting the camera resolution. Now defaults to best possible.

SDK 0.15

2019-02-17

Initial release

Last modified 4mo ago