This website uses cookies to improve our services and deliver relevant ads.
By interacting with this site, you agree to this use. For more information, see our Cookies Policy

Mobile 1.19 Reference Guide

VrApi_Vulkan.h File Reference

Macros

#define
VK_DEFINE_HANDLE
#define
VK_DEFINE_NON_DISPATCHABLE_HANDLE
#define
VK_NULL_HANDLE

Functions

ovrResult
vrapi_GetInstanceExtensionsVulkan ( char * extensionNames, uint32_t * extensionNamesSize )
Returns a list of strings delimited by a single space identifying Vulkan extensions that must be enabled for the instance in order for the VR runtime to support Vulkan-based applications.
ovrResult
vrapi_GetDeviceExtensionsVulkan ( char * extensionNames, uint32_t * extensionNamesSize )
Returns a list of strings delimited by a single space identifying Vulkan extensions that must be enabled for the device in order for the VR runtime to support Vulkan-based applications.
ovrResult
Initializes the API for Vulkan support.
void
Destroys the API for Vulkan support.
VkImage
Get the VkImage at the given index within the chain.

Macros Documentation

#define VK_DEFINE_HANDLE
#define VK_DEFINE_NON_DISPATCHABLE_HANDLE
#define VK_NULL_HANDLE

Function Documentation

OVR_VRAPI_EXPORT ovrResult vrapi_GetInstanceExtensionsVulkan ( char * extensionNames, uint32_t * extensionNamesSize )
Returns a list of strings delimited by a single space identifying Vulkan extensions that must be enabled for the instance in order for the VR runtime to support Vulkan-based applications.
OVR_VRAPI_EXPORT ovrResult vrapi_GetDeviceExtensionsVulkan ( char * extensionNames, uint32_t * extensionNamesSize )
Returns a list of strings delimited by a single space identifying Vulkan extensions that must be enabled for the device in order for the VR runtime to support Vulkan-based applications.
OVR_VRAPI_EXPORT ovrResult vrapi_CreateSystemVulkan ( ovrSystemCreateInfoVulkan * systemInfo )
Initializes the API for Vulkan support.
This is lightweight and does not create any threads. This is called after vrapi_Initialize and before texture swapchain creation, or vrapi_enterVrMode.
OVR_VRAPI_EXPORT void vrapi_DestroySystemVulkan ( )
Destroys the API for Vulkan support.
This is called before vrapi_Shutdown.
OVR_VRAPI_EXPORT VkImage vrapi_GetTextureSwapChainBufferVulkan ( ovrTextureSwapChain * chain, int index )
Get the VkImage at the given index within the chain.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
43
44
47
48
50
51
52
53
54
55
56
61
62
65
66
68
69
70
71
72
73
74
/************************************************************************************

Filename    :   VrApi_Vulkan.h
Content     :   Vulkan specific VrApi structures.
Created     :   October 2017
Authors     :   Gloria Kennickell
Language    :   C99

Copyright   :   Copyright (c) Facebook Technologies, LLC and its affiliates. All rights reserved.

*************************************************************************************/
#ifndef OVR_VrApi_Vulkan_h
#define OVR_VrApi_Vulkan_h

#include "VrApi_Config.h"
#include "VrApi_Types.h"

#if defined( __cplusplus )
extern"C" {
#endif

// From <vulkan/vulkan.h>:
#if !defined(VK_VERSION_1_0)
#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;
#if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__)) || \
    defined(_M_X64) || defined(__ia64) || defined(_M_IA64) || defined(__aarch64__) ||       \
    defined(__powerpc64__)
#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T* object;
#else
#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object;
#endif
VK_DEFINE_HANDLE(VkInstance)
VK_DEFINE_HANDLE(VkPhysicalDevice)
VK_DEFINE_HANDLE(VkDevice)
VK_DEFINE_HANDLE(VkQueue)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImage)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeviceMemory)
#define VK_NULL_HANDLE 0
#endif

OVR_VRAPI_EXPORT ovrResult vrapi_GetInstanceExtensionsVulkan( char * extensionNames, uint32_t * extensionNamesSize );

OVR_VRAPI_EXPORT ovrResult vrapi_GetDeviceExtensionsVulkan( char * extensionNames, uint32_t * extensionNamesSize );

typedefstruct
{
    VkInstance          Instance;
    VkPhysicalDevice    PhysicalDevice;
    VkDevice            Device;
} ovrSystemCreateInfoVulkan;

OVR_VRAPI_EXPORT ovrResult vrapi_CreateSystemVulkan( ovrSystemCreateInfoVulkan * systemInfo );

OVR_VRAPI_EXPORT void vrapi_DestroySystemVulkan();

OVR_VRAPI_EXPORT VkImage vrapi_GetTextureSwapChainBufferVulkan( ovrTextureSwapChain * chain, int index );

#if defined( __cplusplus )
}   // extern "C"
#endif

#endif  // OVR_VrApi_Vulkan_h
The documentation for this file was generated from the following file: Include/VrApi_Vulkan.h