이 페이지에서

Qt3DExtras::QPhongAlphaMaterial Class

class Qt3DExtras::QPhongAlphaMaterial

QPhongAlphaMaterial 클래스는 알파 값이 포함된 퐁(Phong) 조명 효과의 기본 구현을 제공합니다. 더 보기...

헤더: #include <qphongalphamaterial.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3dextras)
target_link_libraries(mytarget PRIVATE Qt6::3dextras)
qmake: QT += 3dextras
상속: Qt3DRender::QMaterial
상태: 사용 중단됨

이 클래스는 더 이상 사용되지 않습니다. 새로운 코드에서는 이 클래스를 사용하지 않도록 강력히 권장합니다.

속성

공개 함수

QPhongAlphaMaterial(Qt3DCore::QNode *parent = nullptr)
virtual ~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

공개 슬롯

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)

신호

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)

상세 설명

이 클래스는 더 이상 사용되지 않습니다. 대신 QDiffuseSpecularMaterial 를 사용하십시오.

퐁(Phong) 조명 효과는 앰비언트(ambient), 디퓨즈(diffuse), 스페큘러(specular)라는 세 가지 조명 구성 요소의 조합을 기반으로 합니다. 이 구성 요소들의 상대적 강도는 RGB 3원색으로 모델링된 반사율 계수를 통해 제어됩니다.

  • 앰비언트는 다른 광원이 없는 상태에서 물체가 방출하는 색상입니다.
  • 확산(Diffuse)은 조명이 거친 표면에 반사될 때 발산되는 색상입니다.
  • 스페큘러는 빛에 의해 반사되는 광택 있는 표면의 색상입니다.
  • 표면의 광택도는 float 형식의 속성으로 제어됩니다.
  • 알파(Alpha)는 0(완전히 투명)에서 1(불투명) 사이의 표면 투명도를 나타냅니다.

이 머티리얼은 단일 렌더 패스 방식의 이펙트를 사용하며, 프래그먼트별 조명을 수행합니다. OpenGL 2, OpenGL 3 이상 및 OpenGL ES 2용 기술이 제공됩니다.

속성 설명서

alpha : float

객체의 알파 성분을 0에서 1 사이의 값으로 저장합니다.

기본값은 0.5f입니다.

액세스 함수:

float alpha() const
void setAlpha(float alpha)

알리미 신호:

void alphaChanged(float alpha)

ambient : QColor

주변 색상을 저장합니다.

액세스 함수:

QColor ambient() const
void setAmbient(const QColor &ambient)

알림 신호:

void ambientChanged(const QColor &ambient)

blendFunctionArg : Qt3DRender::QBlendEquation::BlendFunction

블렌드 방정식 함수의 인수를 저장합니다.

액세스 함수:

Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg() const
void setBlendFunctionArg(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg)

알림 신호:

void blendFunctionArgChanged(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg)

Qt3DRender::QBlendEquation::BlendFunction도 참조하십시오 .

destinationAlphaArg : Qt3DRender::QBlendEquationArguments::Blending

블렌드 방정식의 대상 알파 블렌딩 인수를 보관합니다.

액세스 함수:

Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg() const
void setDestinationAlphaArg(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg)

알림 신호:

void destinationAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg)

Qt3DRender::QBlendEquationArguments::Blending도 참조하십시오 .

destinationRgbArg : Qt3DRender::QBlendEquationArguments::Blending

블렌드 방정식의 대상 RGB 블렌딩 인수를 저장합니다.

액세스 함수:

Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg() const
void setDestinationRgbArg(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg)

알림 신호:

void destinationRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg)

Qt3DRender::QBlendEquationArguments::Blending도 참조하십시오 .

diffuse : QColor

확산 색상을 저장합니다.

액세스 함수:

QColor diffuse() const
void setDiffuse(const QColor &diffuse)

알림 신호:

void diffuseChanged(const QColor &diffuse)

shininess : float

광택 지수를 저장합니다.

액세스 함수:

float shininess() const
void setShininess(float shininess)

알림 신호:

void shininessChanged(float shininess)

sourceAlphaArg : Qt3DRender::QBlendEquationArguments::Blending

블렌드 방정식의 소스 알파 블렌딩 인수를 저장합니다.

액세스 함수:

Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg() const
void setSourceAlphaArg(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg)

알림 신호:

void sourceAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg)

Qt3DRender::QBlendEquationArguments::Blending도 참조하십시오 .

sourceRgbArg : Qt3DRender::QBlendEquationArguments::Blending

블렌드 방정식의 소스 RGB 블렌딩 인수를 저장합니다.

액세스 함수:

Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg() const
void setSourceRgbArg(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg)

알림 신호:

void sourceRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg)

Qt3DRender::QBlendEquationArguments::Blending도 참조하십시오 .

specular : QColor

스페큘러 색상을 저장합니다.

액세스 함수:

QColor specular() const
void setSpecular(const QColor &specular)

알림 신호:

void specularChanged(const QColor &specular)

멤버 함수 설명서

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

parent 를 부모 객체로 하는 새로운 QPhongAlphaMaterial 인스턴스를 생성합니다.

[virtual noexcept] QPhongAlphaMaterial::~QPhongAlphaMaterial()

QPhongAlphaMaterial 를 삭제합니다.

© 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.