5#ifndef QSSG_RENDER_BUFFER_MANAGER_H
6#define QSSG_RENDER_BUFFER_MANAGER_H
19#include <QtQuick3DRuntimeRender/private/qtquick3druntimerenderglobal_p.h>
20#include <QtQuick3DRuntimeRender/private/qssgrenderimagetexture_p.h>
21#include <QtQuick3DRuntimeRender/private/qssgrendermesh_p.h>
22#include <QtQuick3DRuntimeRender/private/qssgrendererutil_p.h>
23#include <QtQuick3DRuntimeRender/private/qssgrendershadercache_p.h>
24#include <QtQuick3DUtils/private/qssgmesh_p.h>
26#include <QtQuick3DUtils/private/qquick3dprofiler_p.h>
28#include <QtCore/QMutex>
94 uint32_t generationId = 0;
100 uint32_t generationId = 0;
117 LoadWithFlippedY = 0x01
126 void releaseCachedResources();
129 MipMode inMipMode = MipModeFollowRenderImage,
130 LoadRenderImageFlags
flags = LoadWithFlippedY);
145 void releaseTextureData(
const CustomImageCacheKey &
key);
147 void commitBufferResourceUpdates();
160 static void unregisterMeshData(
const QString &assetId);
164 QMutex *meshUpdateMutex();
183 enum CreateRhiTextureFlag {
184 ScanForTransparency = 0x01,
192 CreateRhiTextureFlags inFlags,
193 const QString &debugObjectName);
203 void releaseImage(
const ImageCacheKey &
key);
227 return qHash(k.path,
seed) ^ k.mipMode ^ k.type;
232 return a.path ==
b.path &&
a.mipMode ==
b.mipMode &&
a.type ==
b.type;
242 return a.data ==
b.data &&
a.mipMode ==
b.mipMode;
Format
Specifies the texture format.
Class representing 3D range or axis aligned bounding box.
const QHash< ImageCacheKey, ImageData > & getImageMap() const
const QHash< QSGTexture *, ImageData > & getSGImageMap() const
const QHash< CustomImageCacheKey, ImageData > & getCustomTextureMap() const
@ MipModeFollowRenderImage
const QHash< QSSGRenderPath, MeshData > & getMeshMap() const
const QHash< QSSGRenderGeometry *, MeshData > & getCustomMeshMap() const
\macro QT_RESTRICTED_CAST_FROM_ASCII
Combined button and popup list for selecting options.
#define Q_DECLARE_FLAGS(Flags, Enum)
#define Q_DECLARE_OPERATORS_FOR_FLAGS(Flags)
GLboolean GLboolean GLboolean b
GLboolean GLboolean GLboolean GLboolean a
[7]
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
GLint GLsizei GLsizei GLenum format
static Q_CONSTINIT QBasicAtomicInteger< unsigned > seed
bool operator==(const QSSGBufferManager::ImageCacheKey &a, const QSSGBufferManager::ImageCacheKey &b) Q_DECL_NOTHROW
size_t qHash(const QSSGBufferManager::ImageCacheKey &k, size_t seed) Q_DECL_NOTHROW
unsigned long long quint64
static size_t imageDataSize(const xcb_image_t *image)
QSqlQueryModel * model
[16]
QSSGRenderTextureData * data
QHash< QSSGRenderLayer *, uint32_t > usageCounts
QSSGRenderImageTexture renderImageTexture
QSSGMeshProcessingOptions options
QHash< QSSGRenderLayer *, uint32_t > usageCounts
bool isCompatible(const QSSGMeshProcessingOptions &other) const
uint lightmapBaseResolution