?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。