QSetFence Class

class Qt3DRender::QSetFence

FrameGraphNode グラフィックス・コマンド・ストリームにフェンスを挿入するために使用します。詳細...

ヘッダー #include <QSetFence>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
を継承する: Qt3DRender::QFrameGraphNode
ステータス非推奨

プロパティ

パブリック機能

QVariant handle() const
Qt3DRender::QSetFence::HandleType handleType() const

シグナル

void handleChanged(QVariant handle)
void handleTypeChanged(Qt3DRender::QSetFence::HandleType handleType)

詳細説明

フェンスによってGPUとCPUのワークロードを同期させることができます。GPUコマンドは通常ノンブロッキングです。コマンドは発行されるとコマンドバッファに挿入され、後でGPUによって読み込まれます。場合によっては、ハード ウェアによってコマンドが実行されたことを確認したときだけ、処理を続行し たり、特定のコマンドを発行したりしたいことがあります。フェンスはそのための方法です。これは、Qt3Dでサードパーティのエンジンを使用する場合に特に重要で、Qt3Dは、他のエンジンのコマンドがリソースを変更し終わったことが分かっている場合にのみ、共有リソースにアクセスする必要があります。

QSetFenceはコマンドストリームにフェンスを挿入するFrameGraphノードです。これは、QWaitFence と組み合わせて使用するか、基礎となるハンドルを抽出して使用することができます。

ハンドル プロパティは、レンダラーが基礎となるフェンス リソースを作成すると更新されます。ハンドルは、未シグナル状態である限り有効です。シグナル状態になると、ハンドルは破棄され、新しいハンドルが作成されます。つまり、フェンスがシグナルされるまでの時間によっては、同じハンドルが数フレームにわたって使用される可能性があります。

プロパティ・ドキュメント

[read-only] handle : const QVariant

QVariant に包まれたフェンス・ハンドルを保持する。

アクセス関数:

QVariant handle() const

通知シグナル:

void handleChanged(QVariant handle)

[read-only] handleType : const HandleType

使用するハンドルの種類を指定する。現在はOpenGL Fence IDのみがサポートされている。

アクセス関数:

Qt3DRender::QSetFence::HandleType handleType() const

Notifierシグナル:

void handleTypeChanged(Qt3DRender::QSetFence::HandleType handleType)

© 2025 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.