microsoft / MixedReality-WorldLockingTools-Unity

Unity tools to provide a stable coordinate system anchored to the physical world.
https://microsoft.github.io/MixedReality-WorldLockingTools-Unity/README.html
MIT License
188 stars 45 forks source link

title: Welcome! description: Welcome landing page for World Locking Tools for Unity. author: fast-slow-still ms.author: mafinc ms.prod: mixed-reality ms.date: 10/06/2021 ms.localizationpriority: high keywords: Unity, HoloLens, HoloLens 2, Augmented Reality, Mixed Reality, ARCore, ARKit, development, MRTK

Welcome!

World Locking Tools for Unity provides a stable and reliable world-locked coordinate system, binding the virtual/holographic world to the physical world.

World Locking Tools take the burden of world-locking holograms off of the developer, as well as enabling scenarios that were previously unreachable. It currently supports the HoloLens family of devices via Unity's built-in VR support. Initial support for other platforms via Unity's new XR SDK plugin system is also available.

World Locking Tools locks the entire holograph space of your application to the physical world. A hologram put in position relative to physical world features will stay fixed relative to those features, as well as remaining fixed relative to other holograms.

World Locking Tools scale naturally with both the complexity and size of the scene. Large models, large collections of models, and multi-room environments are all handled gracefully.

Published documentation

For the most up-to-date documentation, see the World Locking Tools for Unity documentation portal.

Getting started

Dive into the full documentation, beginning with the organization of the documentation itself, from the Guides section.

Or a quick overview of key concepts behind World Locking Tools is contained in this FAQ.

Or skip straight into introduction of key concepts, leading to further details of concepts and solutions, beginning in the Concepts section.

A number of samples are contained in a sibling repo, World Locking Tools Samples. Be sure to have a look there for an instructive example. And if you don't find what you are looking for there, you are encouraged to submit a suggestion or even your own sample.

Easy and efficient

World Locking Tools is both powerful and easy to use. Furthermore, it strives to supply only as much as a specific application requires. Any World Locking Tools feature not required by an application will incur no cost in resources or performance.

See also

These ideas are further explored in the conceptual guide. To complement the theoretical description, pragmatic samples are provided, along with how-to articles to walk through the steps involved in building applications using the World Locking Tools' stable and reliable coordinate system.

Further, reference materials for interfacing through script with World Locking Tools is included in the API Documentation.

Build Status

Branch CI Status Docs Status
master CI Status Docs Status

Useful resources on Microsoft Windows Dev Center

Academy Academy Design Design Development Development Community) Community
See code examples. Do a coding tutorial. Watch guest lectures. Get design guides. Build user interface. Learn interactions and input. Get development guides. Learn the technology. Understand the science. Join open source projects. Ask questions on forums. Attend events and meetups.

How to Contribute

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

View the How To Contribute page for the most up to date instructions on contributing to World Locking Tools for Unity.

Microsoft Open Source Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct.

Resources: