QAlphaCoverage Class | Qt 3D 5.12.5

Qt 5.12 | Qt 3D | C++ Classes | QAlphaCoverage

Qt 5.12.5 Reference Documentation

# QAlphaCoverage Class

(Qt3DRender::QAlphaCoverage)

Enable alpha-to-coverage multisampling mode. More...

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

- List of all members, including inherited members
- Obsolete members

## Public Functions

| QAlphaCoverage(Qt3DCore::QNode *parent = nullptr)

- 13 public functions inherited from Qt3DCore::QNode
- 31 public functions inherited from QObject

## Static Public Members

const QMetaObject | staticMetaObject

- 9 static public members inherited from QObject

### Additional Inherited Members

- 3 properties inherited from Qt3DCore::QNode
- 1 property inherited from QObject
- 3 public slots inherited from Qt3DCore::QNode
- 1 public slot inherited from QObject
- 4 signals inherited from Qt3DCore::QNode
- 2 signals inherited from QObject
- 2 protected functions inherited from Qt3DCore::QNode
- 9 protected functions inherited from QObject

## Detailed Description

Enable alpha-to-coverage multisampling mode.

A Qt3DRender::QAlphaCoverage class enables alpha-to-coverage multisampling mode. When enabled, the fragment alpha value is used as a coverage for the sample and combined with fragment coverage value. Qt3DRender::QAlphaCoverage does nothing if multisampling is disabled. Alpha-to-coverage is most useful when order independent blending is required, for example when rendering leaves, grass and other rich vegetation.

It can be added to a QRenderPass by calling QRenderPass::addRenderState():

      QRenderPass *renderPass = new QRenderPass();

      // Create a alpha coverage render state
      QAlphaCoverage *alphaCoverage = new QAlphaCoverage();
      QMultiSampleAntiAliasing *multiSampleAntialiasing = new QMultiSampleAntiAliasing();

      // Add the render states to the render pass
      renderPass->addRenderState(alphaCoverage);
      renderPass->addRenderState(multiSampleAntialiasing);

Or to a QRenderStateSet by calling QRenderStateSet::addRenderState():

      QRenderStateSet *renderStateSet = new QRenderStateSet();

      // Create a alpha coverage render state
      QAlphaCoverage *alphaCoverage = new QAlphaCoverage();
      QMultiSampleAntiAliasing *multiSampleAntialiasing = new QMultiSampleAntiAliasing();

      // Add the render states to the render state set
      renderStateSet->addRenderState(alphaCoverage);
      renderStateSet->addRenderState(multiSampleAntialiasing);

See also Qt3DRender::QMultiSampleAntiAliasing.

## Member Function Documentation

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

The constructor creates a new QAlphaCoverage::QAlphaCoverage instance with the specified parent.