OpenXR™Loader-设计和操作

OpenXR™Loader-设计和操作
介绍
本文档包含了解如何为OpenXR加载程序进行开发以及与之交互的必要信息。本文档的预期用途是作为详细的设计文档和学习一般OpenXR加载程序行为的工具。
如果本文档与OpenXR规范之间存在任何差异,则以该文档为准。
OpenXR™和OpenXR标志是Khronos Group股份有限公司所有的商标,在中国、欧盟、日本和英国注册为商标。OpenGL和OpenGL ES是Hewlett-Packard Enterprise的注册商标,均由Khronos授权使用。所有其他产品名称、商标和/或公司名称仅用于识别,属于其各自的所有者。
1.术语
本文档中的关键字“必须”、“可以”、“不能”、“应该”、“必需”、“推荐”和“可选”应按照RFC 2119中的描述进行解释。
2.概述
OpenXR是一个分层体系结构,由以下元素组成:
OpenXR应用程序
OpenXR加载程序
OpenXR API层
OpenXR运行时间
本文档中的一般概念适用于可用于基于Windows和Linux的系统的加载程序。
首先,让我们把OpenXR环境看作一个整体。OpenXR应用程序位于执行链的起点,并直接与OpenXR加载程序接口。加载程序反过来检测、加载任意数量的OpenXR运行时和API层,并与之交互。每个OpenXR运行时都控制一个完整的VR/XR/MR系统,应用程序可以选择与之交互。加载器可以在应用程序和运行时之间注入任意数量的可选API层以增强行为。因此,任何OpenXR命令都可能涉及在许多不同的模块中执行代码,包括加载器、API层和运行时。
 
图1. OpenXR加载程序的高级视图
 
图2:示例调用链
加载器仅允许单个未完成的XrInstance,并将为所有OpenXR API命令的该XrInstance生成的调度表使用。
 
图3. 标准调用链
“特殊实例”调用链用于多个地方,在这些地方,加载器必须在任何API层之前和之后,但在调用启用的运行时之前执行一些工作。xrCreateInstance、xrDestroyInstance和xrGetInstanceProcAddr是属于此组的三个主要命令。大多数命令不需要终止符,而是使用第二个调用链。
 
图4. 应用程序调度的调用链
 
图5. 加载API层排序
 
图6. 可选功能示例
图7.加载类图
 
参考文献链接
https://registry.khronos.org/OpenXR/specs/1.0/loader.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/709021.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Win10电脑怎么调整光标闪烁速度

1.按键盘上的win键,呼出开始菜单 2.在开始菜单中输“键盘”,单击控制面板中的键盘设置。3.在弹出的界面中,调整光标闪烁速度

04--JS04--进阶

JavaScript04:拓展进阶 一. jsonp 为了解决浏览器跨域问题,jQuery提供了jsonp请求 在网页端如果见到了服务器返回的数据是: ​ xxxxxxxxxxdjsfkldasjfkldasjklfjadsklfjasdlkj( { json数据 } ) ​ 在Preview里面可以像看到json一样去调试 这就是jsonp,依然是Ajax jsonp的逻辑…

.NET 中 Channel 类简单使用

Channel 是干什么的 The System.Threading.Channels namespace provides a set of synchronization data structures for passing data between producers and consumers asynchronously. The library targets .NET Standard and works on all .NET implementations. Channels …

第五周-云计算运维作业

1. 总结openssh服务安全加固和总结openssh免密认证原理,及免认证实现过程。 1.仅使用SSHv2 协议 2.关闭或者延迟压缩 Compression no 3.限制身份验证最大尝试次数 MaxAuthTries 3 4.禁用root账户登录 PermitRootLogin no 5.显示最后一次登录的日期和时间 PrintLastLog yes #用…

深入掌握service

深入掌握Service Service是Kubernetes实现微服务架构的核心概念,通过创建Service,可以为一组具有相同功能的容器应用提供一个统一的入口地址,并且将请求负载分发到后端的各个容器应用上。 Service定义 Service用于为一组提供服务的Pod抽象一个稳定的网络访问地址,是Kuberne…

uniapp-webview获取h5页面加载错误信息及自定义错误页面(捕获uniapp中webview加载error)

问题描述uniapp中需要加载H5页面,使用了webview,但是在某些情况下,页面加载出现错误,但是官方文档里给出的捕获错误信息的回调函数,只适用部分平台,某些平台无法获取@error异常信息,这种情况如何处理呢? 解决uniapp web-view组件的@load @error事件无效,事件不触发的问…

物联网在智慧园区的八大应用

物联网在智慧园区领域有许多应用。以下是一些常见的应用场景: 智能安防系统: 通过物联网技术,可以实现智能监控、入侵检测、视频监控、智能门禁等安防功能,提高园区的安全性和管理效率。 能源管理: 物联网可以用于实时监测和控制园区内的能源消耗,包括电力、水、气等,通…

tensorflow与python版本对应关系

下完之后才发现tensorflow1.12.0需要3.6的版本……

听说你是高手?说说你的 JVM调优方法论 吧?(美团面试,问的贼细)

文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录 博客园版 为您奉上珍贵的学习资源 : 免费赠送 :《尼恩Java面试宝典》 持续更新+ 史上最全 + 面试必备 2000页+ 面试必备 + 大厂必备 +涨薪必备 免费赠送 :《尼恩技术圣经+高并发系列PDF》 ,帮你 实现技术自由,…

一个页面从输入URL到加载显示完成,这个过程发生了什么?

目录一、解析URL1、流程2、URL格式:3、示例二、浏览器封装HTTP请求报文1、流程2、HTTP请求报文例子3、封装三、DNS解析1、缓存判断1.1、浏览器缓存1.2、操作系统缓存1.3、路由器缓存2、递归查询至ISP DNS服务器3、迭代查询过程4、保存结果至各级缓存四、建立TCP连接(三次握手…