如何为Hololens开发3D应用程序?

HoloLens应用程序只是利用Windows全息API或OpenXR API的Windows应用程序。这些API使开发人员能够将全息图放置在现实世界中,使用凝视、手势、语音与全息图进行交互,以及访问空间功能(例如空间映射和空间声音)。

如何为Hololens开发3D应用程序?

开发人员在为 HoloLens 编码过程中面临的一个主要缺点是在可用平台上操作所需的陡峭学习曲线,为 HoloLens 开发的几个选项我们已根据您的开发人员类型进行分类:

选项 1:最适合 C++ 开发人员

就性能而言,编写 3D Hololens 应用程序的最佳选择是在 Visual C++ 中使用 DirectX。显然,DirectX 开发非常强大,因为它可以让您直接访问 API,但使用它编写代码也更加困难,尤其是当您必须编写自己的引擎时。这种开发堆栈始终可以实现更快的性能,但代价是开发时间。C++/DirectX 具有最少的层/框架,从而可实现更好的性能。另一个缺点是,很少有 HoloLens 开发人员使用 DirectX 为 HoloLens 进行开发,因此缺乏社区支持。

选项 2:最适合游戏开发者

对于游戏开发者来说,他们目前有两个选择,可以使用游戏平台为 HoloLens 进行开发:Unity 或 Unreal Engine。Unity 引擎是 Microsoft 推荐的引擎,背后有一个很棒的社区,您总能找到一些帮助,它是目前的首选平台,特别是如果您想为 HoloLens 开发游戏。

不擅长游戏开发的开发人员需要学习新的环境并熟悉其游戏引擎的技术性,这通常会给其他开发人员带来陡峭的学习曲线。另一个缺点是 Unity 没有自己的 IDE,因此您需要使用 Visual Studio 来编写和编辑代码,并且您必须在两个环境之间来回切换,从而导致较长的开发迭代时间。还需要 Visual Studio 在 HoloLens 上部署和调试代码,这使得开发/部署/调试周期更加缓慢。

选项 3:最适合 Web 开发人员

Web 开发者是一个庞大的开发者社区,但是他们尚未开始为 HoloLens 进行开发。他们之所以没有开发,是因为为他们创建应用程序非常困难,而且这需要一套大多数 Web 开发者都不熟悉的特殊技能。

例如,Web 开发者习惯于更新他们的 Web 应用程序并刷新浏览器来查看结果。builddwagon 在线平台使开发者能够使用现有的熟悉的 Web 技术来创建简单轻量的 HoloLens 体验。该平台提供了在极短时间内编码、演示、查看和测试的基本工具。该平台的开发语言是 JavaScript,它使用其 HoloBuild 库通过内置组件来加快开发过程。

当开发人员达到满意的结果时,他们的作品可以被标记、打包并作为应用包发布在 Microsoft 应用商店中。

选项 4:最适合 Windows 开发人员

Windows 开发人员现在可以使用 3D 游戏引擎 UrhoSharp 为 HoloLens 开发全息体验。UrhoSharp 是适用于 Xamarin 和 .NET 的跨平台高级 3D 和 2D 引擎,可用于使用几何图形、材质、灯光和相机为您的应用程序创建动画 3D 和 2D 场景。