QSetFence Class

class Qt3DRender::QSetFence

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

Header: #include <QSetFence>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
Inherits: Qt3DRender::QFrameGraphNode
Status: Deprecated

プロパティ

パブリック関数

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

Notifier シグナル:

void handleChanged(QVariant handle)

[read-only] handleType : const HandleType

使用されるハンドルのタイプを指定する。現在のところ、OpenGLフェンスIDのみがサポートされている。

アクセス関数:

Qt3DRender::QSetFence::HandleType handleType() const

ノーティファイアシグナル:

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

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。