Learn what Felgo offers to help your business succeed. Start your free evaluation today! Felgo for Your Business

QDepthTest Class

class Qt3DRender::QDepthTest

The QDepthTest class tests the fragment shader's depth value against the depth of a sample being written to. More...

Header: #include <QDepthTest>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
Since: Qt 5.7
Instantiated By: DepthTest
Inherits: Qt3DRender::QRenderState

Public Types

enum DepthFunction { Never, Always, Less, LessOrEqual, Equal, …, NotEqual }


Public Functions

QDepthTest(Qt3DCore::QNode *parent = nullptr)
Qt3DRender::QDepthTest::DepthFunction depthFunction() const

Public Slots

void setDepthFunction(Qt3DRender::QDepthTest::DepthFunction depthFunction)


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.

Qt_Technology_Partner_RGB_475 Qt_Service_Partner_RGB_475_padded