February 2023 Release - 1.2.0-dev1

February 2023 Release - 1.2.0-dev1

We have exciting updates for our February 2023 Release, including simplified Segmented Dimming in Unity and a big AR Cloud release. Let’s dive right into it.

Simplified Segmented Dimming in Unity

Segmented Dimming in Unity can now be applied automatically as a screen-space effect. Instead of creating a custom dimmer mesh, the new API only requires the developer to call MLSegmentedDimmer.Activate().

MLSegmentedDimmer.Activate() call

This means that assets can be introduced to an application after it has been launched, such as a 3D model located on a CDN, and be dimmed after loading into a Scene. Note this requires version 7.0.0 of the com.unity.xr.magicleap package, available now.

We’ve enhanced our MLSegmentedDimmer API to allow developers to use the camera's depth buffer to automatically apply segmented dimming to properly configured 3D meshes in a scene. Starting with version 1.4.0, the Unity SDK uses the camera’s depth buffer to detect if an object is in view and then automatically dim the pixel behind it. Neither URP nor additional meshes are required for this method.

For those who require more granular control of the segmented dimmer, developers may configure their projects to dim the spaces occupied by meshes placed on a designated Layer, using URP and the SegmentedDimmer renderer feature. In addition to finer control, this method also allows for shader customization and the ability to adjust resolution. The tradeoff, however, is that this requires extra meshes to be added to a scene, and the setup can be more time consuming.

Regardless of how Segmented Dimmer is used in Unity, Segmented Dimming must be enabled in the device’s Settings app before launching the Unity app.

See our Segmented Dimming Guide for Unity for more details on implementation.

AR Cloud

Magic Leap’s AR Cloud makes it easy for multiple Magic Leap 2 devices to localize into shared maps and access large scale spatial data. This spatial data is managed on a web-based console where digital twin administrators create Shared Spaces, manage device-side scans, and merge scans to contribute to larger-scale Spaces. AR Cloud admins are able to import and export spatial maps, manage large-scale digital twin deployments, and monitor Magic Leap 2 device access.

As part of AR Cloud Release 1.13.22, we’ve added the ability to merge multiple maps (map merge) in the same space resulting in better maps and support for bigger maps. We’ve also added a Download Map progress indicator to improve user experience, and enhanced events filtering.

Release Highlights

API Updates

  • Added MLNativeBindings.MLUnitySdkGetMinApiLevel() method which reports the minimum Magic Leap API level supported by the package. (Unity)
  • Added new MLCameraBase class to the MLCamera API which can be used to make camera API calls synchronously. (Unity)
  • Added new public OnReceivedSamples callback to the MLAudioInput API. (Unity)
  • Added WinkLeft and WinkRight values to the MLGazeRecognition.Behavior enum. (Unity)
  • Added Controller.State struct to the Input subsystem get state info of the controller, such as handedness. Use InputSubsystem.Extensions.Controller.GetState() to query the current state. (Unity)
  • Added Reset() method to the MLMediaPlayerBehavior script. (Unity)
  • ML Voice API is extended to support voice intent slots. (C)
  • ML Gaze Recognition API is extended to support left and right eye blink behaviors. (C)

Systems & Performance

  • Added suite of automated API marshaling tests in Test Runner.
  • New Systems Notification Manager API to enable and disable system notifications. (This API is only supported for select device SKUs.)
  • Enabled a way to determine device SKU type by using standard Android PackManager hasSystemFeature() API.

February 2023 Package Version Guide

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

  • Magic Leap OS - 1.2.0-dev1 [B3E.230202.11-R.036_37]
  • Unity SDK -1.4.0
  • C SDK - 1.2.0-dev1
  • MRTK - 1.4.0 Version 1.0
  • OpenXR - 1.2.0-dev1

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.

That’s it for this month’s release. Now a question for you: What main feature are you most looking for in our upcoming releases? Be sure to weigh in on the comments below.


Kevin Downey
Ecosystem Services

1 Like