本页内容

Qt3DRender::QBlendEquationArguments Class

class Qt3DRender::QBlendEquationArguments

封装了混合信息:指定传入的值(即将绘制的对象)将如何影响现有值(已绘制的对象)。更多内容...

头文件: #include <qblendequationarguments.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
在 QML 中: BlendEquationArguments
继承自: Qt3DRender::QRenderState
状态: 已弃用

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

公共类型

enum Blending { Zero, One, SourceColor, SourceAlpha, Source1Alpha, …, OneMinusSource1Color0 }

属性

公共函数

QBlendEquationArguments(Qt3DCore::QNode *parent = nullptr)
int bufferIndex() const
Qt3DRender::QBlendEquationArguments::Blending destinationAlpha() const
Qt3DRender::QBlendEquationArguments::Blending destinationRgb() const
Qt3DRender::QBlendEquationArguments::Blending sourceAlpha() const
Qt3DRender::QBlendEquationArguments::Blending sourceRgb() const

公共槽位

void setBufferIndex(int index)
void setDestinationAlpha(Qt3DRender::QBlendEquationArguments::Blending destinationAlpha)
void setDestinationRgb(Qt3DRender::QBlendEquationArguments::Blending destinationRgb)
void setDestinationRgba(Qt3DRender::QBlendEquationArguments::Blending destinationRgba)
void setSourceAlpha(Qt3DRender::QBlendEquationArguments::Blending sourceAlpha)
void setSourceRgb(Qt3DRender::QBlendEquationArguments::Blending sourceRgb)
void setSourceRgba(Qt3DRender::QBlendEquationArguments::Blending sourceRgba)

信号

void bufferIndexChanged(int index)
void destinationAlphaChanged(Qt3DRender::QBlendEquationArguments::Blending destinationAlpha)
void destinationRgbChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgb)
void destinationRgbaChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgba)
void sourceAlphaChanged(Qt3DRender::QBlendEquationArguments::Blending sourceAlpha)
void sourceRgbChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgb)
void sourceRgbaChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgba)

详细说明

OpenGL 3.0 之前:为所有绘制缓冲区设置相同的混合状态(一个 QBlendEquationArguments);OpenGL 3.0-pre4.0: 为所有绘制缓冲区设置相同的混合状态,但可以禁用特定缓冲区的混合(一个 QBlendEquationArguments 用于设置 glBlendFunc,n 个 QBlendEquationArguments 用于启用/禁用绘制缓冲区) OpenGL 4.0+:可以为每个绘制缓冲区单独设置混合状态。

成员类型文档

enum QBlendEquationArguments::Blending

常数值描述
Qt3DRender::QBlendEquationArguments::Zero0GL_ZERO
Qt3DRender::QBlendEquationArguments::One1GL_ONE
Qt3DRender::QBlendEquationArguments::SourceColor0x0300GL_SRC_COLOR
Qt3DRender::QBlendEquationArguments::SourceAlpha0x0302GL_SRC_ALPHA
Qt3DRender::QBlendEquationArguments::Source1Alpha0x303GL_SRC1_ALPHA
Qt3DRender::QBlendEquationArguments::Source1Color0x304GL_SRC1_COLOR
Qt3DRender::QBlendEquationArguments::DestinationColor0x0306GL_DST_COLOR
Qt3DRender::QBlendEquationArguments::DestinationAlpha0x0304GL_DST_ALPHA
Qt3DRender::QBlendEquationArguments::SourceAlphaSaturate0x0308GL_SRC_ALPHA_SATURATE
Qt3DRender::QBlendEquationArguments::ConstantColor0x80010GL_CONSTANT_COLOR
Qt3DRender::QBlendEquationArguments::ConstantAlpha0x8003GL_CONSTANT_ALPHA
Qt3DRender::QBlendEquationArguments::OneMinusSourceColor0x0301GL_ONE_MINUS_SRC_COLOR
Qt3DRender::QBlendEquationArguments::OneMinusSourceAlpha0x0303GL_ONE_MINUS_SRC_ALPHA
Qt3DRender::QBlendEquationArguments::OneMinusDestinationAlpha0x0305GL_ONE_MINUS_DST_ALPHA
Qt3DRender::QBlendEquationArguments::OneMinusDestinationColor0x0307GL_ONE_MINUS_DST_COLOR
Qt3DRender::QBlendEquationArguments::OneMinusConstantColor0x8002GL_ONE_MINUS_CONSTANT_COLOR
Qt3DRender::QBlendEquationArguments::OneMinusConstantAlpha0x8004GL_ONE_MINUS_CONSTANT_ALPHA
Qt3DRender::QBlendEquationArguments::OneMinusSource1Alpha0x8005GL_ONE_MINUS_SRC1_ALPHA
Qt3DRender::QBlendEquationArguments::OneMinusSource1Color0x8006GL_ONE_MINUS_SRC1_COLOR
Qt3DRender::QBlendEquationArguments::OneMinusSource1Color0OneMinusSource1ColorGL_ONE_MINUS_SRC1_COLOR(已弃用)

属性文档

bufferIndex : int

指定此 BlendEquationArguments 所适用的绘制缓冲区的索引。如果为负数,则将应用于所有绘制缓冲区。

访问函数:

int bufferIndex() const
void setBufferIndex(int index)

通知信号:

void bufferIndexChanged(int index)

destinationAlpha : Blending

访问功能:

Qt3DRender::QBlendEquationArguments::Blending destinationAlpha() const
void setDestinationAlpha(Qt3DRender::QBlendEquationArguments::Blending destinationAlpha)

通知信号:

void destinationAlphaChanged(Qt3DRender::QBlendEquationArguments::Blending destinationAlpha)

destinationRgb : Blending

访问功能:

Qt3DRender::QBlendEquationArguments::Blending destinationRgb() const
void setDestinationRgb(Qt3DRender::QBlendEquationArguments::Blending destinationRgb)

通知信号:

void destinationRgbChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgb)

sourceAlpha : Blending

访问功能:

Qt3DRender::QBlendEquationArguments::Blending sourceAlpha() const
void setSourceAlpha(Qt3DRender::QBlendEquationArguments::Blending sourceAlpha)

通知信号:

void sourceAlphaChanged(Qt3DRender::QBlendEquationArguments::Blending sourceAlpha)

sourceRgb : Blending

访问功能:

Qt3DRender::QBlendEquationArguments::Blending sourceRgb() const
void setSourceRgb(Qt3DRender::QBlendEquationArguments::Blending sourceRgb)

通知信号:

void sourceRgbChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgb)

成员函数文档

[explicit] QBlendEquationArguments::QBlendEquationArguments(Qt3DCore::QNode *parent = nullptr)

该构造函数会根据指定的parent 创建一个新的混合状态对象。

[signal] void QBlendEquationArguments::destinationRgbaChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgba)

请注意,destinationRgb 和destinationAlpha 这两个属性均已更改为destinationRgba 。

[slot] void QBlendEquationArguments::setDestinationRgba(Qt3DRender::QBlendEquationArguments::Blending destinationRgba)

将destinationRgb 和destinationAlpha 这两个属性均更改为destinationRgba 。

[slot] void QBlendEquationArguments::setSourceRgba(Qt3DRender::QBlendEquationArguments::Blending sourceRgba)

将sourceRgb 和sourceAlpha 这两个属性均更改为sourceRgba 。

[signal] void QBlendEquationArguments::sourceRgbaChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgba)

请注意,“sourceRgb ”和“sourceAlpha ”这两个属性均已更改为“sourceRgba ”。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.