このページでは

Qt3DRender::QRenderStateSet Class

class Qt3DRender::QRenderStateSet

「QRenderStateSet」FrameGraph ノードを使用すると、フレームグラフの分岐の実行中に適用されるQRenderState オブジェクトのセットを指定することができます。詳細...

ヘッダー: #include <qrenderstateset.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
QML内: RenderStateSet
継承元: Qt3DRender::QFrameGraphNode
ステータス: 非推奨

このクラスは非推奨です。新しいコードでの使用は強く推奨しません。

パブリック関数

void addRenderState(Qt3DRender::QRenderState *state)
void removeRenderState(Qt3DRender::QRenderState *state)
QList<Qt3DRender::QRenderState *> renderStates() const

詳細な説明

QRenderPass で設定可能なマテリアルごとの状態とは異なり、QRenderStateSetに設定された状態はグローバルに適用されます。デフォルトでは、空のQRenderStateSetを使用すると、実行時にすべてのレンダリング状態が無効になります。QRenderState の状態を追加すると、実行時にそのレンダリング状態が明示的に有効になります。

RenderStateSet は、アクティブなフレームグラフに追加されると有効になります:

// using namespace Qt3DRender;

Qt3DCore::QEntity *rootEntity = new Qt3DCore::QEntity();

QRenderSettings *renderSettings = new QRenderSettings();

QViewport *viewport = new QViewport();
QCameraSelector *cameraSelector = new QCameraSelector(viewport);

QClearBuffers *clearBuffers = new QClearBuffers(cameraSelector);
clearBuffers->setBuffers(QClearBuffers::ColorDepthBuffer);

QRenderStateSet *renderStateSet = new QRenderStateSet(cameraSelector);
QCullFace *cullFace = new QCullFace(renderStateSet);
cullFace->setMode(QCullFace::Front);
renderStateSet->addRenderState(cullFace);

renderSettings->setActiveFrameGraph(viewport);

rootEntity->addComponent(renderSettings);

「 QRenderState 」および「QRenderPass 」も参照してください 。

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

void QRenderStateSet::addRenderState(Qt3DRender::QRenderState *state)

QRenderStateSet インスタンスに、新しいQRenderState「state 」を追加します。

注: QRenderStateSet インスタンスにQRenderStateの状態を何も設定しない場合 、レンダリング時にすべてのレンダリング状態が無効になります。

void QRenderStateSet::removeRenderState(Qt3DRender::QRenderState *state)

QRenderStateSet インスタンスからQRenderStateのstate を削除します。

QList<Qt3DRender::QRenderState *> QRenderStateSet::renderStates() const

QRenderStateSet インスタンスを構成するQRenderStateオブジェクトのリストを返します。

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