You know about virtual reality, right? This term is familiar to practically everyone, and most people have an inkling of what augmented reality is, too. But what about mixed reality? This topic is more obscure and unknown to all but the most fervent tech hobbyists, along with associated names like Hololens and Vuforia.
Developing Vuforia apps for Hololens may not be the most popular and established practice in the world of software development, but it has enormous potential. Program-Ace is one of the few companies that build Vuforia Hololens apps, and we are here to answer all of your questions about it on the basis of our experience.
Looking for qualified AR developers?
What are Hololens and Vuforia Used For?
Hololens (HL) is the name of a mixed reality (MR) headset series produced by Microsoft. The first model was released in 2016, while its successor (Hololens 2) came out in 2019 with a slew of improvements and new features. The technology at the forefront of this product is mixed reality, which can be described as an amalgamation of digital elements with the visible world. For example, a user wears an MR headset, seeing the real outside world through the lens, but certain still objects become animated and dynamic to the viewer. MR devices have a wide range of uses that start with entertainment and extend to professional use by enterprises (training, problem-solving, presentations, etc).
Vuforia (VF) is the name used for a variety of programs used for augmented reality software development. It is consistently referred to as one of the best AR SDKs available today. As an engine, Vuforia is extremely powerful, harnessing the power of machine learning and offers various unique features like shifting perspective and markerless images.
At this point, you might be wondering what an AR-focused SDK and an MR headset have in common, and the answer is a bit complicated. The truth is, the difference between AR and MR is not that big, as both technologies visualize digital elements among real-life surroundings, but do it in different ways. Thus, Vuforia works as a supplement to mixed reality software, adding its unique AR features and convenient instruments from its engine.
Why do You Choose Vuforia for Hololens Development?
Of the many programs available for building HL applications, Vuforia is favored by our team, and we have accumulated substantial experience in working with it. Here are some of the factors that went into our support for this option:
- Vuforia + Unity beat competitors in many aspects
- Staffing convenience
- Unique features
- Easy learning
It is only possible to use Vuforia for MR development when this software is used jointly with Unity, a very popular game engine. When used together, VF + Unity are a powerhouse, beating most other competitors (like MRTK, WebXR, and DirectX) in the MR software scene. Unity integration allows us to easily build cross-platform solutions for several different MR devices in addition to more common platforms like mobile and desktop. Even the maker of HL (Microsoft) admits that using Unity is the fastest approach to building apps of this kind. Thus, it is a fortunate happening that VF was paired with Unity and no other platform.
Unity claims that their software is used to create over 60% of all AR/VR content, and we presume the MR market share is somewhat similar. As you can imagine, this corresponds to thousands upon thousands of developers. Thus, it is pretty easy to find Unity programmers nowadays and instruct them to build an MR experience with VF extensions. This is certainly true for Program-Ace, which hosts one of the largest teams of Unity developers in Eastern Europe. Given our Unity developers’ quantity and experience with VF, it is a no-brainer to assign relevant MR projects to them.
While a lot has been said about Unity’s strengths, VF brings plenty of great things to the table as well. For example, it has an advanced visual recognition system allowing apps to quickly determine what objects are and connect them to AR experiences. This feature is known as VuMarks. It works especially well with objects that have embedded CAD data, such as equipment and machinery.
Another cool feature of the software is Extended Tracking. When used in apps, users can focus on a recognizable object with their device, move so that the object is out of their field of view, and return to the same initial view without the object ever losing its visualization or the visualization being disrupted.
Every company involved in this HL development process (Microsoft, Unity, PTC) has made a real effort to make it as clear and accessible to programmers as possible, and the effort has paid off. Thus, our specialists have a wide range of documentation to refer to when we come across new and unexpected challenges during development. For example, PTC has an excellent overview of how their engine works on HL, Microsoft masterfully covers the package installation and configuration process, while the Unity Asset Store hosts the relevant download package with its full description.
How Do You Build Hololens Apps with This Software?
We take great care to follow the best industry practices when creating apps of this kind. This includes using verified and licensed programs, the latest and most stable builds, and time-tested approaches to coding and design. Overall, you can expect the process to go like this:
Stage 1 – Preparation
Every project begins with an idea, and the same holds true for Hololens projects. Thus, after we discuss the client’s vision for the project, its specification, and agree on a development plan, we can proceed with the technical work. At this point, we create a new project in Unity and make sure that the relevant software is available on all devices that will be used for development. For example, new computers will need to have Unity installed, along with the Vuforia AR Starter Kit. After installation, Vuforia can be enabled in the Configuration – Inspector menu of the engine, where a valid license key must be inputted.
Stage 2 – Configuring the software
After the downloads, installation, and activation, there are still certain settings that should be configured before active development can begin. For example, the same Configuration menu allows you to select the type of eyewear that the app will be made for, so the “Optical See-Through” option should be chosen to ensure HL compatibility. The “See Through Config” setting just below the previous one allows you to choose Hololens, concluding the configuration stage.
Stage 3 – Creating object databases and importing data
In order for headsets to show various objects and effects in motion, it will be necessary to “teach” your app to recognize various objects and settings. This is mostly done by creating object databases. We access our Developer Portal account in the VF website, upload an image with needed Target Type and Width parameters, and generate a database package suited for Unity. Then, we make some final adjustments to the project camera (Clear Flags, Background, Field of View, Prefabs), and finally import the previously-generated database.
Stage 4 – Adding Holographic effects
The previous stages make it possible for HL devices to recognize objects of your choice, but we normally still want to animate them and add Holographic effects. Thus, our specialists access the “ImageTarget” prefab and select the behaviors that we would like applied to the object, such as extended tracking. As for custom effects, they will require configuration of textures and additional prefabs. Prefabs can be downloaded from the Unity asset store or built with scripts. Our specialists are capable of designing custom effects, so you will not need to rely on pre-built effects if you want to achieve truly unique visuals. After that, it’s just a matter of testing and deploying the software on a headset.
What Do Your Vuforia Hololens Applications Look Like?
Speaking about our past experience with VF + HL applications, one example that we can bring up is our non-commercial application ARchy the Rabbit. This is a multi-platform solution accessible on both mobile devices and Hololens. It features a cute animated 3D rabbit which is visualized in the user’s field of view (whether they are at home, on the street, or in another setting). Various interactive options are available to the user to make the rabbit wave, jump, wink, and perform other actions. Obviously, the application has limited practical purpose, but it is only meant to showcase our capabilities in the field of AR/MR. The project involved a small team of developers, artists, animators, and QA specialists, and programs like Vuforia, Visual Studio, Maya, and OpenCV.
Can I order development services for Hololens?
You are free to order development services from Program-Ace or any other vendor capable of this kind of MR development. Our company has a decades-long history of software design, and dozens of projects based in XR (VR/AR/MR), so we can confidently accept projects of high difficulty and broad scope.
We find Hololens (1/2) projects particularly exciting, and are eager to work on more projects of this nature. If you have an idea in mind and would like to know more about our various services, we are more than ready to discuss them with you. Just contact us when you’re ready and we can get started.