当前位置: 首页 > news >正文

OpenXR 超详细的spec--API初始化介绍

 3.API 初始化

3.1 Exported Functions

实现API loader的动态链接库(so/dll)必须export all core OpenXR API functions。然而application可以通过使用xrGetInstanceProcAddr()来获取指向extension函数的指针。

3.2 Function Pointers

OpenXR所有函数的指针都可以通过函数xrGetInstanceProcAddr()得到。

XrResult xrGetInstanceProcAddr(XrInstance                                  instance,const char*                                 name,PFN_xrVoidFunction*                         function);
  • instance: XrInstance类型,可以是NULL,也可以是任何有效的instance;
  • name:待获取fp的函数名称;
  • function:返回的函数指针fp。

Loader必须导出所有OpenXR核心函数的函数符号,这样application就可以不用使用xrGetInsanceProcAddr()来使用OpenXR core functions。

xrGetInstanceProcAddr的参数instance和name不同,返回的值也是不同,参考下表。

instance parametername parameterreturn value

*

NULL

undefined

invalid instance

*

undefined

NULL

xrEnumerateInstanceExtensionProperties

fp

NULL

xrEnumerateApiLayerProperties

fp

NULL

xrCreateInstance

fp

NULL

* (any name not covered above)

NULL

instance

core OpenXR function

fp1

instance

enabled extension function for instance

fp1

instance

* (any name not covered above)

NULL

  • 当参数instance是NULL时,但是name是xrEnumerateInstanceExtensionProperties/ xrEnumerateApiLayerProperties/ xrCreateInstance中任意一个,则返回对应name的函数fp。
  • 当instance是有效的对象时,如果name是core OpenXR function或者使能的扩展层extension的function,则会返回对应name的函数fp。
  • 如果name是不存在的函数名称,无论instance是否有效,都会返回NULL。

3.3  Runtime interface Negotiation

待完成

http://www.lryc.cn/news/310753.html

相关文章:

  • 认识通讯协议——TCP/IP、UDP协议的区别,HTTP通讯协议的理解
  • 谈一谈工作中的前后端功能开发范围
  • Kubernetes 学习总结(46)—— Pod 不停重启问题分析与解决
  • Vulnhub靶机:Bellatrix
  • 深入探讨 AutoGPT:彻底改变游戏的自主 AI
  • Java Web之网页开发基础复习
  • 华容道问题求解第一部分_详细设计(一)之棋子和游戏类_初始化部分
  • 【框架】Spring 框架重点解析
  • js中的内存泄漏
  • 营业执照年报申报
  • Springboot教程(五)——单元测试
  • 【Kotlin】函数
  • Unity生命周期函数解析
  • 【Qt】QTextEdit/QPlainTextEdit 实现 Tab 键多行缩进与反缩进
  • C++缺陷与思考
  • 无公网ip环境使用DS file软件远程访问内网群晖NAS中储存的文件
  • 软件工程基础
  • alzet供应商你值得拥有
  • x86中的TSS与任务切换
  • 打造去中心化透明储蓄罐:Solidity智能合约的又一实践
  • Java Mybatis数据库面试题
  • LeetCode-第14题-最长公共前缀
  • TCP/UDP模型:2024/2/29
  • 微信如何设置自动回复消息,提升沟通效率的?
  • PCIE的BAR空间
  • 11.互信息-机器学习模型性能的常用的评估指标
  • SpringCloud(18)之Sleuth +Zipkin链路追踪
  • GVA快速使用
  • Linux文本处理三剑客:awk(内置函数详解笔记)
  • C++调用lua函数