QDepthTest Class
class Qt3DRender::QDepthTestThe QDepthTest class tests the fragment shader's depth value against the depth of a sample being written to. More...
Header: | #include <QDepthTest> |
qmake: | QT += 3drender |
Since: | Qt 5.7 |
Instantiated By: | DepthTest |
Inherits: | Qt3DRender::QRenderState |
This class was introduced in Qt 5.7.
Public Types
enum | DepthFunction { Never, Always, Less, LessOrEqual, Equal, …, NotEqual } |
Properties
- depthFunction : DepthFunction
Public Functions
QDepthTest(Qt3DCore::QNode *parent = nullptr) | |
Qt3DRender::QDepthTest::DepthFunction | depthFunction() const |
Public Slots
void | setDepthFunction(Qt3DRender::QDepthTest::DepthFunction depthFunction) |
Signals
void | depthFunctionChanged(Qt3DRender::QDepthTest::DepthFunction depthFunction) |
Detailed Description
A QDepthTest class is used to enable depth testing with a given depth test function. The depth test enables writing fragment color values when the depth test passes, and reject fragments which fail the test. The depth test uses the depth function to test the fragments depth value to the value against z-buffer. If the underlying surface does not have z-buffer, then QDepthTest does nothing.
See also QAlphaTest and QStencilTest.
Member Type Documentation
enum QDepthTest::DepthFunction
Enumeration for the depth function values
Constant | Value | Description |
---|---|---|
Qt3DRender::QDepthTest::Never | 0x0200 | Never pass depth test |
Qt3DRender::QDepthTest::Always | 0x0207 | Always pass depth test |
Qt3DRender::QDepthTest::Less | 0x0201 | Pass depth test if fragment depth is less than z-buffer value |
Qt3DRender::QDepthTest::LessOrEqual | 0x0203 | Pass depth test if fragment depth is less than or equal to z-buffer value |
Qt3DRender::QDepthTest::Equal | 0x0202 | Pass depth test if fragment depth is equal to z-buffer value |
Qt3DRender::QDepthTest::GreaterOrEqual | 0x0206 | Pass depth test if fragment depth is greater than or equal to z-buffer value |
Qt3DRender::QDepthTest::Greater | 0x0204 | Pass depth test if fragment depth is greater than z-buffer value |
Qt3DRender::QDepthTest::NotEqual | 0x0205 | Pass depth test if fragment depth is not equal to z-buffer value |
Property Documentation
depthFunction : DepthFunction
Holds the current function used by depth test. The default is Never.
Access functions:
Qt3DRender::QDepthTest::DepthFunction | depthFunction() const |
void | setDepthFunction(Qt3DRender::QDepthTest::DepthFunction depthFunction) |
Notifier signal:
void | depthFunctionChanged(Qt3DRender::QDepthTest::DepthFunction depthFunction) |
Member Function Documentation
QDepthTest::QDepthTest(Qt3DCore::QNode *parent = nullptr)
The constructor creates a new QDepthTest::QDepthTest instance with the specified parent.