QAlphaCoverage Class

class Qt3DRender::QAlphaCoverage

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

Header: #include <QAlphaCoverage>
Instantiated By: AlphaCoverage
Inherits: Qt3DRender::QRenderState

Public Functions

virtual ~QAlphaCoverage()

Detailed Description

\since5.7 \ingroup renderstates \inmodule Qt3DRender

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

[virtual noexcept] QAlphaCoverage::~QAlphaCoverage()

\internal