module

core_asset, unity, module

Unity Modules 4.9

Release Notes for Unity Modules 4.9.1

Notable changes:

  • Version 4.9.1 of the Unity Modules is only intended to be used with Version 5.2 of the tracking service (or more recent releases), it is not backwards compatible with previous service releases. For details about service compatibility with Unity Modules and how to upgrade projects, consult the Migration Guide.

  • 32-bit support has been dropped as it is no longer supported by the V5.2 tracking service

  • To use V5.2 you must upgrade your project to this version of the Unity modules.

  • The documentation and API reference has been upgraded for branding and to reflect changes to the modules.

  • A new tracking mode setting has been added to the LeapServiceProvider to disable setting a tracking mode on start. If set, the (current) service tracking mode is left unchanged by the application when it connects to the service.

  • The scripts have been changed to switch to using the Unity pose class, retiring the Leap pose class. A number of extension methods have been added to the Unity pose class to create a similar public API to the retired class.

Bug fixes:

  • The version number in Core (Version.txt) has been updated to the correct version.

  • Some deprecated Unity enumeration values have been removed from the scripts.

  • Minor changes have been made to improve Unity 2020 support. However, Unity 2020 is not officially supported by this release.

  • Smaller editor window size for hands module

  • Fixed memory leak with MemoryManager using V5.2 tracking service where MemoryManager was hanging onto (image) buffers even when pooling was off.

  • Turned on memory pooling in MemoryManager to reduce memory churn in apps with image streaming enabled (with V5.2 tracking service).

  • Switched image buffers in memory manager to use a ConcurrentDictionary to prevent corruption in scenes with multiple LeapServiceProviders with V5.2 tracking service.

Known Issues:

  • A set of ghost / floating hands is sometimes seen on scene startup. They may appear for a for a small interval <2s before correct tracking starts. This is not seen consistently and has been observed behaviour with previous releases.

  • The infrared viewer shader does not render correctly in both eyes with headsets / plugins that do not support multi pass rendering - e.g. Windows Mixed Reality.

  • Infrared Viewer scenes sometimes display the image upside down, this is only an issue during the editor and will not exist in builds.

  • Some of the interaction engine demo scenes (with interactable objects - e.g. interaction objects) do not initialise the player position at the correct height (e.g. for a seated user). The position of the camera has to be adjusted in the scene view or adjusted on the scene components (the XRHeightOffset script). The magnitude of the height adjustment seems to vary depending on the headset. Behaviour is better for a standing experience. This is mainly seen when using the new Unity XR Plugin system - e.g. with Unity 2019.4. This is not officially supported by this release.

Thanks to our contributors:
@MaxPalmer-UH / @DrMaxP
@nickjbenson
@zalo
@ElliotPadfieldUL
@TheMunro
@Craig-J
@lazloringUH
@StephenHodgson
@fmaurer
@julienkay

core_asset, unity, module

Unity Modules 4.8

Changelog

This release is for 2019 LTS

Major upgrade to Hands Module

  • New process for Automatically binding a rigged hand to leap data

  • New process for Manually binding a rigged hand to leap data

  • Optionally add positional and rotational offsets to any connected leap data point

  • RiggedHand.cs will be removed in a future release as its functionality is now covered by the hands module.

Thanks to our contributors:
@zalo
@TheMunro
@MaxPalmer-UH / @DrMaxP
@MattGrayUL
@KarenEnglish
@ElliotPadfieldUL

core_asset, unity, module

Unity Modules 4.7.1

Changelog

This release is compatible with 2019.1 and above.

Since UnityModules 4.6.0, this release:

  • Updates the LeapC.dll's
  • Adds Support for new "ScreenTop" Tracking Mode; Compatible with 4.9+ Services
  • Consolidates editor scripts and add an .asmdef to remove the errors/warnings related to SpatialTracking.
  • Adds backwards compatibility back to 2017.4
  • Adds a convenience function for the Projected Hand Ray Direction
  • Optimizes the rendering performance of Capsule Hands with Instancing
  • Adds Advanced Mode Menus to the LeapServiceProviders to tidy up their Inspector
  • Adds Server Namespaces (INTERNAL ONLY)

Thanks to our contributors,
@Niram7777
@MaxPalmer-UH / @DrMaxP
@nickjbenson
@zalo

core_asset, unity, module

Unity Modules 4.7.0

Changelog

This is the 2018.4 Compatibility Release.

  • Updates the LeapC.dll's
  • Adds Support for new "ScreenTop" Tracking Mode; Compatible with 4.9+ Services
  • Consolidates editor scripts and adds an .asmdef to remove the errors/warnings related to SpatialTracking
  • Adds backwards compatibility back to 2017.4
  • Adds a convenience function for the Projected Hand Ray Direction
  • Optimizes the rendering performance of Capsule Hands with Instancing
  • Adds Advanced Mode Menus to the LeapServiceProviders to tidy up their Inspector
  • Adds Server Namespaces (INTERNAL ONLY)
  • Reserializes Scenes for Unity 2018.4 LTS

Thanks to our contributors,
@Niram7777
@MaxPalmer-UH / @DrMaxP
@nickjbenson
@zalo

core_asset, unity, module

Unity Modules 4.6.0

Changelog

  • Updates the LeapC.dll's for the impending Orion 4.1.0 Release
  • Adds a new Visualization Gizmo for the StereoIR 170 Module
  • Improves the reporting of Device Statuses through the API
  • Promotes InteractionEngineUtility to C# Scripts for IL2CPP Compilation (see #1118 )
  • Builds the Doxygen Documentation via a Github Action
  • Moves the Graphic Renderer Module to the Legacy folder to reflect its status
  • Adds the XRPinchLocomotion Example Script
  • Modifies Projection Hand Example for best practices

Thanks to our contributors,
@lazloringUH
@MaxPalmer-UH
@nickjbenson
@zalo

core_asset, unity, module

Unity Modules 4.5.1

Unity 2020 Support

This release of UnityModules adds support for Unity 2020.1!

Changelog

  • Add support for Unity 2020.1

Note for 2020.1 users:
If you get errors related to "SpatialTracking" upon importing the Core module, you need to install the Oculus XR package, which adds the necessary XR dependency.

Only the Core and Graphic Renderer packages have been modified from 4.5.0. For completeness' sake, all of the main modules are included in this release.

Community contributions

  • Added the LeapCSharp assembly definition file! - @StephenHodgson

    Thank you for your contribution!

With love from the UnityModules team,
@nickjbenson and @jselstad

core_asset, unity, module

Unity Modules 4.5.0

We're changing to a unified release model

This release reflects a slight deviation from how we've done UnityModules releases in the past. To make it easier to get releases out the door, we're unifying the versioning system around the "Core Asset" release, and combining modules together into a single release version. Individual module packages are still available, but this path is essentially a roundabout way to copy files into your project, which you can do straight from the repo, now considered the central source of truth on master.

Changelog

  • Moves the LeapMotion folder from Assets to Assets/Plugins. This shortens project build times.
  • Upgrades the default Unity version to 2019.2.
  • Aims to support Unity 2017.1 through 2019.3. Please submit a ticket if you experience issues using UnityModules with any Unity versions beyond 2017.1.
  • Fixes an issue that prevented hands from rendering when using Scriptable Render Pipeline projects.
  • Adds a desktop-mode IE example scene.

Hotfixes (2020-05-01):

  • Fixes compilation errors in 2018.4.
  • Note that the SRP is Experimental in 2018.4 and lacks the correct callbacks to support hand timewarping. As a consequence, hand rendering is not compatible with the SRP in 2018.4.
  • Fixes compilation warnings in 2019.3.

Community contributions

  • Adds a configuration option to IE two-handed grasps. - @DerSticher
  • Adds an event on initial IE contact bone creation. - @SyDroX

    Thank you for your contributions!

With love from the UnityModules team, @nickjbenson and @jselstad

unity, module

Interaction Engine 1.2.0

Requires: Core Asset 4.4.0 & Leap Motion Orion 4.0.0

What's New:

General

  • Added the IgnoreCollidersForInteraction component, which causes a Collider to be ignored by the Interaction Engine. This is intended for trigger colliders that should be considered only for raycasting and not, e.g., for grasping or collision.

  • Removed the (unused and deprecated) RigidbodyWarper script.

  • VR controllers will now be detected at runtime in the IE example scenes that support them. (Previously, they had to be active and visible to Unity as soon as the application started running.) This functionality causes a minimal amount of garbage allocation every few seconds in those scenes, but did not have a noticeable impact on garbage collection times. You can disable this functionality by disabling "pollConnection" on the InteractionXRController script.

Grasping

  • Improved the ability to grasp small objects.

  • Improved the consistency of grasping an object that was held by the other hand.

  • Added OnGraspBegin, OnGraspStay, and OnGraspEnd callbacks to InteractionController.

UI

  • Modified the Basic UI example scene to demonstrate how a InteractionButton UI panel can be moved without causing the attached physical buttons to wobble.

Curved Space Support

  • Fixed a bug where Interaction Objects inherited LeapSpace components that were only used for an object's LeapGraphics. InteractionBehaviour now only considers any LeapSpaces -- such as LeapCylindricalSpace or LeapSphericalSpaces -- that are on or the parent of a Collider.

unity, module

Graphic Renderer 0.1.3

Requires: Core Asset 4.4.0 & Leap Motion 4.0.0

What's New:

  • If you are upgrading a project using the Graphic Renderer from 2017.3 to 2017.4, you may experience a crash when opening certain scenes. This is due to sprite library data incompatibility and can be resolved by deleting your Temp and Library folders and re-opening Unity.

  • Fixed an issue where graphics in Dynamic or Text groups would cause MissingReferenceExceptions when deleted. Note that you cannot delete (or add) graphics in Baked groups, although you can disable them.

  • Fixed an issue where tints and vertex colors were not correctly converted to linear space when the application was targeting linear space rendering.

  • Incremental bugfixes for stability.

unity, module

Hands Module 2.1.4

Requires Core Asset 4.4.0 & Leap Motion Orion 4.0.0

What's New:

  • Fixed an issue where RiggedHand would occasionally raise a LookRotation error.

  • Added an option for Rigged Hands to scale their last fingerbones, which allows rigged hands to achieve correct fingertip positions when tracked hands do not precisely match the scale of the model the hand was rigged on.

unity, module

Interaction Engine 1.1.1

Requires: Core Asset 4.3.4

What's New:

  • Updated to support Unity 2017.3
  • Added ability to force a controller to grasp an object
  • Fix a bug where the physics representation of the hands would explode sometimes when switching between curved spaces
  • Added the SwapGrasp function and a corresponding example scene, allowing you swap a grasped object with another object in the scene.
  • Correctly account for the Physics.autoSyncTransforms state during the Interaction Manager update.

unity, module

Graphic Renderer 0.1.2

Requires: Core Asset 4.3.4

What's New:

  • Updated to support Unity 2017.3
  • Allowed you to disable or enable a graphic without detaching or re-attaching the graphic.
  • Disabled graphics are no longer visible!
  • Disabling and Enabling graphics is now lightning fast!
  • Improved dirty detection to reduce rebuild situations
  • Fixed several edge cases

unity, module

Interaction Engine 1.1.0

Requires: Core Asset 4.3.0

What's New:

  • Pressing X on initial gravity and timestep warnings no longer dismisses the warnings forever.
  • Example 7 has been added, demonstrating how to set up a scene to support putting the player in a moving reference frame and still have user interfaces function properly.
  • SceneSettings have been removed from Example 2, preventing project settings from getting clobbered.
  • Sliders have had their inspectors organized more neatly.
  • Fixed an issue where, at low physics timesteps, buttons moved too slowly.
  • Interaction objects are no longer required to exist on the Interaction layer. Layers with interaction objects on them are tracked and still filtered for physics optimization.
  • Interaction buttons and sliders can now be constructed based upon where they relax to or where they depress to.
  • Added a warning when RigidRoundHand scripts are detected in the scene, as these scripts break proper physics functionality.
  • Fixed physical and visual instability when grasping buttons.
  • Fixed instability when grasping objects with centers of mass that are offset from the Rigidbody transform position.
  • Interaction Controllers now provide warnings in their inspectors if they are added to a scene but not beneath an InteractionManager.
  • Fixed exception when adding an InteractionBehaviour component at runtime
  • Fixed a bug with AnchorableBehaviours where inspector utility buttons were incorrectly grayed out when only a single object was selected.

unity, module

Graphic Renderer 0.1.1

Requires: Core Asset 4.3.0

What's New:

  • SetRuntimeTint now features a string-based overload taking in HTML color strings, allowing UnityEvents to target the method in the inspector.
  • Graphics now prefer the group they were originally added to, better supporting scenarios where graphics are enabled or disabled at runtime.
  • Fixed a bug where graphic settings were not duplicated properly when an entire Graphic Renderer was duplicated.
  • Fixed a bug where text glyphs were not being refreshed properly.
  • Added LeapBoxGraphic and LeapPanelOutlineGraphic alongside the LeapPanelGraphic as additional procedural mesh generators built-in to the Graphic Renderer.