このページでは

QRhiReadbackDescription Class

(場合によってはGPU専用メモリから)テクスチャの内容を読み戻す(リードバック)操作について説明します。詳細...

ヘッダー: #include <rhi/qrhi.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS GuiPrivate)
target_link_libraries(mytarget PRIVATE Qt6::GuiPrivate)
qmake: QT += gui-private
以下のように: Qt 6.6

パブリック関数

QRhiReadbackDescription()
QRhiReadbackDescription(QRhiTexture *texture)
int layer() const
int level() const
(since 6.10) QRect rect() const
void setLayer(int layer)
void setLevel(int level)
(since 6.10) void setRect(const QRect &rectangle)
void setTexture(QRhiTexture *tex)
QRhiTexture *texture() const

詳細な説明

リードバック操作のソースは、QRhiTexture か、現在ターゲットに設定されているQRhiSwapChain の現在のバックバッファのいずれかです。texture() が設定されていない場合は、スワップチェーンが使用されます。それ以外の場合は、指定されたQRhiTexture がソースとして扱われます。

注: リードバックで使用されるテクスチャは 、QRhiTexture::UsedAsTransferSource を使用して作成されている必要があります。

注: リードバックで使用されるスワップチェーンは 、QRhiSwapChain::UsedAsTransferSource で作成されたものでなければなりません。

layer() およびlevel() は、ソースがQRhiTexture の場合にのみ適用されます。

注:マルチサンプル テクスチャは読み戻すことができません。ただし、マルチサンプルスワップチェーンバッファについては、読み戻しがサポートされています。

注:これは 互換性の保証が限定的な RHI API です。詳細については、QRhi を参照してください。

メンバ関数のドキュメント

[constexpr noexcept default] QRhiReadbackDescription::QRhiReadbackDescription()

空のテクスチャ・リードバック記述を構築します。

注:ソーステクスチャは デフォルトでnullに設定されますが、これは依然として有効な読み戻しです。これは、現在のスワップチェーンのバックバッファを読み戻すことを指定しています。(「現在」とは、texture readback が設定されたQRhiResourceUpdateBatch をコミットした時点での、そのフレームのターゲットスワップチェーンを指します)

QRhiReadbackDescription::QRhiReadbackDescription(QRhiTexture *texture)

texture のレイヤー0のレベル0を読み戻すことを指定する、テクスチャ読み戻し記述を構築します。

注: texture は null である場合もあり、その場合はこのコンストラクタは引数なしのバージョンと同一になります。

int QRhiReadbackDescription::layer() const

現在設定されている配列レイヤー(キューブマップの面、配列インデックス)を返します。デフォルト値は 0 です。

読み戻しのソースがQRhiTexture である場合にのみ適用されます。

setLayer()も参照してください 。

int QRhiReadbackDescription::level() const

現在設定されているミップレベルを返します。デフォルトは 0 です。

読み取り元のソースがQRhiTexture である場合にのみ適用されます。

setLevel()も参照してください 。

[since 6.10] QRect QRhiReadbackDescription::rect() const

読み戻す矩形を返します。デフォルトは無効な矩形です。

無効な場合、テクスチャまたはスワップチェーンのバックバッファ全体が読み戻されます。

この関数は Qt 6.10 で導入されました。

setRect()も参照してください 。

void QRhiReadbackDescription::setLayer(int layer)

配列 `layer ` を読み戻すように設定します。

layer()も参照してください 。

void QRhiReadbackDescription::setLevel(int level)

読み戻すミップlevel を設定します。

level()も参照してください 。

[since 6.10] void QRhiReadbackDescription::setRect(const QRect &rectangle)

rectangle を読み戻すように設定します。

この関数は Qt 6.10 で導入されました。

rect()も参照してください 。

void QRhiReadbackDescription::setTexture(QRhiTexture *tex)

テクスチャ「tex 」をリードバック操作のソースとして設定します。

nullptr を設定することも可能です。この場合、現在のスワップチェーンのバックバッファが使用されます(ただし、その場合はスワップチェーンに基づかないフレームではリードバックを発行できません)。

注:マルチサンプル テクスチャはリードバックできません。ただし、マルチサンプルスワップチェーンバッファに対するリードバックはサポートされています。

注: リードバックで使用されるテクスチャは 、QRhiTexture::UsedAsTransferSource で作成されている必要があります。

注: リードバックで使用されるスワップチェーンは 、QRhiSwapChain::UsedAsTransferSource で作成されている必要があります。

texture()も参照してください 。

QRhiTexture *QRhiReadbackDescription::texture() const

読み込まれたQRhiTexture を返します。nullptr に設定したままにすることも可能です。これは、代わりに現在のスワップチェーンのバックバッファを使用することを示します。

setTexture()も参照してください 。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.