July 2024 Release - 1.8.0

July 2024 Release - 1.8.0

The OS 1.8.0 July 2024 release is here :tada: and it enhances Magic Leap 2 with improved developer tools and user experience. Key updates include Magic Leap Hub 3, mesh export from Spaces, and raw camera access for WebXR apps. These improvements support advanced AR projects and more intuitive device interactions.

Release Highlights:

  • Magic Leap Hub 3
  • Simplified Mesh Alignment using Object Alignment Sample Project
  • Export Mesh from Spaces Application
  • Magic Leap Spectator App available for Andriod and iOS
  • Raw Camera Access on WebXR Apps

:warning: Reminder: As of the 1.7.0 OS update, USB Debugging is disabled by default. Developers may need to manually re-enable Developer Mode to enable USB Debugging. :warning:

:warning: Notice: Unity API Namespace Changes
All OpenXRFeature classes inside the UnityEngine.XR.OpenXR.Features.MagicLeapSupport namespace has been marked Obsolete. The classes are relocated to new MagicLeap.OpenXR namespaces. Please read this forum post for a detailed understanding of this issue and to access some helpful migration tools. :warning:

New Tools 🛠️

Magic Leap Hub 3

Magic Leap Hub 3 provides access to comprehensive developer tools, SDK packages, and other resources for building and deploying Magic Leap 2 apps. With the release, developers enjoy a more seamless experience when handling packages, streaming their on-device experience, and more. Get the Magic Leap Hub 3 today from our downloads page. Read the guide on our developer portal for a full list of features and settings.

Featured Guides :eyes:

Sensor Data Feature Guide

This guide describes the various sensors available for developers to access on the Magic Leap 2 device and how to configure them to gather data in the specific manner desired (e.g., frame rate, exposure, gain, etc.). We refer to this as Sensor Data Access & Control.

Accessing and controlling these data streams allows developers to build more valuable algorithms and applications. They can access RGB cameras, world cameras, depth sensors, eye cameras, Inertial Measurement Units (IMUs), magnetometers, ambient light sensors, altimeters, and microphones.

Read the guide for more information.

Secondary View Unity Guide

Two captures showing the difference with Secondary View in effect

The Magic Leap 2 Secondary View feature leverages the OpenXR XR_MSFT_first_person_observer extension to enhance Mixed Reality capture. Rendering a secondary view from the RGB camera's position ensures precise physical and virtual content alignment. This feature addresses common mixed reality (MR) capture issues, improving overall quality.

Read the guide for more information.

SDK Release Highlights :sparkles:

For a full list of updates, see the Releases section on the Developer Portal.

C SDK

Improvements:

  • Added support for external power bank intents. Read the guide
  • Updated battery sample app to support external power bank intents. Download the sample from the ML Hub.

OpenXR Integration

This release adds support for the following extensions:

  • XR_KHR_maintenance1
  • XR_MSFT_composition_layer_reprojection

Unity SDK

This release adds:

  • Update OpenXR Plugin dependency to 1.11.0.
  • Added GetMapOrigin() method to MagicLeapLocalizationMapFeature to allow users to get the pose of the map's origin.
  • Added new Magic Leap 2 Secondary View Support OpenXR Feature to support XR_MSFT_secondary_view_configuration and XR_MSFT_first_person_observer extensions.

Unreal SDK

  • Upgrade to Unreal Engine 5.4.2.
  • Support was added for the XR_ML_physical_world_occlusion extension and corresponding example.
  • Added collision and occlusion examples for MagicLeapWorldMeshing.
  • Magic Leap OpenXR vendor extensions are now clearly marked.

Soundfield (MSA) SDK Unity Plugin

  • Fix ensuring the pipeline is flushed before suspending processing due to silence (to support very short sounds).
  • Removed circular logic from auto-startup sequence

Soundfield (MSA) SDK Unreal Plugin

  • Fix ensuring the pipeline is flushed before suspending processing due to silence (to support very short sounds).

MRTK3

  • Added an option to the Runtime Rig Configuration for OpenXR to override the XROrigin's requested tracking origin mode. The current recommended tracking origin mode for the ML2 is Device mode.
  • The OpenXR rig variant was updated to request Device tracking mode.
  • Made an improvement to the responsiveness of the hand and controller multimodal behavior, MagicLeapControllerHandProximityDisabler, for when the controller tracking state changes and when detecting a hand is holding the controller.
  • Exposed the time threshold property of the MagicLeapControllerHandProximityDisabler component for having a consistent target before a hand switch is made.

Developer Resources

Mesh Alignment Sample Project

We are releasing a Unity Object Alignment sample project demonstrating how to align and anchor large-scale 3D content using spatial anchors, such as digital twin meshes. This project is particularly helpful when anchoring content in a large space.

Anyone can download the project right away or use it as a starting point for other projects.

Spaces 3D Mesh Export

We’re excited to announce the launch of one of the most highly requested features for the Magic Leap 2 Spaces application: the ability to export 3D meshes. Now, users can export GLB files of their scene mesh from the Spaces app on their Magic Leap 2 and transfer it to their desktop via the Magic Leap Hub, allowing for reuse in other applications. The export feature is available to everyone; it does not require an AR Cloud license and can be done directly from the Spaces app on Magic Leap 2.

New features and availability for the Magic Leap Spectator App

The Magic Leap Spectator App is now available for Android via the Google Play Store and iOS via the Apple App Store. We’re also introducing new iOS support for iPads, ProRes recording on iPhones iOS 15.1 or later, and recording to external storage on iPhone 15 Pro and iPhone 15 Pro Max.

Systems & Performance

Default Hand-tracking Capabilities

Magic Leap 2 now features hand-tracking by default, enabling users to enjoy more intuitive interactions with our device. This change does not affect third-party apps.
Users can navigate the Magic Leap 2 OS controller-free with two hand-tracking modes:

  • Near mode: Users can directly poke the content.
  • Far mode: Users can select objects by aligning a hand ray and using the pinch gesture to select the content.

The screens will default to Near mode where available, but users can change this in Settings.

For the best Magic Leap 2 hand-tracking experience, we recommend users complete the guided tutorial in the new Fundamentals app. To access Fundamentals, update to OS 1.8.0 so that the app appears in the home menu.

You can still use the controller at any point, the same way you have in the past. We’ve added the ability to switch between the two input methods, so you can use Hand Tracking and controller interchangeably. For Hand Tracking to work, the controller must be idle or turned off.

Raw Camera Access on WebXR Apps

We’re releasing a new API that gives developers, with user permission, raw camera access on WebXR-powered applications. This introduction expands the list of SDKs that enable Magic Leap developers to access raw camera data with user permission, such as the Native code, Unity, and Unreal Engine, and now WebXR SDKs.

Applications use raw camera image pixels to create custom per-frame visual effects and take snapshots of app-rendered content overlaid on the physical world. Before this API, WebXR and camera access couldn’t run at the same time.

Our new API supports the WebXR Raw Camera Access Module, allowing WebXR developers to create apps that need raw camera images. This means WebXR sites or frameworks can run their own perception algorithms based on camera access.

Developer Option - USB Debugging

To ensure that the ML2 device is as secure as possible for our customers, the USB Debugging feature is disabled by default for 'clean' (erase user data) flashing of the latest software build and for a factory reset use case. With this default, developers or users who want to connect the ML2 device to a PC will have to manually enable USB Debugging from within the headset.

For an extended list of system updates and known issues, visit the 1.8.0 OS Release Notes.

1.8.0 Package Version Guide

Listed below are the version numbers of the packages that comprise the 1.8.0 update:

  • Magic Leap OS - 1.8.0 [B3E.240613.08-R.037]
  • Unity SDK - 2.3.0
  • C SDK - 1.8.0
  • Unreal SDK - 1.5.0
  • Soundfield (MSA) Unity - 3.4.7
  • Soundfield (MSA) Unreal - 3.4.5.1
  • MRTK3 - 1.1.0

Reminder: if you update to the latest SDK, you also need to update the OS on your device. If you are using Unity, be sure to use the versions listed above for full compatibility. After you download the packages listed above, check out our setup guides.

Developer Input and Feedback

Our Developer Forum and our Bug Report submission form are prime channels for direct input to continuously improve Magic Leap 2. If you have an issue developing for our platform, give us a shout on the Forum. We respond to each question. If you suspect you’ve found a bug, don’t hesitate to report it to us either through the bug report form or a forum post.

That’s it for this month. Best wishes on your Magic Leap 2 project, and we’ll see you on the Forum.

Best,

Magic Leap Developer Relations Team

1 Like