These release notes are specific to the Unity component of Meta 2 SDK.

See here for general release notes, including many improvements which also apply to the Unity SDK.

Improvements

  • Restored the point cloud API. You can once again access the point cloud as reported by the Meta 2’s depth sensor. See here for details.
  • Hands
    • The Hand GameObjects under the MetaHands prefab are now always present in the scene. They are active when the corresponding hand is visible to our Hands system, and become inactive when your hand leaves the depth sensor’s field of view. This makes it much easier to reference each Hand via the Unity inspector or C#. Don’t forget to check the Hand’s activeSelf property to see if the user’s corresponding hand is being tracked.
    • Improved collision detection between hands and interactive objects. The length of the hand collider can now be tweaked using the ProjectionDistance field on the CenterHandFeature component of the hand GameObject.
    • Added option to two-handed scaling which allows the scale factor to be exponential rather than linear. This is off by default, but we recommend trying it to see if it feels more natural for the interactions you’re designing.
  • Virtual Webcam
    • The Virtual Webcam is enabled by default on the MetaCameraRig. To disable it, use the checkbox on the MetaCameraRig GameObject rather than disabling the child GameObject called VirtualWebcam.
    • When enabled on the MetaCameraRig, the Virtual Webcam now appears in a separate window. The normal Unity 2D window is also visible. In Meta applications, this 2D window is used to show helpful information such as keyboard shortcuts. In Unity applications using the MetaCameraRig, by default, this simply shows the Meta logo and points users to the webcam window if that feature is enabled.
    • To add your own content to the 2D window, you can modify the MetaLogoCanvas prefab, or you can alter your scene to include content which renders on top of the MetaLogoCanvas. We hope to support this use case more thoroughly in the future, so please note that you may need to rework this part of your scene when upgrading to a future SDK release.
    • In order for Unity to detect keyboard and mouse input through the standard Unity input system, the Unity window must retain focus in Windows’ window manager. In other words, keyboard shortcuts and mouse control – that which is provided in this SDK and any you add – will only work when the Unity window has focus. They will have no effect when the webcam window has focus. We hope to improve this in the future.
  • Project settings window
    • When importing the Meta Unity package into a project, you will be greeted by a project settings window. This window shows you the recommended Unity project settings and allows you to update your project’s settings to match. We recommend accepting all settings changes unless you have a specific reason not to.
    • Should you wish to revisit these options, this window can be summoned from the Meta menu which has been added to Unity’s file menus.
  • Improved APIs which expose transforms between the coordinate space of the Meta 2, its sensors, and world space. See here for details.
  • Improved hand cursor idle state to more clearly communicate when your hand is near an interactive object versus when a grab would allow you to pick up an interactive object.
  • The Meta Mouse is now disabled by default both within the Unity Editor and within application builds. You can use the existing checkbox if you want it to be on by default. The F8 key still toggles it on and off.
  • Example scenes
    • Rebuilt Reconstruction example scene. It now shows you how to create RigidBody physics GameObjects that collide with the mesh generated by surface reconstruction!
    • Added a small set of swipe interaction widgets. Try them out in the new SwipeInteractions scene! In that scene, you can rotate an object on two axes precisely with just one hand, and you can also adjust a slider with your fingertip. We hope these are the first of many proof-of-concept AR UI widgets, and we appreciate your feedback as we continue to develop more.
    • Restored TurnTable example scene and fixed a bug in TurnTableInteraction script. Try it out and don’t forget to play with the damping options!

Fixed Bugs

  • Hands
    • Fixed offset issue when transitioning between two-handed and one-handed grab interactions.
    • RigidBody settings, including isKinematic state and constraints, are now correctly restored after the relevant GameObject is released from a GrabInteraction.
    • Reduced occurrence of accidental re-grabs.
    • Fixed TwoHandScaleInteraction. Try it out in the HandCubeInteractionScale example scene.
    • The TargetTransform option on interaction script components now works as intended.
    • Disabled interaction behaviors no longer fire interaction events.
    • HandTrigger events now only fire when the HandTrigger script component is enabled. To override this setting and make HandTrigger work more like Unity’s physics events – which fire regardless of whether the corresponding component is active – see the new checkbox on the HandTrigger component.
    • Disabled HandFeatures no longer generate HandTrigger events.
  • The MetaButtonsController component has been fixed and the screenshot functionality can now be easily added to your scenes. See the MetaButtons example scene to see how.

Known Issues

  • Rarely, you may see a Unity error message relating to not finding the Meta Core API DLL. Restarting Unity resolves this issue.
  • On rare occasions, you may encounter an error related to setting clipping planes. This error message will appear when the Compositor is unable to start. Typically, this occurs because the Meta 2 is not connected. If your Meta 2 is indeed connected, we recommend simply restarting Unity. If this does not resolve the issue, run the diagnostics application, and if necessary, unplug and replug your Meta 2.
  • Black squares in the Virtual Webcam around particles. The compositing for the Virtual Webcam has been moved to the Compositor. See the Virtual Webcam documentation for more information.