QRenderStateSet#
The QRenderStateSet
FrameGraph
node offers a way of specifying a set of QRenderState
objects to be applied during the execution of a framegraph branch. More…
Synopsis#
Functions#
def
addRenderState
(state)def
removeRenderState
(state)def
renderStates
()
Note
This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE
Detailed Description#
States set on a QRenderStateSet
are set globally, contrary to the per-material states that can be set on a QRenderPass
. By default, an empty QRenderStateSet
will result in all render states being disabled when executed. Adding a QRenderState
state explicitly enables that render state at runtime.
The RenderStateSet is enabled when added to the active frame graph:
// 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);See also
QRenderState
QRenderPass
- class PySide6.Qt3DRender.Qt3DRender.QRenderStateSet([parent=None])#
- Parameters:
parent –
PySide6.Qt3DCore.Qt3DCore.QNode
- PySide6.Qt3DRender.Qt3DRender.QRenderStateSet.addRenderState(state)#
- Parameters:
Adds a new QRenderState
state
to the QRenderStateSet
instance.
Note
Not setting any QRenderState
state on a QRenderStateSet
instance implies all the render states will be disabled at render time.
- PySide6.Qt3DRender.Qt3DRender.QRenderStateSet.removeRenderState(state)#
- Parameters:
Removes the QRenderState
state
from the QRenderStateSet
instance.
- PySide6.Qt3DRender.Qt3DRender.QRenderStateSet.renderStates()#
Returns the list of QRenderState
objects that compose the QRenderStateSet
instance.