![]() |
OGRE 14.2
Object-Oriented Graphics Rendering Engine
|
#include <OgreVulkanDevice.h>
Classes | |
| struct | SelectedQueue |
Public Member Functions | |
| VulkanDevice (VkInstance instance, uint32 deviceIdx, VulkanRenderSystem *renderSystem) | |
| ~VulkanDevice () | |
| void | commitAndNextCommandBuffer (SubmissionType::SubmissionType submissionType=SubmissionType::FlushOnly) |
| void | createDevice (FastArray< const char * > &extensions, uint32 maxComputeQueues, uint32 maxTransferQueues) |
| void | createPhysicalDevice (uint32 deviceIdx) |
| void | fillQueueCreationInfo (uint32 maxComputeQueues, uint32 maxTransferQueues, FastArray< VkDeviceQueueCreateInfo > &outQueueCiArray) |
| void | findComputeQueue (FastArray< uint32 > &inOutUsedQueueCount, uint32 maxNumQueues) |
| void | findGraphicsQueue (FastArray< uint32 > &inOutUsedQueueCount) |
| void | findTransferQueue (FastArray< uint32 > &inOutUsedQueueCount, uint32 maxNumQueues) |
| VmaAllocator | getAllocator () const |
| void | initQueues (void) |
| void | stall (void) |
| Waits for the GPU to finish all pending commands. | |
Static Public Member Functions | |
| static VkInstance | createInstance (FastArray< const char * > &extensions, FastArray< const char * > &layers, PFN_vkDebugReportCallbackEXT debugCallback) |
| static void | destroyQueues (FastArray< VulkanQueue > &queueArray) |
Public Attributes | |
| FastArray< VulkanQueue > | mComputeQueues |
| Additional compute queues to run async compute (besides the main graphics one) | |
| VkDevice | mDevice |
| VkPhysicalDeviceFeatures | mDeviceFeatures |
| VkPhysicalDeviceMemoryProperties | mDeviceMemoryProperties |
| VkPhysicalDeviceProperties | mDeviceProperties |
| VulkanQueue | mGraphicsQueue |
| Graphics queue is guaranteed by spec to also be able to run compute and transfer A GPU may not have a graphics queue though (Ogre can't run there) | |
| VkInstance | mInstance |
| VkPhysicalDevice | mPhysicalDevice |
| VkQueue | mPresentQueue |
| FastArray< VkQueueFamilyProperties > | mQueueProps |
| VulkanRenderSystem * | mRenderSystem |
| uint32 | mSupportedStages |
| FastArray< VulkanQueue > | mTransferQueues |
| Additional transfer queues to run async transfers (besides the main graphics one) | |
| VmaAllocator | mVmaAllocator |
| Ogre::VulkanDevice::VulkanDevice | ( | VkInstance | instance, |
| uint32 | deviceIdx, | ||
| VulkanRenderSystem * | renderSystem ) |
| Ogre::VulkanDevice::~VulkanDevice | ( | ) |
|
static |
| void Ogre::VulkanDevice::findComputeQueue | ( | FastArray< uint32 > & | inOutUsedQueueCount, |
| uint32 | maxNumQueues ) |
| void Ogre::VulkanDevice::findTransferQueue | ( | FastArray< uint32 > & | inOutUsedQueueCount, |
| uint32 | maxNumQueues ) |
| void Ogre::VulkanDevice::fillQueueCreationInfo | ( | uint32 | maxComputeQueues, |
| uint32 | maxTransferQueues, | ||
| FastArray< VkDeviceQueueCreateInfo > & | outQueueCiArray ) |
|
static |
| void Ogre::VulkanDevice::createDevice | ( | FastArray< const char * > & | extensions, |
| uint32 | maxComputeQueues, | ||
| uint32 | maxTransferQueues ) |
| void Ogre::VulkanDevice::commitAndNextCommandBuffer | ( | SubmissionType::SubmissionType | submissionType = SubmissionType::FlushOnly | ) |
|
inline |
| VkInstance Ogre::VulkanDevice::mInstance |
| VkPhysicalDevice Ogre::VulkanDevice::mPhysicalDevice |
| VkDevice Ogre::VulkanDevice::mDevice |
| VmaAllocator Ogre::VulkanDevice::mVmaAllocator |
| VkQueue Ogre::VulkanDevice::mPresentQueue |
| VulkanQueue Ogre::VulkanDevice::mGraphicsQueue |
Graphics queue is guaranteed by spec to also be able to run compute and transfer A GPU may not have a graphics queue though (Ogre can't run there)
| FastArray<VulkanQueue> Ogre::VulkanDevice::mComputeQueues |
Additional compute queues to run async compute (besides the main graphics one)
| FastArray<VulkanQueue> Ogre::VulkanDevice::mTransferQueues |
Additional transfer queues to run async transfers (besides the main graphics one)
| VkPhysicalDeviceProperties Ogre::VulkanDevice::mDeviceProperties |
| VkPhysicalDeviceMemoryProperties Ogre::VulkanDevice::mDeviceMemoryProperties |
| VkPhysicalDeviceFeatures Ogre::VulkanDevice::mDeviceFeatures |
| FastArray<VkQueueFamilyProperties> Ogre::VulkanDevice::mQueueProps |
| VulkanRenderSystem* Ogre::VulkanDevice::mRenderSystem |
| uint32 Ogre::VulkanDevice::mSupportedStages |