QPhongAlphaMaterial 类

class Qt3DExtras::QPhongAlphaMaterial

QPhongAlphaMaterial 类提供了具有 alpha 通道的 phong 灯光效果的自定义实现。点击更多...

头文件 #include <QPhongAlphaMaterial>
CMakefind_package(Qt6 REQUIRED COMPONENTS 3dextras)
target_link_libraries(mytarget PRIVATE Qt6::3dextras)
qmakeQT += 3dextras
Inherits Qt3DRender::QMaterial
Status已弃用

此类已弃用。我们强烈建议不要在新的代码中使用它。

属性

公共函数

QPhongAlphaMaterial(Qt3DCore::QNode *parent = nullptr)
virtual~QPhongAlphaMaterial()
floatalpha() const
QColorambient() const
Qt3DRender::QBlendEquation::BlendFunctionblendFunctionArg() const
Qt3DRender::QBlendEquationArguments::BlendingdestinationAlphaArg() const
Qt3DRender::QBlendEquationArguments::BlendingdestinationRgbArg() const
QColordiffuse() const
floatshininess() const
Qt3DRender::QBlendEquationArguments::BlendingsourceAlphaArg() const
Qt3DRender::QBlendEquationArguments::BlendingsourceRgbArg() const
QColorspecular() const

公共槽函数

voidsetAlpha(float alpha)
voidsetAmbient(const QColor &ambient)
voidsetBlendFunctionArg(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg)
voidsetDestinationAlphaArg(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg)
voidsetDestinationRgbArg(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg)
voidsetDiffuse(const QColor &diffuse)
voidsetShininess(float shininess)
voidsetSourceAlphaArg(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg)
voidsetSourceRgbArg(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg)
voidsetSpecular(const QColor &specular)

信号

voidalphaChanged(float alpha)
voidambientChanged(const QColor &ambient)
voidblendFunctionArgChanged(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg)
voiddestinationAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg)
voiddestinationRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg)
voiddiffuseChanged(const QColor &diffuse)
voidshininessChanged(float shininess)
voidsourceAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg)
voidsourceRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg)
voidspecularChanged(const QColor &specular)

详细信息

该类已废弃;请使用 QDiffuseSpecularMaterial 代替。

Phong光照效果基于环境光、漫反射和反射光的组合。通过它们的反射率系数控制这些组件的相对强度,这些系数被建模为RGB三元组。

  • 环境光是没有其他光源的对象发出的颜色。
  • 漫反射是粗糙表面与灯光发生的颜色反射。
  • 反射光是与光滑表面反射发生的颜色。
  • 表面光泽度通过一个浮点属性控制。
  • Alpha是介于0(完全透明)和1(不透明)之间的表面透明度。

该材质使用具有单个渲染传递方法的特效,并执行每片段光照。提供了OpenGL 2、OpenGL 3或更高版本的技巧,以及OpenGL ES 2的技巧。

属性文档

alpha : float

包含对象的可变介于0和1之间的Alpha成分。

默认值为0.5f。

访问函数

floatalpha() const
voidsetAlpha(float alpha)

通知信号

voidalphaChanged(float alpha)

ambient : QColor

包含环境颜色。

访问函数

QColorambient() const
voidsetAmbient(const QColor &ambient)

通知信号

voidambientChanged(const QColor &ambient)

blendFunctionArg : Qt3DRender::QBlendEquation::BlendFunction

包含混合方程函数参数。

访问函数

Qt3DRender::QBlendEquation::BlendFunctionblendFunctionArg() const
voidsetBlendFunctionArg(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg)

通知信号

voidblendFunctionArgChanged(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg)

参见Qt3DRender::QBlendEquation::BlendFunction.

destinationAlphaArg : Qt3DRender::QBlendEquationArguments::Blending

包含混合方程目标alpha混合参数。

访问函数

Qt3DRender::QBlendEquationArguments::BlendingdestinationAlphaArg() const
voidsetDestinationAlphaArg(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg)

通知信号

voiddestinationAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg)

参见Qt3DRender::QBlendEquationArguments::Blending.

destinationRgbArg : Qt3DRender::QBlendEquationArguments::Blending

包含混合方程目标RGB混合参数。

访问函数

Qt3DRender::QBlendEquationArguments::BlendingdestinationRgbArg() const
voidsetDestinationRgbArg(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg)

通知信号

voiddestinationRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg)

参见Qt3DRender::QBlendEquationArguments::Blending.

diffuse : QColor

包含漫反射颜色。

访问函数

QColordiffuse() const
voidsetDiffuse(const QColor &diffuse)

通知信号

voiddiffuseChanged(const QColor &diffuse)

shininess : float

包含光泽度的指数。

访问函数

floatshininess() const
voidsetShininess(float shininess)

通知信号

voidshininessChanged(float shininess)

sourceAlphaArg : Qt3DRender::QBlendEquationArguments::Blending

包含混合方程源alpha混合参数。

访问函数

Qt3DRender::QBlendEquationArguments::BlendingsourceAlphaArg() const
voidsetSourceAlphaArg(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg)

通知信号

voidsourceAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg)

参见Qt3DRender::QBlendEquationArguments::Blending.

sourceRgbArg : Qt3DRender::QBlendEquationArguments::Blending

包含混合方程源RGB混合参数。

访问函数

Qt3DRender::QBlendEquationArguments::BlendingsourceRgbArg() const
voidsetSourceRgbArg(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg)

通知信号

voidsourceRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg)

参见Qt3DRender::QBlendEquationArguments::Blending.

specular : QColor

包含镜面反射颜色。

访问函数

QColorspecular() const
voidsetSpecular(const QColor &specular)

通知信号

voidspecularChanged(const QColor &specular)

成员函数文档

[显式] QPhongAlphaMaterial::QPhongAlphaMaterial(Qt3DCore::QNode *parent = nullptr)

使用父对象 parent 构造一个新 QPhongAlphaMaterial 实例。

[虚拟 noexcept] QPhongAlphaMaterial::~QPhongAlphaMaterial()

销毁 QPhongAlphaMaterial

© 2024 Qt公司有限公司。本文档中包含的贡献文档均为各自所有者的版权。本提供的文档根据自由软件基金会发布的《GNU自由文档许可证1.3版》许可条款进行许可。GNU自由文档许可证1.3版。Qt及其相关标志是芬兰及其它国家和地区Qt公司的商标。所有其他商标均为各自所有者的财产。