3.API 初始化
3.2 Function Pointers
XrResult xrGetInstanceProcAddr(XrInstance instance,const char* name,PFN_xrVoidFunction* function);
instance: XrInstance类型,可以是NULL,也可以是任何有效的instance;
name:待获取fp的函数名称;
function:返回的函数指针fp。
xrGetInstanceProcAddr的参数instance和name不同,返回的值也是不同,参考下表。
instance parameter | name parameter | return value |
---|---|---|
* |
| undefined |
invalid instance | * | undefined |
| xrEnumerateInstanceExtensionProperties | fp |
| xrEnumerateApiLayerProperties | fp |
| xrCreateInstance | fp |
| * (any |
|
instance | core OpenXR function | fp1 |
instance | enabled extension function for | fp1 |
instance | * (any |
|
- 当参数instance是NULL时,但是name是xrEnumerateInstanceExtensionProperties/ xrEnumerateApiLayerProperties/ xrCreateInstance中任意一个,则返回对应name的函数fp。
- 当instance是有效的对象时,如果name是core OpenXR function或者使能的扩展层extension的function,则会返回对应name的函数fp。
- 如果name是不存在的函数名称,无论instance是否有效,都会返回NULL。