文章目录

  • OpenXR
    • OpenXR出现的背景
    • 标准化有何好处
    • Khronos 百度百科
      • Khronos相关标准
    • OpenXR概念
    • 行业行情
    • 总结

OpenXR

OpenXR ” 旨在标准化各种 VR / AR 平台上的设备和应用程序之间的规范。

它由 Khronos Group 制定,Khronos Group 是一个由 VR/AR 相关公司组成的组织,下面会进行详细介绍。
微软、HTC等多家公司都参与了,Valve(SteamVR)也在2021年2月支持。

OpenXR出现的背景

VR 和 AR 最近经历了热潮,随之而来的是大量硬件和软件公司开始在该领域展开努力。虽然种类繁多,但越来越多的设备(每个设备都有自己不兼容的 API)正在增加碎片化。

在进行VR开发的时候,开发者们要根据不同的VR设备厂商来使用不同的SDK进行应用开发。如果没有跨平台的标准,VR应用程序,游戏和引擎必须移植到每个供应商的API。这意味着每个VR设备只能运行已经移植到其SDK的应用程序,结果是高昂的开发成本和令人困惑的客户 限制了市场的增长。

API 碎片化导致应用程序开发人员不得不花费大量时间、金钱和资源与各种硬件集成。即使是大团队也被迫选择他们支持的平台和设备,而对于小团队来说问题更严重。

在硬件方面,公司必须说服应用程序开发商和游戏引擎供应商支持他们的新设备。这就提出了一个“先有鸡还是先有蛋”的问题:软件开发人员通常不愿意支持在市场上占有一席之地的硬件,而要达到如此大的占有率取决于获得与该硬件兼容的高质量内容和开发人员工具.

除了开发人员之外,API 碎片化给消费者带来了问题,他们需要检查自己喜欢的硬件是否与他们希望使用的应用程序兼容,并且不确定今天的软件是否与明天的硬件兼容。

因此,目前的情况看起来像这样,应用程序开发人员利用中间件,但仍然需要做大量工作才能将他们的内容带到多个平台。简而言之,碎片化减缓了 VR/AR 设备的采用,给开发人员带来了不必要的工作,并限制了新的和创新设备获得普及的能力。

OpenXR 是 Khronos公司 设定的VR行业标准,希望让所有的VR厂商们可以基于此标准进行应用开发等上层逻辑处理。
VRTK是基于最开始的Oculus、Vive等厂商做的一个开发套件,目的是让开发者们可以更方便快捷的进行应用开发(OpenXR行业标准出现之前)。
Khronos公司现在要做的是建立一个OpenXR行业标准,然后再使用新的套件进行通用的应用开发。

标准化有何好处

OpenXR 工作组相信我们可以通过标准化来帮助解决这些问题。标准将允许应用程序开发人员将更多时间花在创造令人惊叹的体验上,而将更少的时间花在让体验在无数硬件组合上发挥作用上。它还将使设备供应商能够在其平台上提供更多内容,并将使其投资面向未来。

OpenXR 标准分为两部分。首先是应用程序接口,应用程序开发人员和中间件提供者写入该接口,用于定义和组合通用的跨平台功能。这使应用程序开发人员能够编写一次可在任何地方运行的代码,专注于对其应用程序进行创新,并且不必为各种不同的设备支持多个接口。

接下来,设备层允许 VR/AR 运行时与各种设备进行交互。如果硬件制造商想要添加对新设备的支持,他们会实现符合设备层规范的代码,并且他们的硬件将立即与为应用层编写的应用程序兼容。这是一个强大的架构,使每个人都能够专注于对他们来说最重要的事情。

OpenXR 标准旨在实现供应商之间丰富多样的实现差异化。来自不同供应商的运行时可能在性能和功能上有所不同,但是让这些运行时实现支持相同的标准接口会为最终用户带来更多的选择。

跨平台的VR标准通过使应用程序能够在任何VR系统上运行一次,以及访问集成在VR系统中供应用程序使用的VR设备,从而消除了行业分割。


Khronos 百度百科

Khronos Group 团队成立于 2000 年 1 月
由包括 3Dlabs, ATI, Discreet, Evans & Sutherland, Intel, Nvidia, SGI 和 Sun Microsystems 在内的多家国际知名多媒体行业领导者创立
致力于发展开放标准的应用程序接口 API ,以实现在多种平台和终端设备上的富媒体创作、加速和回放。

Khronos官网地址


Khronos相关标准

OpenGL
OpenGL 是行业领域中最为广泛接纳的 2D/3D 图形 API, 其自诞生至今已催生了各种计算机平台及设备上的数千优秀应用程序。OpenGL是独立于视窗操作系统或其它操作系统的,亦是网络透明的。在包含CAD、内容创作、能源、娱乐、游戏开发、制造业、制药业及虚拟现实等行业领域中,OpenGL™ 帮助程序员实现在 PC、工作站、超级计算机等硬件设备上的高性能、极具冲击力的高视觉表现力图形处理软件的开发。

OpenKODE
OpenKODE 是免授权费的、跨平台的为加速富媒体和图形应用程序而联合一组本地应用程序接口 APIs 构成的全面媒体堆栈规范标准。 OpenKODE 是媒体应用移植性 API,致力于持续地提供先进的媒体性能,从而提高本机媒体应用源移植性和降低移动平台不相容性。OpenKODE 1.0 通过联合OpenGL ES 和 OpenVG Khronos APIs 以提供艺术级的矢量 2D 和 3D加速,并形成了新的OpenKODE 核心API,提供抽象的操作系统资源,从而最小化在 Linux、Brew、Symbian、Windows Mobile、WIPI 和以实时操作系统(RTOS)为基础游戏和应用程序移植时的资源变更。 OpenKODE 的后续版本将会增加 OpenSL ES 和 OpenMAX 媒体应用程序接口APIs,用以提供完全整合图形算法处理的音频/视频加速。

OpenGL ES
OpenGL ES 是免授权费的,跨平台的,功能完善的2D和3D图形应用程序接口API,它针对多种嵌入式系统专门设计 - 包括控制台、移动电话、手持设备、家电设备和汽车。它由精心定义的桌面OpenGL子集组成,创造了软件与图形加速间灵活强大的底层交互接口。OpenGL ES 包含浮点运算和定点运算系统描述以及 EGL针对便携设备的本地视窗系统规范。OpenGL ES 1.X 面向功能固定的硬件所设计并提供加速支持、图形质量及性能标准。OpenGL ES 2.X 则提供包括遮盖器技术在内的全可编程3D图形算法。OpenGL ES-SC 专为有高安全性需求的特殊市场精心打造。

OpenML
OpenML 是开源的、免授权费的、跨平台的编程环境,其专为捕捉、传输、处理、显示和同步数字媒体所设计 - 包括2D/3D图形和音频/视频流。OpenML 1.0 定义了专业水准取样级别流同步;用于加速视频处理的OpenGL扩展;MLdc专业显示控制应用程序接口API及ML 针对应用程序和处理硬件间非同步媒体流的架构。

OpenVG
OpenVG 是针对诸如Flash和SVG的矢量图形算法库提供底层硬件加速界面的免授权费、跨平台应用程序接口API。OpenVG 现仍处于发展阶段,其初始目标主要面向需要高质量矢量图形算法加速技术的便携手持设备,用以在小屏幕设备上实现动人心弦的用户界面和文本显示效果,并支持硬件加速以在极低的处理器功率级别下实现流畅的交互性能。

OpenMAX
OpenMAX 是无授权费的,跨平台的应用程序接口API,通过使媒体加速组件能够在开发、集成和编程环节中实现跨多操作系统和处理器硬件平台,提供全面的流媒体编解码器和应用程序便携化。OpenMAX API将会与处理器一同提供,以使库和编解码器开发者能够高速有效地利用新器件的完整加速潜能 - 无需担心其底层的硬件结构。

OpenSL ES
OpenSL ES 是无授权费、跨平台、针对嵌入式系统精心优化的硬件音频加速API。它为嵌入式移动多媒体设备上的本地应用程序开发者提供标准化, 高性能,低响应时间的音频功能实现方法,并实现软/硬件音频性能的直接跨平台部署,降低执行难度,促进高级音频市场的发展。

COLLADA
COLLADA 是面向交互式 3D 应用程序的基于 XML 的数字资产交换方案,使 3D 创作应用程序可以自由地交换数字资产而不损失信息 - 使多种DCC和3D处理软件包可以组合成强大的工具链管道。独特的交互模式提供了广泛全面的视觉编译。COLLADA FX支持使用 OpenGL ES 着色语言创作和封装着色器,以使一流的 3D 创作工具可以有效协作创建 OpenGL / OpenGL ES 应用程序和资产。

OpenGL SC
开放标准的 OpenGL SC 高度安全 Profile 被定义为满足高安全敏感性的特殊市场,如航空工业,军事,医学和汽车业应用程序,包含D0178-B认证。它简化了高度安全认证,保证可靠性,与实时系统需求相符,并便于高度安全应用程序的继承移植。


OpenXR概念

OpenXR 是一种免版税的开放标准,可提供对增强现实 (AR) 和虚拟现实 (VR)(统称为 XR)平台和设备的高性能访问。

“OpenXR 旨在简化 AR/VR 软件开发,使应用程序能够覆盖更广泛的硬件平台,而无需移植或重写其代码,随后允许支持 OpenXR 的平台供应商访问更多应用程序。随着 OpenXR 1.0 规范的发布,AR/VR 开发人员现在可以创建真正的跨平台 XR 体验。”
——布伦特·E·因斯科 (英特尔首席 XR 架构师和 OpenXR 工作组主席)

如果没有跨平台标准,VR 和 AR 应用程序和引擎必须使用每个平台的专有 API。新的输入设备需要定制的驱动程序集成。

OpenXR 提供跨平台、高性能的直接访问跨多个平台的各种 XR 设备运行时。
OpenXR 使应用程序和引擎(包括 WebXR)能够在任何公开 OpenXR API 的系统上运行。

OpenXR体系结构

公开支持 OpenXR 的公司如下:


行业行情





关于OpenXR更多信息的官网介绍:https://www.khronos.org/openxr/


总结

  • 总而言之,OpenXR 是VR领域的一个重要里程碑。这个API将允许游戏和其他应用程序在各种硬件平台上轻松运行,而无需专有的SDK。
  • OpenXR 的实现是非常底层的,普通的开发者们无需仔细研究底层,只需要拿到工具类进行开发调用即可。
  • 开发者们可以基于OpenXR上层继续进行便捷的应用开发,但这同样需要一个类似VRTK的开发套件来进行。
  • VR/AR厂商们可以将自己原有的SDK向 OpenXR改造靠拢,以实现一个多平台互通的桥梁。
  • 关于OpenXR上层的开发套件目前还没找到很合适的,如果有好用的开发套件也欢迎评论区提出呀~

Unity开发OpenXR | (一)OpenXR是什么?一文带你全面了解OpenXR的相关知识,上车收藏不迷路相关推荐

  1. 件工程项目开发最全文档模板_一文带你了解微信小程序社区和小程序开发

    微信小程序越来越受欢迎,很多小白也想制作自己的小程序.小白若想自己顺利制作,有两种方法:一种是下载安装微信官方开发者工具,然后写代码开发:一种是使用第三方小程序制作工具,选个现成的小程序模板,自己再稍 ...

  2. 软件开发中 前台、中台、后台英文_你应该知道的“中台”相关知识

    什么是中台 说起中台,大家很容易想到阿里在16年提出的"大中台小前台"战略. 中台是一套结合互联网技术和行业特性,能够把企业核心能力形成"大中台,小前台"的组织 ...

  3. 【Unity XR】Unity开发OpenXR

    Unity开发OpenXR 介绍OpenXR相关依赖插件 OpenXR OpenXR Plugin XR Interaction Toolkit XR Plugin Management 安装Open ...

  4. Unity 开发 Hololens2 MR应用程序

    Unity2020.3 LTS 开发 Hololens2 MR应用程序 提示:作者使用的是 Unity 2020.3.34f1 LTS (Unity2020.3 的其他版本也做了测试,OpenXR 要 ...

  5. Hololens Unity 开发入门 之 Hello HoloLens

    Hololens Unity 开发入门 之 Hello HoloLens~ 本文主要记录 HoloLens Unity 开发入门 ~ 一.说在前面的话 Unity 对 VR AR 甚至 将来的 MR ...

  6. 《Unity开发实战》——2.2节创建画中画效果

    本节书摘来自华章社区<Unity开发实战>一书中的第2章,第2.2节创建画中画效果,作者 (爱尔兰)Matt Smith (巴西)Chico Queiroz,更多章节内容可以访问云栖社区& ...

  7. unity开发入门_Unity游戏开发终极入门指南

    unity开发入门 Unity is a great tool for prototyping everything from games, to interactive visualisations ...

  8. 蓝鸥Unity开发基础二——课时20 接口

    蓝鸥Unity开发基础二--课时20 接口 一.接口 使用interface关键字定义接口 接口定义一组成员单不直接实现它们 二.实现接口 实现接口的任何类都必须实现其所有的成员方法 接口不能直接实例 ...

  9. Unity开发NGUI代码实现ScrollView(放大视图)

    尊重原创,转载:http://www.cnblogs.com/daxiaxiaohao/p/4745549.html Unity开发NGUI代码实现ScrollView(放大视图) 下载NGUI包 导 ...

  10. 《Unity开发实战》——3.9节鼠标悬停时高亮显示材质

    本节书摘来自华章社区<Unity开发实战>一书中的第3章,第3.9节鼠标悬停时高亮显示材质,作者 (爱尔兰)Matt Smith (巴西)Chico Queiroz,更多章节内容可以访问云 ...

最新文章

  1. tcp 测试工具_6款免费网络延迟测试工具
  2. fscanf()函数具体解释
  3. Java基础看这一篇就够了
  4. 小程序返回上一页_智能小程序档案馆手把手教你成为小程序流量头号玩家(上)...
  5. 笔记-信息化与系统集成技术-商业智能-数据仓库系统
  6. java 问题排查_JAVA问题排查笔记
  7. win10卸载电脑管家就蓝屏_win10 动不动就蓝屏,都不敢用啦。该怎么解决呢?
  8. 超炫酷的枪械3D动图,喜欢的不得了!
  9. localStorage 真正的本地缓存
  10. BZOJ1127 POI2008KUP(悬线法)
  11. Pentest Wiki Part6 权限维持
  12. gps84转换gcj02公式_WGS84-GCJ-02坐标转化
  13. Android入门第一篇
  14. python颜色参数palette_数据可视化Seaborn从零开始学习教程(二) 颜色调控篇
  15. 文字转语音软件哪个好,这一款值得推荐
  16. 超详细Openstack核心组件——Placement部署
  17. QGIS下载各种DEM的插件(SRTM 90m/30m -ALOS 30m -Cop 30m/90m-NASADEM Global DEM)
  18. git 拉取远程分支到本地的简便方法
  19. 对未来计算机网络的展望作文300,2017年关于网络的300字作文篇我与网络
  20. 不属于python标准库的是_Python标准库笔记(11) — Op

热门文章

  1. 微博商城开启社会化电商之路
  2. 学习单片机,通常要学哪些知识点?(附送75块带屏开发板)
  3. python 统计英语文档词汇出现频率,以六级真题为例
  4. cad编辑节点快捷键是什么_cad编辑节点快捷键是什么_cad进入块编辑快捷键是什么,Auto CAD进入块编辑快捷键是什么?......
  5. Lua踩坑记录(持续更新)
  6. python正态分布拟合_用python拟合正态分布(已开源)
  7. 郭敏:什么是交通事件?如何做好交通事件管理以降低二次事故发生概率?
  8. ECMAScript标准简介
  9. dajngo 初始化数据报错 django.db.utils.DataError: value too long for type character varying(32)
  10. 弗吉尼亚理工计算机科学排名,弗吉尼亚理工大学计算机科学专业