QRenderStateSet Class
class Qt3DRender::QRenderStateSetQRenderStateSetFrameGraph ノードは、フレームグラフ分岐の実行中に適用されるQRenderState オブジェクトのセットを指定する方法を提供します。詳細...
Header: | #include <QRenderStateSet> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
qmake: | QT += 3drender |
In QML: | RenderStateSet |
Inherits: | Qt3DRender::QFrameGraphNode |
Status: | Deprecated |
パブリック関数
void | addRenderState(Qt3DRender::QRenderState *state) |
void | removeRenderState(Qt3DRender::QRenderState *state) |
QList<Qt3DRender::QRenderState *> | renderStates() const |
詳細説明
QRenderStateSet に設定された状態は、QRenderPass に設定できるマテリアルごとの状態とは逆に、グローバルに設定されます。 デフォルトでは、空の 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 オブジェクトのリストを返します。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。