概述
ApertusVR是一个开源、模块化、分布式的AR和VR库。它是采用C++编写的,它在普通或高级硬件规格上提供了良好的性能。它独立于平台,易于使用且易于配置。
ApertusVR为许多虚拟现实设备提供插件,例如HTC Vive、Oculus DK2和CAVE systems。ApertusVR支持AR和VR模块,支持多种VR边缘和控制设备。
ApertusVR 为不同操作系统和不同虚拟和增强现实硬件上的虚拟和增强现实提供全新的“无供应商锁定”方法。
这种更高的抽象级别使得业务逻辑只需实施一次,然后就可以在任何平台上运行。此外,这些不同的虚拟和增强现实硬件可以同时共享同一个虚拟现实场景。
ApertusVR 引擎仅包含库,以便轻松地将虚拟现实和增强现实技术集成到现有产品中。在工厂插件和示例的帮助下,ApertusVR 可以从头开始创建最小可行产品。
该引擎的内核非常圆滑,因此可以在任何设备(台式机、笔记本、平板电脑、手机,甚至树莓派)上运行。它由核心模块(共享库)组成,这些模块提供基本功能,如管理场景、网络同步、配置、事件、日志和插件处理。
该核心模块负责 ApertusVR 中的初始化过程。它启动所有核心模块,如 Scene、SystemConfig、EventManager 等。ApertusVR 可以从任何调用 System 的 Start() 方法的程序启动。
该模块加载ApeSystem.json ,其中包含核心模块的配置设置。 有关更多详细信息,请查看配置生态系统页面。
这是3D 场景元素(节点和实体)所在的数据库。它实现了基本的APE 类型,即。Node、Light、Camera等。它还负责参与者之间的网络同步。
EventManager 正在处理 ApertusVR 中的事件。事件可以是几何图形的创建或节点位置的更改。插件能够订阅这些事件。
Ape::Event 仅包含以下信息: - SubjectName (节点、实体等的唯一名称) -事件类型(NODE_CREATE、CAMERA_FRUSTUMOFFSET 等) -事件组(节点、几何体、灯光、相机等)
对于任何类型的应用程序,日志记录都是一项非常基本的功能。它提供日志记录级别,如info 、debug 、trace 、warning和error 。
Apertus 的插件由这个模块处理。它为每个插件创建一个新线程并处理它们的生命周期。