QCullFace Class | Qt 3D 5.9

Qt 5.9 | Qt 3D | C++ Classes | QCullFace

Qt 5.9.9 Reference Documentation

# QCullFace Class

(Qt3DRender::QCullFace)

The QCullFace class specifies whether front or back face culling is enabled. More...

Header: | #include <QCullFace>
qmake: | QT += 3drender
Since: | Qt 5.7
Instantiated By: | CullFace
Inherits: | Qt3DRender::QRenderState

- List of all members, including inherited members

## Public Types

enum | CullingMode { NoCulling, Front, Back, FrontAndBack }

## Properties

- mode : CullingMode

- 3 properties inherited from Qt3DCore::QNode

## Public Functions

| QCullFace(Qt3DCore::QNode *parent = nullptr)
CullingMode | mode() const

- 11 public functions inherited from Qt3DCore::QNode

## Public Slots

void | setMode(CullingMode mode)

- 3 public slots inherited from Qt3DCore::QNode

## Signals

void | modeChanged(CullingMode mode)

- 4 signals inherited from Qt3DCore::QNode

### Additional Inherited Members

- 2 protected functions inherited from Qt3DCore::QNode

## Detailed Description

The QCullFace class specifies whether front or back face culling is enabled.

QCullFace sets whether the front or back facets are culled. Facets include triangles, quadrilaterals, polygons and rectangles.

It can be added by calling the addRenderState() method on a QRenderPass:

      // using namespace Qt3DRender;

      QRenderPass *renderPass = new QRenderPass();

      // Create a front face culling render state
      QCullFace *cullFront = new QCullFace();
      cullFront->setMode(QCullFace::Front);

      // Add the render state to the render pass
      renderPass->addRenderState(cullFront);

Or by calling the addRenderState() method on a QRenderStateSet:

      // using namespace Qt3DRender;

      QRenderStateSet *renderStateSet = new QRenderStateSet();

      // Create a front face culling render state
      QCullFace *cullFront = new QCullFace();
      cullFront->setMode(QCullFace::Front);

      // Add the render state to the render pass
      renderStateSet->addRenderState(cullFront);

See also QFrontFace.

## Member Type Documentation

### enum QCullFace::CullingMode

This enumeration specifies values for the culling mode.

Constant | Value | Description
--- | --- | ---
`Qt3DRender::QCullFace::NoCulling` | `0x0` | Culling is disabled
`Qt3DRender::QCullFace::Front` | `0x0404` | Culling is enabled for front facing polygons
`Qt3DRender::QCullFace::Back` | `0x0405` | Culling is enabled for back facing polygons
`Qt3DRender::QCullFace::FrontAndBack` | `0x0408` | Culling is enabled for all polygons, points and lines are drawn

## Property Documentation

### mode : CullingMode

Holds the culling mode used by QCullFace. Default is set to QCullFace.Back.

Access functions:

CullingMode | mode() const
void | setMode(CullingMode mode)

Notifier signal:

void | modeChanged(CullingMode mode)

## Member Function Documentation

### QCullFace::QCullFace(Qt3DCore::QNode *parent = nullptr)

Default constructs an instance of QCullFace.