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

Public Functions

QAlphaCoverage(Qt3DCore::QNode *parent = nullptr)

Additional Inherited Members

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.