5#include <QtQuick3DRuntimeRender/private/qssgrhiquadrenderer_p.h>
45 constexpr int vertexCount = 8;
46 m_vbuf = std::make_shared<QSSGRhiBuffer>(*rhiCtx,
50 5 * vertexCount *
sizeof(
float));
52 float buf[5 * vertexCount];
54 for (
int i = 0;
i < vertexCount; ++
i) {
64 m_ibuf = std::make_shared<QSSGRhiBuffer>(*rhiCtx,
79 ensureBuffers(rhiCtx, rub);
124 cb->setGraphicsPipeline(pipeline);
125 cb->setShaderResources(srb);
132 cb->setVertexInput(0, 1, &vb, m_ibuf->buffer(), m_ibuf->indexFormat());
153 ensureBuffers(rhiCtx, rub);
189 cb->setGraphicsPipeline(pipeline);
190 cb->setShaderResources(srb);
195 cb->setVertexInput(0, 1, &vb, m_ibuf->buffer(), m_ibuf->indexFormat());
204 constexpr int vertexCount = 8;
205 m_vbuf = std::make_shared<QSSGRhiBuffer>(*rhiCtx,
209 3 * vertexCount *
sizeof(
float));
212 float buf[3 * vertexCount];
214 for (
int i = 0;
i < vertexCount; ++
i) {
222 m_ibuf = std::make_shared<QSSGRhiBuffer>(*rhiCtx,
QPair< QRhiBuffer *, quint32 > VertexInput
Synonym for QPair<QRhiBuffer *, quint32>.
void resourceUpdate(QRhiResourceUpdateBatch *resourceUpdates)
Sometimes committing resource updates is necessary or just more convenient without starting a render ...
QRhiRenderPassDescriptor * renderPassDescriptor() const
void uploadStaticBuffer(QRhiBuffer *buf, quint32 offset, quint32 size, const void *data)
Enqueues updating a region of a QRhiBuffer buf created with the type QRhiBuffer::Immutable or QRhiBuf...
QRhiResourceUpdateBatch * nextResourceUpdateBatch()
QRhiCommandBuffer * commandBuffer() const
static QRhiCommandBuffer::BeginPassFlags commonPassFlags()
QRhiGraphicsPipeline * pipeline(const QSSGGraphicsPipelineStateKey &key, QRhiRenderPassDescriptor *rpDesc, QRhiShaderResourceBindings *srb)
void prepareCube(QSSGRhiContext *rhiCtx, QRhiResourceUpdateBatch *maybeRub)
void recordRenderCube(QSSGRhiContext *rhiCtx, QSSGRhiGraphicsPipelineState *ps, QRhiShaderResourceBindings *srb, QRhiRenderPassDescriptor *rpDesc, QSSGRhiQuadRenderer::Flags flags)
void recordRenderQuadPass(QSSGRhiContext *rhiCtx, QSSGRhiGraphicsPipelineState *ps, QRhiShaderResourceBindings *srb, QRhiTextureRenderTarget *rt, Flags flags)
void recordRenderQuad(QSSGRhiContext *rhiCtx, QSSGRhiGraphicsPipelineState *ps, QRhiShaderResourceBindings *srb, QRhiRenderPassDescriptor *rpDesc, Flags flags)
void prepareQuad(QSSGRhiContext *rhiCtx, QRhiResourceUpdateBatch *maybeRub)
The QVector2D class represents a vector or vertex in 2D space.
constexpr float y() const noexcept
Returns the y coordinate of this point.
constexpr float x() const noexcept
Returns the x coordinate of this point.
The QVector3D class represents a vector or vertex in 3D space.
constexpr float y() const noexcept
Returns the y coordinate of this point.
constexpr float x() const noexcept
Returns the x coordinate of this point.
constexpr float z() const noexcept
Returns the z coordinate of this point.
Combined button and popup list for selecting options.
#define QByteArrayLiteral(str)
GLenum GLuint GLenum GLsizei const GLchar * buf
#define Q_QUICK3D_PROFILE_START(Type)
#define Q_QUICK3D_PROFILE_END_WITH_STRING(Type, Payload, Str)
#define QSSGRHICTX_STAT(ctx, f)
static QT_BEGIN_NAMESPACE const QVector3D g_fullScreenRectFaces[]
static const QVector2D g_fullScreenRectUVs[]
static const quint16 g_rectIndex[]
SSL_CTX int(* cb)(SSL *ssl, unsigned char **out, unsigned char *outlen, const unsigned char *in, unsigned int inlen, void *arg)
static QSSGGraphicsPipelineStateKey create(const QSSGRhiGraphicsPipelineState &state, const QRhiRenderPassDescriptor *rpDesc, const QRhiShaderResourceBindings *srb)
QSSGRhiInputAssemblerState ia
QRhiGraphicsPipeline::CullMode cullMode
QRhiGraphicsPipeline::TargetBlend targetBlend