The 7 Best SDKs for Enterprise VR Developers

VR is showing more and more enterprise applications. And with an increasing number of tools available for developers, it can be hard to sort through them all. We look at the most popular options for enterprise developers looking to create VR content.
  • From virtual prototyping, to design collaboration, training, and beyond, virtual reality is poised to take its place in enterprise applications. According to the Worldwide Quarterly Augmented and Virtual Reality Headset Tracker report, which was released in June by the International Data Corporation (IDC), worldwide shipments of augmented reality (AR) and virtual reality (VR) headsets were down 30.5% year over year, totaling 1.2 million units in the first quarter of 2018. However, IDC anticipates growth through the remainder of the year, driven by low-cost standalone VR headsets and more vendors entering the commercial and enterprise VR market.

    IDC forecasts global sales of VR headsets headsets to grow from 8.1 million in 2018 to 39.2 million by the end of 2022. Within this, the commercial market is predicted to grow from 24% of VR headset shipments in 2018 to 44.6% by 2022. A May 2018 report released by Tractica, “Virtual Reality for Enterprise and Industrial Markets,” predicts that the worldwide market value for enterprise VR hardware and software will increase from $1.0 billion in 2018 to $12.6 billion annually by 2025. The primary drivers will be applications in training, simulation, medical therapy, education, and location-based entertainment.

    As new hardware products enter the market and existing ones are increasingly leveraged for the enterprise, VR OEMs and third parties alike are rolling out development tools, software development kits (SDKs), and application programming interfaces (APIs). Their goal is to provide engineers and designers with the resources they need to develop their own VR experiences and content as well as hardware. While some options are restricted to specific hardware, others offer support for multiple devices. There are even some open-source options.

    Here's a breakdown of seven of the most popular options for enterprise developers looking to create VR content.

  • ARM Mali VR SDK

    Chipmaker ARM doesn't have the foothold that Qualcomm does in the VR space. But it does offer an Android-based SDK for devices that leverages its Mali GPUs, which the company says are optimized for delivering graphics for mobile VR. ARM's Mali OpenGL ES SDK is a collection of resources for engineers building VR applications for devices with a Mali GPU and an ARM processor. Android devices, such as the Samsung Galaxy A7 and Huawei P10, use the Mali GPU. So development with this SDK would likely focus on mobile smartphone experiences along the lines of those offered by smartphone-based headsets like the Samsung Gear VR (shown above) and Google Daydream View.

    Given the restrictions, developers may opt for other options. But the Mali VR SDK could be good for those developing proprietary, in-house enterprise experiences, who want to keep things focused on a specific set of hardware options. ARM is a major player in the chip market, so it is worth keeping an eye out in case the company is able to expand its foothold further into mobile VR with standalone headsets.

    (Image source: Samsung)

  • Google Daydream SDK

    Google's Daydream View headsets (shown above) are a competitor to Samsung's Gear VR and other smartphone-based VR headsets. Daydream-compatible phones include the Google Pixel, Samsung's Galaxy S9, the Moto Z, and the LG V30. Someone so inclined could also develop for Google Cardboard—the Hyundai of mobile VR options.

    The Google Daydream SDK supports Unity and Unreal, the go-to graphics engines for creating VR content. It can support development for Android, Android NDK, and even iOS. The collection of SDKs provides APIs for all of the expected features for VR developers including input, controller support, and graphics rendering.

    What should excite mobile VR developers about Google's Daydream SDK, however, is that Google has opened up Daydream for standalone VR as well. Using a technology Google calls WorldSense, standalone Daydream headsets are able to offer six-degrees-of-freedom (6DoF) head and controller tracking as well as inside-out tracking. In other words, wearers can move freely about their environments without the need of a PC or external sensors. The first of these Daydream headsets, the Lenovo Mirage Solo, was released earlier this year.

    (Image source: Google)

  • Nvidia VRWorks

    GPU company Nvidia's VRWorks is a suite of APIs, libraries, and tools for software engineers as well as VR hardware and headset developers. Graphics are Nvidia's core business, and the company touts VRWorks for its visual quality and fidelity. The company has also been very invested in leveraging VR for enterprise applications in recent years, with projects such as its Holodeck virtual collaborative environment for designers and engineers.

    VRWorks supports Unreal and Unity and several SDKs geared toward visual performance, such as creating content for VR CAVES (room-scale VR projections), immersive displays, cluster solutions, and 360-degree video (shown above).

    (Image source: Nvidia)

  • Oculus SDK / Oculus Mobile SDK

    Facebook's Oculus offers two SDKs for developers looking to create content for its headset products: one for its PC-based Oculus Rift and a mobile SDK for the Samsung Gear VR headset and the recently released Oculus Go standalone headset (shown above).

    The Oculus PC SDK is based in C++ (which is either a pro or con, depending on how you feel about coding in C++). It comes packed with development tools for creating spatialized audio (meaning audio in VR will come from the actual direction of the sound source), a “Platform SDK” targeted at creating social experiences along the lines of what Facebook is envisioning for VR going forward, and an “Avatar SDK” for creating avatars to give users a stronger sense of presence in VR. For those less experienced in C++, the Oculus SDK is also compatible with the Unity and Unreal engines.

    The Oculus Mobile SDK is an Android-based collection of libraries, tools, and resources for developing on Oculus' mobile products. It includes an API for integrating third-party engines (if you prefer something besides Unity or Unreal). The Oculus Go is Facebook's entry into an emerging market segment of standalone mobile VR headsets that don't require a smartphone to be inserted in them to operate. However, the Oculus Go does not offer inside-out tracking or 6DoF. Developers who are looking to create enterprise experiences that may require users to do more than sit in a stationary space and move their heads should be aware of this limitation.

    (Image source: Oculus)

  • OpenVR SDK

    Open-source development is happening everywhere, and VR is no exception. Open Source Virtual Reality (OSVR) is a software project that wants to free VR development from its hardware and software constraints and allow developers to create completely hardware-agnostic VR content. (Nvidia is among OSVR's partners.) On the software front, the open source VR landscape offers OpenVR, an SDK and API developed by video game company Valve for supporting its own SteamVR runtime for the HTC Vive headset. OpenVR's API is based in C++, but plugins allow for the integration of Unity and Unreal.

    Enterprise developers should take note, however, that Steam—the marketplace for distributing SteamVR content—is known primarily for gaming. So it may be difficult to distribute an enterprise application this way.

    On the hardware end, OSVR has partnered with Maryland-based Sensics, a manufacturer of consumer, professional, and military-grade VR headsets, to release a “hacker development kit” (HDK). According to OSVR, the HDK is an open headset (though full hardware schematics and firmware source files have not been released yet). It will give developers access to OSVR's open-source ecosystem of VR hardware and software. The latest version, the HDK 2 (shown above), features a 2160 x 1200-pixel dual-display technology (1080 x 1200 pixels per eye) running at 90 frames per second. Right now, the HDK is a tethered PC-based headset along the lines of the Oculus Rift and HTC. So unless a mobile version is released, this may not be an attractive option for mobile developers or those looking toward creating experience for next-generation hardware with inside-out tracking and 6DoF.

    However, for enterprise developers that find open source a more attractive option, OpenVR represents one of the most popular options right now outside of Vive's Open Wave SDK.

    (Image source: OSVR)

  • Qualcomm Snapdragon VR SDK

    Qualcomm has been looking to position itself as the go-to company for VR processors. Versions of Qualcomm's Snapdragon processors are under the hood of many of the most popular standalone VR headsets on the market including the Oculus Go, Lenovo Mirage Solo, and HTV Vive Focus. The company also offers a hardware development platform, the Snapdragon VR Development Kit (shown above), for engineers looking to design their own VR headsets.

    The Snapdragon VR SDK is targeted at developers looking to create VR content on any Snapdragon VR device and also pairs with the VR Development Kit. According to Qualcomm, the SDK offers support for several newer VR technologies, such as digital signal processor sensor fusion (for features like 6DoF tracking), visual latency reduction, 3D binocular vision with color correction and barrel distortion for more realistic graphics, and power management features.

    (Image source: Qualcomm)

  • Vive Wave and SRWorks SDKs

    HTC offers an entire ecosystem for developers looking to create VR content around its Vive brand products. The company recently released the HTC Vive Pro (shown above), with a heavy emphasis on attracting enterprise VR users and developers. It also has a standalone, 6DoF headset: the Vive Focus currently available in China. (HTC says the Vive Focus will be coming to the US and UK sometime in 2018.) Vive also offers peripheral hardware, such as the Vive Tracker, that attaches to third-party hardware like controllers, tools, and cameras, allowing them to be brought into VR experiences as well.

    Given these options, the Vive Wave SDK and Vive SRWorks should present attractive options to mobile VR and PC VR developers, respectively. VIVE Wave is an Android-based open platform and toolset (a version that supports Unity is also available) for mobile VR development. It enables interoperability between different headsets and VR-ready smartphones.

    The Vive SRWorks SDK, which is currently in early access, is aimed at developers looking to leverage the HTV Vive Pro, which boasts several enterprise-friendly features. The Pro features stereo front-facing cameras that will allow developers to also create mixed reality experiences (blending interactive virtual objects with the real world). Featuring stereo RGB sensors for 3D perception and depth sensing, the Vive Pro also allows for more immersive and interactive VR environments. SRWorks will work in conjunction with the aforementioned OpenVR SDK and offers support for Unity and Unreal via plugins.

    (Image source: HTC)



ESC, Embedded Systems ConferenceToday's Insights. Tomorrow's Technologies .
ESC returns to Minneapolis, Oct. 31-Nov. 1, 2018, with a fresh, in-depth,  two-day educational program  designed specifically for the needs of today's embedded systems professionals. With four comprehensive tracks, new technical tutorials, and a host of top engineering talent on stage, you'll get the specialized training you need to create competitive embedded products. Get hands-on in the classroom and speak directly to the engineers and developers who can help you work faster, cheaper, and smarter.  Click here to submit your registration inquiry today!

Chris Wiltz is a senior editor at  Design News  covering emerging technologies, including VR/AR, AI, and robotics.

Comments (0)

Please log in or to post comments.
  • Oldest First
  • Newest First
Loading Comments...