QtBase  v6.3.1
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
TriangleRenderer Class Reference

#include <trianglerenderer.h>

Inheritance diagram for TriangleRenderer:
Inheritance graph
[legend]
Collaboration diagram for TriangleRenderer:
Collaboration graph
[legend]

Public Member Functions

 TriangleRenderer (QVulkanWindow *w, bool msaa=false)
 
void initResources () override
 
void initSwapChainResources () override
 
void releaseSwapChainResources () override
 
void releaseResources () override
 
void startNextFrame () override
 
void setRhi (QRhi *r)
 
void setSampleCount (int samples)
 
int sampleCount () const
 
void setTranslation (const QVector3D &v)
 
void setScale (float f)
 
void setDepthWrite (bool enable)
 
void setColorAttCount (int count)
 
QRhiGraphicsPipelinepipeline () const
 
void initResources (QRhiRenderPassDescriptor *rp)
 
void releaseResources ()
 
void resize (const QSize &pixelSize)
 
void queueResourceUpdates (QRhiResourceUpdateBatch *resourceUpdates)
 
void queueDraw (QRhiCommandBuffer *cb, const QSize &outputSizeInPixels)
 

Protected Member Functions

VkShaderModule createShader (const QString &name)
 

Protected Attributes

QVulkanWindowm_window
 
QVulkanDeviceFunctionsm_devFuncs
 
VkDeviceMemory m_bufMem = VK_NULL_HANDLE
 
VkBuffer m_buf = VK_NULL_HANDLE
 
VkDescriptorBufferInfo m_uniformBufInfo [QVulkanWindow::MAX_CONCURRENT_FRAME_COUNT]
 
VkDescriptorPool m_descPool = VK_NULL_HANDLE
 
VkDescriptorSetLayout m_descSetLayout = VK_NULL_HANDLE
 
VkDescriptorSet m_descSet [QVulkanWindow::MAX_CONCURRENT_FRAME_COUNT]
 
VkPipelineCache m_pipelineCache = VK_NULL_HANDLE
 
VkPipelineLayout m_pipelineLayout = VK_NULL_HANDLE
 
VkPipeline m_pipeline = VK_NULL_HANDLE
 
QMatrix4x4 m_proj
 
float m_rotation = 0.0f
 

Detailed Description

Definition at line 53 of file trianglerenderer.h.

Constructor & Destructor Documentation

◆ TriangleRenderer()

TriangleRenderer::TriangleRenderer ( QVulkanWindow w,
bool  msaa = false 
)

Definition at line 72 of file trianglerenderer.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ createShader()

VkShaderModule TriangleRenderer::createShader ( const QString name)
protected

Definition at line 88 of file trianglerenderer.cpp.

Here is the call graph for this function:

◆ initResources() [1/2]

void TriangleRenderer::initResources ( )
override

Definition at line 113 of file trianglerenderer.cpp.

◆ initResources() [2/2]

void TriangleRenderer::initResources ( QRhiRenderPassDescriptor rp)

Definition at line 72 of file trianglerenderer.cpp.

Here is the call graph for this function:

◆ initSwapChainResources()

void TriangleRenderer::initSwapChainResources ( )
override

Definition at line 391 of file trianglerenderer.cpp.

Here is the call graph for this function:

◆ pipeline()

QRhiGraphicsPipeline* TriangleRenderer::pipeline ( ) const
inline

Definition at line 66 of file trianglerenderer.h.

◆ queueDraw()

void TriangleRenderer::queueDraw ( QRhiCommandBuffer cb,
const QSize outputSizeInPixels 
)

Definition at line 194 of file trianglerenderer.cpp.

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

◆ queueResourceUpdates()

void TriangleRenderer::queueResourceUpdates ( QRhiResourceUpdateBatch resourceUpdates)

Definition at line 157 of file trianglerenderer.cpp.

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

◆ releaseResources() [1/2]

void TriangleRenderer::releaseResources ( )

◆ releaseResources() [2/2]

void TriangleRenderer::releaseResources ( )
override

Definition at line 407 of file trianglerenderer.cpp.

Here is the caller graph for this function:

◆ releaseSwapChainResources()

void TriangleRenderer::releaseSwapChainResources ( )
override

Definition at line 402 of file trianglerenderer.cpp.

◆ resize()

void TriangleRenderer::resize ( const QSize pixelSize)

Definition at line 135 of file trianglerenderer.cpp.

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

◆ sampleCount()

int TriangleRenderer::sampleCount ( ) const
inline

Definition at line 61 of file trianglerenderer.h.

◆ setColorAttCount()

void TriangleRenderer::setColorAttCount ( int  count)
inline

Definition at line 65 of file trianglerenderer.h.

◆ setDepthWrite()

void TriangleRenderer::setDepthWrite ( bool  enable)
inline

Definition at line 64 of file trianglerenderer.h.

◆ setRhi()

void TriangleRenderer::setRhi ( QRhi r)
inline

Definition at line 59 of file trianglerenderer.h.

◆ setSampleCount()

void TriangleRenderer::setSampleCount ( int  samples)
inline

Definition at line 60 of file trianglerenderer.h.

◆ setScale()

void TriangleRenderer::setScale ( float  f)
inline

Definition at line 63 of file trianglerenderer.h.

◆ setTranslation()

void TriangleRenderer::setTranslation ( const QVector3D v)
inline

Definition at line 62 of file trianglerenderer.h.

◆ startNextFrame()

void TriangleRenderer::startNextFrame ( )
override

Definition at line 449 of file trianglerenderer.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ m_buf

VkBuffer TriangleRenderer::m_buf = VK_NULL_HANDLE
protected

Definition at line 72 of file trianglerenderer.h.

◆ m_bufMem

VkDeviceMemory TriangleRenderer::m_bufMem = VK_NULL_HANDLE
protected

Definition at line 71 of file trianglerenderer.h.

◆ m_descPool

VkDescriptorPool TriangleRenderer::m_descPool = VK_NULL_HANDLE
protected

Definition at line 75 of file trianglerenderer.h.

◆ m_descSet

VkDescriptorSet TriangleRenderer::m_descSet[QVulkanWindow::MAX_CONCURRENT_FRAME_COUNT]
protected

Definition at line 77 of file trianglerenderer.h.

◆ m_descSetLayout

VkDescriptorSetLayout TriangleRenderer::m_descSetLayout = VK_NULL_HANDLE
protected

Definition at line 76 of file trianglerenderer.h.

◆ m_devFuncs

QVulkanDeviceFunctions* TriangleRenderer::m_devFuncs
protected

Definition at line 69 of file trianglerenderer.h.

◆ m_pipeline

VkPipeline TriangleRenderer::m_pipeline = VK_NULL_HANDLE
protected

Definition at line 81 of file trianglerenderer.h.

◆ m_pipelineCache

VkPipelineCache TriangleRenderer::m_pipelineCache = VK_NULL_HANDLE
protected

Definition at line 79 of file trianglerenderer.h.

◆ m_pipelineLayout

VkPipelineLayout TriangleRenderer::m_pipelineLayout = VK_NULL_HANDLE
protected

Definition at line 80 of file trianglerenderer.h.

◆ m_proj

QMatrix4x4 TriangleRenderer::m_proj
protected

Definition at line 83 of file trianglerenderer.h.

◆ m_rotation

float TriangleRenderer::m_rotation = 0.0f
protected

Definition at line 84 of file trianglerenderer.h.

◆ m_uniformBufInfo

VkDescriptorBufferInfo TriangleRenderer::m_uniformBufInfo[QVulkanWindow::MAX_CONCURRENT_FRAME_COUNT]
protected

Definition at line 73 of file trianglerenderer.h.

◆ m_window

QVulkanWindow* TriangleRenderer::m_window
protected

Definition at line 68 of file trianglerenderer.h.


The documentation for this class was generated from the following files: