diff options
-rw-r--r-- | src/gui/rhi/qrhi.cpp | 13 | ||||
-rw-r--r-- | src/gui/rhi/qrhi_p.h | 3 |
2 files changed, 14 insertions, 2 deletions
diff --git a/src/gui/rhi/qrhi.cpp b/src/gui/rhi/qrhi.cpp index b29e9bc8f5..786479fccd 100644 --- a/src/gui/rhi/qrhi.cpp +++ b/src/gui/rhi/qrhi.cpp @@ -1610,6 +1610,16 @@ QRhiTextureSubresourceUploadDescription::QRhiTextureSubresourceUploadDescription } /*! + Constructs a mip level description with the image data specified by \a data. This is suitable + for floating point and compressed formats as well. + */ +QRhiTextureSubresourceUploadDescription::QRhiTextureSubresourceUploadDescription( + const QByteArray &data) + : m_data(data) +{ +} + +/*! \class QRhiTextureUploadEntry \internal \inmodule QtGui @@ -5002,7 +5012,8 @@ void QRhiResourceUpdateBatch::uploadTexture(QRhiTexture *tex, const QRhiTextureU */ void QRhiResourceUpdateBatch::uploadTexture(QRhiTexture *tex, const QImage &image) { - uploadTexture(tex, QRhiTextureUploadEntry(0, 0, image)); + uploadTexture(tex, + QRhiTextureUploadEntry(0, 0, QRhiTextureSubresourceUploadDescription(image))); } /*! diff --git a/src/gui/rhi/qrhi_p.h b/src/gui/rhi/qrhi_p.h index fc3034c984..14ea81abec 100644 --- a/src/gui/rhi/qrhi_p.h +++ b/src/gui/rhi/qrhi_p.h @@ -505,8 +505,9 @@ class Q_GUI_EXPORT QRhiTextureSubresourceUploadDescription { public: QRhiTextureSubresourceUploadDescription() = default; - QRhiTextureSubresourceUploadDescription(const QImage &image); + explicit QRhiTextureSubresourceUploadDescription(const QImage &image); QRhiTextureSubresourceUploadDescription(const void *data, int size); + explicit QRhiTextureSubresourceUploadDescription(const QByteArray &data); QImage image() const { return m_image; } void setImage(const QImage &image) { m_image = image; } |