QPhongAlphaMaterial Class
(Qt3DExtras::QPhongAlphaMaterial)The QPhongAlphaMaterial class provides a default implementation of the phong lighting effect with alpha. More...
Header: | #include <QPhongAlphaMaterial> |
qmake: | QT += 3dextras |
Since: | Qt 5.7 |
Inherits: | Qt3DRender::QMaterial |
Properties
|
|
- 1 property inherited from Qt3DRender::QMaterial
- 1 property inherited from Qt3DCore::QComponent
- 2 properties inherited from Qt3DCore::QNode
- 1 property inherited from QObject
Public Functions
QPhongAlphaMaterial(Qt3DCore::QNode *parent = nullptr) | |
~QPhongAlphaMaterial() | |
float | alpha() const |
QColor | ambient() const |
Qt3DRender::QBlendEquation::BlendFunction | blendFunctionArg() const |
Qt3DRender::QBlendEquationArguments::Blending | destinationAlphaArg() const |
Qt3DRender::QBlendEquationArguments::Blending | destinationRgbArg() const |
QColor | diffuse() const |
float | shininess() const |
Qt3DRender::QBlendEquationArguments::Blending | sourceAlphaArg() const |
Qt3DRender::QBlendEquationArguments::Blending | sourceRgbArg() const |
QColor | specular() const |
- 4 public functions inherited from Qt3DRender::QMaterial
- 2 public functions inherited from Qt3DCore::QComponent
- 6 public functions inherited from Qt3DCore::QNode
- 31 public functions inherited from QObject
Public Slots
void | setAlpha(float alpha) |
void | setAmbient(const QColor &ambient) |
void | setBlendFunctionArg(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg) |
void | setDestinationAlphaArg(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg) |
void | setDestinationRgbArg(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg) |
void | setDiffuse(const QColor &diffuse) |
void | setShininess(float shininess) |
void | setSourceAlphaArg(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg) |
void | setSourceRgbArg(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg) |
void | setSpecular(const QColor &specular) |
- 1 public slot inherited from Qt3DRender::QMaterial
- 1 public slot inherited from Qt3DCore::QComponent
- 2 public slots inherited from Qt3DCore::QNode
- 1 public slot inherited from QObject
Signals
void | alphaChanged(float alpha) |
void | ambientChanged(const QColor &ambient) |
void | blendFunctionArgChanged(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg) |
void | destinationAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg) |
void | destinationRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg) |
void | diffuseChanged(const QColor &diffuse) |
void | shininessChanged(float shininess) |
void | sourceAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg) |
void | sourceRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg) |
void | specularChanged(const QColor &specular) |
- 1 signal inherited from Qt3DRender::QMaterial
- 1 signal inherited from Qt3DCore::QComponent
- 3 signals inherited from Qt3DCore::QNode
- 2 signals inherited from QObject
Additional Inherited Members
- 1 public variable inherited from QObject
- 10 static public members inherited from QObject
- 2 protected functions inherited from Qt3DCore::QNode
- 9 protected functions inherited from QObject
- 2 protected variables inherited from QObject
Detailed Description
The QPhongAlphaMaterial class provides a default implementation of the phong lighting effect with alpha.
The phong lighting effect is based on the combination of 3 lighting components ambient, diffuse and specular. The relative strengths of these components are controlled by means of their reflectivity coefficients which are modelled as RGB triplets:
- Ambient is the color that is emitted by an object without any other light source.
- Diffuse is the color that is emitted for rought surface reflections with the lights.
- Specular is the color emitted for shiny surface reflections with the lights.
- The shininess of a surface is controlled by a float property.
- Alpha is the transparency of the surface between 0 (fully transparent) and 1 (opaque).
This material uses an effect with a single render pass approach and performs per fragment lighting. Techniques are provided for OpenGL 2, OpenGL 3 or above as well as OpenGL ES 2.
Property Documentation
alpha : float
Holds the alpha component of the object which varies between 0 and 1.
The default value is 0.5f.
Access functions:
float | alpha() const |
void | setAlpha(float alpha) |
Notifier signal:
void | alphaChanged(float alpha) |
ambient : QColor
Holds the ambient color.
Access functions:
QColor | ambient() const |
void | setAmbient(const QColor &ambient) |
Notifier signal:
void | ambientChanged(const QColor &ambient) |
blendFunctionArg : Qt3DRender::QBlendEquation::BlendFunction
Holds the blend equation function argument.
Access functions:
Qt3DRender::QBlendEquation::BlendFunction | blendFunctionArg() const |
void | setBlendFunctionArg(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg) |
Notifier signal:
void | blendFunctionArgChanged(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg) |
See also Qt3DRender::QBlendEquation::BlendFunction.
destinationAlphaArg : Qt3DRender::QBlendEquationArguments::Blending
Holds the blend equation destination alpha blending argument.
Access functions:
Qt3DRender::QBlendEquationArguments::Blending | destinationAlphaArg() const |
void | setDestinationAlphaArg(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg) |
Notifier signal:
void | destinationAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg) |
See also Qt3DRender::QBlendEquationArguments::Blending.
destinationRgbArg : Qt3DRender::QBlendEquationArguments::Blending
Holds the blend equation destination RGB blending argument.
Access functions:
Qt3DRender::QBlendEquationArguments::Blending | destinationRgbArg() const |
void | setDestinationRgbArg(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg) |
Notifier signal:
void | destinationRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg) |
See also Qt3DRender::QBlendEquationArguments::Blending.
diffuse : QColor
Holds the diffuse color.
Access functions:
QColor | diffuse() const |
void | setDiffuse(const QColor &diffuse) |
Notifier signal:
void | diffuseChanged(const QColor &diffuse) |
shininess : float
Holds the shininess exponent.
Access functions:
float | shininess() const |
void | setShininess(float shininess) |
Notifier signal:
void | shininessChanged(float shininess) |
sourceAlphaArg : Qt3DRender::QBlendEquationArguments::Blending
Holds the blend equation source alpha blending argument.
Access functions:
Qt3DRender::QBlendEquationArguments::Blending | sourceAlphaArg() const |
void | setSourceAlphaArg(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg) |
Notifier signal:
void | sourceAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg) |
See also Qt3DRender::QBlendEquationArguments::Blending.
sourceRgbArg : Qt3DRender::QBlendEquationArguments::Blending
Holds the blend equation source RGB blending argument.
Access functions:
Qt3DRender::QBlendEquationArguments::Blending | sourceRgbArg() const |
void | setSourceRgbArg(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg) |
Notifier signal:
void | sourceRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg) |
See also Qt3DRender::QBlendEquationArguments::Blending.
specular : QColor
Holds the specular color.
Access functions:
QColor | specular() const |
void | setSpecular(const QColor &specular) |
Notifier signal:
void | specularChanged(const QColor &specular) |
Member Function Documentation
QPhongAlphaMaterial::QPhongAlphaMaterial(Qt3DCore::QNode *parent = nullptr)
Default constructs an instance of QPhongAlphaMaterial.
QPhongAlphaMaterial::~QPhongAlphaMaterial()
Destroys the QPhongAlphaMaterial.