Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qrhivulkan.cpp File Reference

(c09270753d3ec35c89c6f73a5fd4f197321e74fb)

#include "qrhivulkan_p.h"
#include <qpa/qplatformvulkaninstance.h>
#include "vk_mem_alloc.h"
#include <qmath.h>
#include <QVulkanFunctions>
#include <QtGui/qwindow.h>
#include <optional>
+ Include dependency graph for qrhivulkan.cpp:

Go to the source code of this file.

Classes

struct  MultiViewRenderPassSetupHelper
 
struct  QVkPipelineCacheDataHeader
 

Macros

#define VMA_IMPLEMENTATION
 
#define VMA_DYNAMIC_VULKAN_FUNCTIONS   1
 
#define VMA_STATIC_VULKAN_FUNCTIONS   0
 
#define VMA_RECORDING_ENABLED   0
 
#define VMA_DEDICATED_ALLOCATION   0
 

Functions

template<class Int >
Int aligned (Int v, Int byteAlign)
 \variable QRhiVulkanRenderPassNativeHandles::renderPass
 
static VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL wrap_vkGetInstanceProcAddr (VkInstance, const char *pName)
 
static VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL wrap_vkGetDeviceProcAddr (VkDevice device, const char *pName)
 
static VmaAllocation toVmaAllocation (QVkAlloc a)
 
static VmaAllocator toVmaAllocator (QVkAllocator a)
 
static bool qvk_debug_filter (QVulkanInstance::DebugMessageSeverityFlags severity, QVulkanInstance::DebugMessageTypeFlags type, const void *callbackData)
 
static QRhiDriverInfo::DeviceType toRhiDeviceType (VkPhysicalDeviceType type)
 
static VkFormat toVkTextureFormat (QRhiTexture::Format format, QRhiTexture::Flags flags)
 
static QRhiTexture::Format swapchainReadbackTextureFormat (VkFormat format, QRhiTexture::Flags *flags)
 
static constexpr bool isDepthTextureFormat (QRhiTexture::Format format)
 
static constexpr VkImageAspectFlags aspectMaskForTextureFormat (QRhiTexture::Format format)
 
static void fillRenderPassCreateInfo (VkRenderPassCreateInfo *rpInfo, VkSubpassDescription *subpassDesc, QVkRenderPassDescriptor *rpD)
 
static QRhiPassResourceTracker::UsageState toPassTrackerUsageState (const QVkBuffer::UsageState &bufUsage)
 
static QRhiPassResourceTracker::UsageState toPassTrackerUsageState (const QVkTexture::UsageState &texUsage)
 
template<typename T >
void qrhivk_accumulateComputeResource (T *writtenResources, QRhiResource *resource, QRhiShaderResourceBinding::Type bindingType, int loadTypeVal, int storeTypeVal, int loadStoreTypeVal)
 
static bool accessIsWrite (VkAccessFlags access)
 
static void qrhivk_releaseBuffer (const QRhiVulkan::DeferredReleaseEntry &e, void *allocator)
 
static void qrhivk_releaseRenderBuffer (const QRhiVulkan::DeferredReleaseEntry &e, VkDevice dev, QVulkanDeviceFunctions *df)
 
static void qrhivk_releaseTexture (const QRhiVulkan::DeferredReleaseEntry &e, VkDevice dev, QVulkanDeviceFunctions *df, void *allocator)
 
static void qrhivk_releaseSampler (const QRhiVulkan::DeferredReleaseEntry &e, VkDevice dev, QVulkanDeviceFunctions *df)
 
static VkAccessFlags toVkAccess (QRhiPassResourceTracker::BufferAccess access)
 
static VkPipelineStageFlags toVkPipelineStage (QRhiPassResourceTracker::BufferStage stage)
 
static QVkBuffer::UsageState toVkBufferUsageState (QRhiPassResourceTracker::UsageState usage)
 
static VkImageLayout toVkLayout (QRhiPassResourceTracker::TextureAccess access)
 
static VkAccessFlags toVkAccess (QRhiPassResourceTracker::TextureAccess access)
 
static VkPipelineStageFlags toVkPipelineStage (QRhiPassResourceTracker::TextureStage stage)
 
static QVkTexture::UsageState toVkTextureUsageState (QRhiPassResourceTracker::UsageState usage)
 
static QVkRenderTargetDatamaybeRenderTargetData (QVkCommandBuffer *cbD)
 
static VkBufferUsageFlagBits toVkBufferUsage (QRhiBuffer::UsageFlags usage)
 
static VkFilter toVkFilter (QRhiSampler::Filter f)
 
static VkSamplerMipmapMode toVkMipmapMode (QRhiSampler::Filter f)
 
static VkSamplerAddressMode toVkAddressMode (QRhiSampler::AddressMode m)
 
static VkShaderStageFlagBits toVkShaderStage (QRhiShaderStage::Type type)
 
static VkFormat toVkAttributeFormat (QRhiVertexInputAttribute::Format format)
 
static VkPrimitiveTopology toVkTopology (QRhiGraphicsPipeline::Topology t)
 
static VkCullModeFlags toVkCullMode (QRhiGraphicsPipeline::CullMode c)
 
static VkFrontFace toVkFrontFace (QRhiGraphicsPipeline::FrontFace f)
 
static VkColorComponentFlags toVkColorComponents (QRhiGraphicsPipeline::ColorMask c)
 
static VkBlendFactor toVkBlendFactor (QRhiGraphicsPipeline::BlendFactor f)
 
static VkBlendOp toVkBlendOp (QRhiGraphicsPipeline::BlendOp op)
 
static VkCompareOp toVkCompareOp (QRhiGraphicsPipeline::CompareOp op)
 
static VkStencilOp toVkStencilOp (QRhiGraphicsPipeline::StencilOp op)
 
static VkPolygonMode toVkPolygonMode (QRhiGraphicsPipeline::PolygonMode mode)
 
static void fillVkStencilOpState (VkStencilOpState *dst, const QRhiGraphicsPipeline::StencilOpState &src)
 
static VkDescriptorType toVkDescriptorType (const QRhiShaderResourceBinding::Data *b)
 
static VkShaderStageFlags toVkShaderStageFlags (QRhiShaderResourceBinding::StageFlags stage)
 
static VkCompareOp toVkTextureCompareOp (QRhiSampler::CompareOp op)
 
static bool attachmentDescriptionEquals (const VkAttachmentDescription &a, const VkAttachmentDescription &b)
 
static bool hdrFormatMatchesVkSurfaceFormat (QRhiSwapChain::Format f, const VkSurfaceFormatKHR &s)
 
static bool isSrgbFormat (VkFormat format)
 

Variables

static QVulkanInstanceglobalVulkanInstance
 
struct { 
 
   VkSampleCountFlagBits   mask 
 
   int   count 
 
qvk_sampleCounts [] 
 

Macro Definition Documentation

◆ VMA_DEDICATED_ALLOCATION

#define VMA_DEDICATED_ALLOCATION   0

Definition at line 11 of file qrhivulkan.cpp.

◆ VMA_DYNAMIC_VULKAN_FUNCTIONS

#define VMA_DYNAMIC_VULKAN_FUNCTIONS   1

Definition at line 8 of file qrhivulkan.cpp.

◆ VMA_IMPLEMENTATION

#define VMA_IMPLEMENTATION

Definition at line 7 of file qrhivulkan.cpp.

◆ VMA_RECORDING_ENABLED

#define VMA_RECORDING_ENABLED   0

Definition at line 10 of file qrhivulkan.cpp.

◆ VMA_STATIC_VULKAN_FUNCTIONS

#define VMA_STATIC_VULKAN_FUNCTIONS   0

Definition at line 9 of file qrhivulkan.cpp.

Function Documentation

◆ accessIsWrite()

static bool accessIsWrite ( VkAccessFlags access)
inlinestatic

Definition at line 3302 of file qrhivulkan.cpp.

Referenced by QRhiVulkan::recordTransitionPassResources(), QRhiVulkan::trackedBufferBarrier(), QRhiVulkan::trackedImageBarrier(), QRhiVulkan::trackedRegisterBuffer(), and QRhiVulkan::trackedRegisterTexture().

+ Here is the caller graph for this function:

◆ aligned()

template<class Int >
Int aligned ( Int v,
Int byteAlign )
inline

\variable QRhiVulkanRenderPassNativeHandles::renderPass

The VkRenderPass object.

Definition at line 287 of file qrhivulkan.cpp.

◆ aspectMaskForTextureFormat()

static constexpr VkImageAspectFlags aspectMaskForTextureFormat ( QRhiTexture::Format format)
inlinestaticconstexpr

Definition at line 1174 of file qrhivulkan.cpp.

References isDepthTextureFormat().

Referenced by QVkTexture::finishCreate(), QVkTexture::perLevelImageViewForLoadStore(), QRhiVulkan::recordTransitionPassResources(), and QRhiVulkan::trackedImageBarrier().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ attachmentDescriptionEquals()

static bool attachmentDescriptionEquals ( const VkAttachmentDescription & a,
const VkAttachmentDescription & b )
inlinestatic

Definition at line 6855 of file qrhivulkan.cpp.

Referenced by QVkRenderPassDescriptor::isCompatible().

+ Here is the caller graph for this function:

◆ fillRenderPassCreateInfo()

static void fillRenderPassCreateInfo ( VkRenderPassCreateInfo * rpInfo,
VkSubpassDescription * subpassDesc,
QVkRenderPassDescriptor * rpD )
static

Definition at line 1331 of file qrhivulkan.cpp.

Referenced by QRhiVulkan::createDefaultRenderPass(), QRhiVulkan::createOffscreenRenderPass(), and QVkRenderPassDescriptor::newCompatibleRenderPassDescriptor().

+ Here is the caller graph for this function:

◆ fillVkStencilOpState()

static void fillVkStencilOpState ( VkStencilOpState * dst,
const QRhiGraphicsPipeline::StencilOpState & src )
inlinestatic

Definition at line 6060 of file qrhivulkan.cpp.

References toVkCompareOp(), and toVkStencilOp().

Referenced by QVkGraphicsPipeline::create().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hdrFormatMatchesVkSurfaceFormat()

static bool hdrFormatMatchesVkSurfaceFormat ( QRhiSwapChain::Format f,
const VkSurfaceFormatKHR & s )
inlinestatic

Definition at line 7951 of file qrhivulkan.cpp.

References QRhiSwapChain::HDR10, QRhiSwapChain::HDRExtendedDisplayP3Linear, and QRhiSwapChain::HDRExtendedSrgbLinear.

Referenced by QVkSwapChain::ensureSurface(), and QVkSwapChain::isFormatSupported().

+ Here is the caller graph for this function:

◆ isDepthTextureFormat()

static constexpr bool isDepthTextureFormat ( QRhiTexture::Format format)
inlinestaticconstexpr

Definition at line 1160 of file qrhivulkan.cpp.

References QRhiTexture::D16, QRhiTexture::D24, QRhiTexture::D24S8, and QRhiTexture::D32F.

Referenced by aspectMaskForTextureFormat().

+ Here is the caller graph for this function:

◆ isSrgbFormat()

static bool isSrgbFormat ( VkFormat format)
inlinestatic

Definition at line 8021 of file qrhivulkan.cpp.

Referenced by QVkSwapChain::ensureSurface().

+ Here is the caller graph for this function:

◆ maybeRenderTargetData()

static QVkRenderTargetData * maybeRenderTargetData ( QVkCommandBuffer * cbD)
inlinestatic

Definition at line 5634 of file qrhivulkan.cpp.

References QVkCommandBuffer::currentTarget, Q_ASSERT, QRHI_RES, QVkCommandBuffer::recordingPass, QVkCommandBuffer::RenderPass, QRhiResource::resourceType(), QRhiResource::SwapChainRenderTarget, and QRhiResource::TextureRenderTarget.

Referenced by QRhiVulkan::beginExternal(), and QRhiVulkan::endExternal().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ qrhivk_accumulateComputeResource()

template<typename T >
void qrhivk_accumulateComputeResource ( T * writtenResources,
QRhiResource * resource,
QRhiShaderResourceBinding::Type bindingType,
int loadTypeVal,
int storeTypeVal,
int loadStoreTypeVal )
inline

Definition at line 2959 of file qrhivulkan.cpp.

References it.

Referenced by QRhiVulkan::dispatch().

+ Here is the caller graph for this function:

◆ qrhivk_releaseBuffer()

static void qrhivk_releaseBuffer ( const QRhiVulkan::DeferredReleaseEntry & e,
void * allocator )
static

Definition at line 4092 of file qrhivulkan.cpp.

References QRhiVulkan::DeferredReleaseEntry::buffer, i, QVK_FRAMES_IN_FLIGHT, toVmaAllocation(), and toVmaAllocator().

Referenced by QRhiVulkan::executeDeferredReleases().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ qrhivk_releaseRenderBuffer()

static void qrhivk_releaseRenderBuffer ( const QRhiVulkan::DeferredReleaseEntry & e,
VkDevice dev,
QVulkanDeviceFunctions * df )
static

Definition at line 4100 of file qrhivulkan.cpp.

References QRhiVulkan::DeferredReleaseEntry::renderBuffer.

Referenced by QRhiVulkan::executeDeferredReleases().

+ Here is the caller graph for this function:

◆ qrhivk_releaseSampler()

static void qrhivk_releaseSampler ( const QRhiVulkan::DeferredReleaseEntry & e,
VkDevice dev,
QVulkanDeviceFunctions * df )
static

Definition at line 4119 of file qrhivulkan.cpp.

References QRhiVulkan::DeferredReleaseEntry::sampler.

Referenced by QRhiVulkan::executeDeferredReleases().

+ Here is the caller graph for this function:

◆ qrhivk_releaseTexture()

static void qrhivk_releaseTexture ( const QRhiVulkan::DeferredReleaseEntry & e,
VkDevice dev,
QVulkanDeviceFunctions * df,
void * allocator )
static

Definition at line 4107 of file qrhivulkan.cpp.

References i, QRhi::MAX_MIP_LEVELS, QVK_FRAMES_IN_FLIGHT, QRhiVulkan::DeferredReleaseEntry::texture, toVmaAllocation(), and toVmaAllocator().

Referenced by QRhiVulkan::executeDeferredReleases().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ qvk_debug_filter()

static bool qvk_debug_filter ( QVulkanInstance::DebugMessageSeverityFlags severity,
QVulkanInstance::DebugMessageTypeFlags type,
const void * callbackData )
static

Definition at line 366 of file qrhivulkan.cpp.

References d, and Q_UNUSED.

◆ swapchainReadbackTextureFormat()

static QRhiTexture::Format swapchainReadbackTextureFormat ( VkFormat format,
QRhiTexture::Flags * flags )
inlinestatic

◆ toPassTrackerUsageState() [1/2]

◆ toPassTrackerUsageState() [2/2]

◆ toRhiDeviceType()

static QRhiDriverInfo::DeviceType toRhiDeviceType ( VkPhysicalDeviceType type)
inlinestatic

Definition at line 397 of file qrhivulkan.cpp.

References QRhiDriverInfo::CpuDevice, QRhiDriverInfo::DiscreteDevice, QRhiDriverInfo::IntegratedDevice, QRhiDriverInfo::UnknownDevice, and QRhiDriverInfo::VirtualDevice.

Referenced by QRhiVulkan::create().

+ Here is the caller graph for this function:

◆ toVkAccess() [1/2]

static VkAccessFlags toVkAccess ( QRhiPassResourceTracker::BufferAccess access)
inlinestatic

◆ toVkAccess() [2/2]

◆ toVkAddressMode()

static VkSamplerAddressMode toVkAddressMode ( QRhiSampler::AddressMode m)
inlinestatic

Definition at line 5778 of file qrhivulkan.cpp.

References QRhiSampler::ClampToEdge, QRhiSampler::Mirror, and QRhiSampler::Repeat.

Referenced by QVkSampler::create().

+ Here is the caller graph for this function:

◆ toVkAttributeFormat()

◆ toVkBlendFactor()

◆ toVkBlendOp()

static VkBlendOp toVkBlendOp ( QRhiGraphicsPipeline::BlendOp op)
inlinestatic

Definition at line 5982 of file qrhivulkan.cpp.

References QRhiGraphicsPipeline::Add, QRhiGraphicsPipeline::Max, QRhiGraphicsPipeline::Min, QRhiGraphicsPipeline::ReverseSubtract, and QRhiGraphicsPipeline::Subtract.

Referenced by QVkGraphicsPipeline::create().

+ Here is the caller graph for this function:

◆ toVkBufferUsage()

static VkBufferUsageFlagBits toVkBufferUsage ( QRhiBuffer::UsageFlags usage)
inlinestatic

Definition at line 5738 of file qrhivulkan.cpp.

References QRhiBuffer::IndexBuffer, QRhiBuffer::StorageBuffer, QRhiBuffer::UniformBuffer, and QRhiBuffer::VertexBuffer.

Referenced by QVkBuffer::create().

+ Here is the caller graph for this function:

◆ toVkBufferUsageState()

static QVkBuffer::UsageState toVkBufferUsageState ( QRhiPassResourceTracker::UsageState usage)
inlinestatic

Definition at line 4471 of file qrhivulkan.cpp.

References QVkBuffer::UsageState::access, and QVkBuffer::UsageState::stage.

Referenced by QRhiVulkan::recordTransitionPassResources().

+ Here is the caller graph for this function:

◆ toVkColorComponents()

static VkColorComponentFlags toVkColorComponents ( QRhiGraphicsPipeline::ColorMask c)
inlinestatic

Definition at line 5922 of file qrhivulkan.cpp.

References QRhiGraphicsPipeline::A, QRhiGraphicsPipeline::B, QRhiGraphicsPipeline::G, and QRhiGraphicsPipeline::R.

Referenced by QVkGraphicsPipeline::create().

+ Here is the caller graph for this function:

◆ toVkCompareOp()

static VkCompareOp toVkCompareOp ( QRhiGraphicsPipeline::CompareOp op)
inlinestatic

Definition at line 6000 of file qrhivulkan.cpp.

References QRhiGraphicsPipeline::Always, QRhiGraphicsPipeline::Equal, QRhiGraphicsPipeline::Greater, QRhiGraphicsPipeline::GreaterOrEqual, QRhiGraphicsPipeline::Less, QRhiGraphicsPipeline::LessOrEqual, QRhiGraphicsPipeline::Never, and QRhiGraphicsPipeline::NotEqual.

Referenced by QVkGraphicsPipeline::create(), and fillVkStencilOpState().

+ Here is the caller graph for this function:

◆ toVkCullMode()

static VkCullModeFlags toVkCullMode ( QRhiGraphicsPipeline::CullMode c)
inlinestatic

Definition at line 5896 of file qrhivulkan.cpp.

References QRhiGraphicsPipeline::Back, QRhiGraphicsPipeline::Front, and QRhiGraphicsPipeline::None.

Referenced by QVkGraphicsPipeline::create().

+ Here is the caller graph for this function:

◆ toVkDescriptorType()

◆ toVkFilter()

static VkFilter toVkFilter ( QRhiSampler::Filter f)
inlinestatic

Definition at line 5752 of file qrhivulkan.cpp.

References QRhiSampler::Linear, and QRhiSampler::Nearest.

Referenced by QVkSampler::create().

+ Here is the caller graph for this function:

◆ toVkFrontFace()

static VkFrontFace toVkFrontFace ( QRhiGraphicsPipeline::FrontFace f)
inlinestatic

Definition at line 5910 of file qrhivulkan.cpp.

References QRhiGraphicsPipeline::CCW, and QRhiGraphicsPipeline::CW.

Referenced by QVkGraphicsPipeline::create().

+ Here is the caller graph for this function:

◆ toVkLayout()

static VkImageLayout toVkLayout ( QRhiPassResourceTracker::TextureAccess access)
inlinestatic

Definition at line 4479 of file qrhivulkan.cpp.

References QRhiPassResourceTracker::TexColorOutput, QRhiPassResourceTracker::TexDepthOutput, QRhiPassResourceTracker::TexSample, QRhiPassResourceTracker::TexStorageLoad, QRhiPassResourceTracker::TexStorageLoadStore, and QRhiPassResourceTracker::TexStorageStore.

Referenced by QRhiVulkan::recordTransitionPassResources(), and QRhiVulkan::trackedRegisterTexture().

+ Here is the caller graph for this function:

◆ toVkMipmapMode()

static VkSamplerMipmapMode toVkMipmapMode ( QRhiSampler::Filter f)
inlinestatic

Definition at line 5764 of file qrhivulkan.cpp.

References QRhiSampler::Linear, QRhiSampler::Nearest, and QRhiSampler::None.

Referenced by QVkSampler::create().

+ Here is the caller graph for this function:

◆ toVkPipelineStage() [1/2]

static VkPipelineStageFlags toVkPipelineStage ( QRhiPassResourceTracker::BufferStage stage)
inlinestatic

◆ toVkPipelineStage() [2/2]

◆ toVkPolygonMode()

static VkPolygonMode toVkPolygonMode ( QRhiGraphicsPipeline::PolygonMode mode)
inlinestatic

Definition at line 6048 of file qrhivulkan.cpp.

References QRhiGraphicsPipeline::Fill, and QRhiGraphicsPipeline::Line.

Referenced by QVkGraphicsPipeline::create().

+ Here is the caller graph for this function:

◆ toVkShaderStage()

static VkShaderStageFlagBits toVkShaderStage ( QRhiShaderStage::Type type)
inlinestatic

Definition at line 5792 of file qrhivulkan.cpp.

References QRhiShaderStage::Compute, QRhiShaderStage::Fragment, QRhiShaderStage::Geometry, QRhiShaderStage::TessellationControl, QRhiShaderStage::TessellationEvaluation, and QRhiShaderStage::Vertex.

Referenced by QVkGraphicsPipeline::create().

+ Here is the caller graph for this function:

◆ toVkShaderStageFlags()

static VkShaderStageFlags toVkShaderStageFlags ( QRhiShaderResourceBinding::StageFlags stage)
inlinestatic

Definition at line 6099 of file qrhivulkan.cpp.

References QRhiShaderResourceBinding::ComputeStage, QRhiShaderResourceBinding::FragmentStage, QRhiShaderResourceBinding::GeometryStage, QRhiShaderResourceBinding::TessellationControlStage, QRhiShaderResourceBinding::TessellationEvaluationStage, and QRhiShaderResourceBinding::VertexStage.

Referenced by QVkShaderResourceBindings::create().

+ Here is the caller graph for this function:

◆ toVkStencilOp()

static VkStencilOp toVkStencilOp ( QRhiGraphicsPipeline::StencilOp op)
inlinestatic

Definition at line 6024 of file qrhivulkan.cpp.

References QRhiGraphicsPipeline::DecrementAndClamp, QRhiGraphicsPipeline::DecrementAndWrap, QRhiGraphicsPipeline::IncrementAndClamp, QRhiGraphicsPipeline::IncrementAndWrap, QRhiGraphicsPipeline::Invert, QRhiGraphicsPipeline::Keep, QRhiGraphicsPipeline::Replace, and QRhiGraphicsPipeline::StencilZero.

Referenced by fillVkStencilOpState().

+ Here is the caller graph for this function:

◆ toVkTextureCompareOp()

static VkCompareOp toVkTextureCompareOp ( QRhiSampler::CompareOp op)
inlinestatic

Definition at line 6117 of file qrhivulkan.cpp.

References QRhiSampler::Always, QRhiSampler::Equal, QRhiSampler::Greater, QRhiSampler::GreaterOrEqual, QRhiSampler::Less, QRhiSampler::LessOrEqual, QRhiSampler::Never, and QRhiSampler::NotEqual.

Referenced by QVkSampler::create().

+ Here is the caller graph for this function:

◆ toVkTextureFormat()

◆ toVkTextureUsageState()

static QVkTexture::UsageState toVkTextureUsageState ( QRhiPassResourceTracker::UsageState usage)
inlinestatic

Definition at line 4547 of file qrhivulkan.cpp.

References QVkTexture::UsageState::access, QVkTexture::UsageState::layout, and QVkTexture::UsageState::stage.

Referenced by QRhiVulkan::recordTransitionPassResources().

+ Here is the caller graph for this function:

◆ toVkTopology()

static VkPrimitiveTopology toVkTopology ( QRhiGraphicsPipeline::Topology t)
inlinestatic

Definition at line 5874 of file qrhivulkan.cpp.

References QRhiGraphicsPipeline::Lines, QRhiGraphicsPipeline::LineStrip, QRhiGraphicsPipeline::Patches, QRhiGraphicsPipeline::Points, QRhiGraphicsPipeline::TriangleFan, QRhiGraphicsPipeline::Triangles, and QRhiGraphicsPipeline::TriangleStrip.

Referenced by QVkGraphicsPipeline::create().

+ Here is the caller graph for this function:

◆ toVmaAllocation()

static VmaAllocation toVmaAllocation ( QVkAlloc a)
inlinestatic

◆ toVmaAllocator()

◆ wrap_vkGetDeviceProcAddr()

static VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL wrap_vkGetDeviceProcAddr ( VkDevice device,
const char * pName )
static

Definition at line 299 of file qrhivulkan.cpp.

References device, and globalVulkanInstance.

◆ wrap_vkGetInstanceProcAddr()

static VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL wrap_vkGetInstanceProcAddr ( VkInstance ,
const char * pName )
static

Definition at line 294 of file qrhivulkan.cpp.

References globalVulkanInstance.

Variable Documentation

◆ count

int count

Definition at line 4238 of file qrhivulkan.cpp.

◆ globalVulkanInstance

QVulkanInstance* globalVulkanInstance
static

◆ mask

VkSampleCountFlagBits mask

Definition at line 4237 of file qrhivulkan.cpp.

◆ [struct]

struct { ... } qvk_sampleCounts[]
Initial value:
= {
{ VK_SAMPLE_COUNT_1_BIT, 1 },
{ VK_SAMPLE_COUNT_2_BIT, 2 },
{ VK_SAMPLE_COUNT_4_BIT, 4 },
{ VK_SAMPLE_COUNT_8_BIT, 8 },
{ VK_SAMPLE_COUNT_16_BIT, 16 },
{ VK_SAMPLE_COUNT_32_BIT, 32 },
{ VK_SAMPLE_COUNT_64_BIT, 64 }
}

Referenced by QRhiVulkan::effectiveSampleCountBits(), and QRhiVulkan::supportedSampleCounts().