QSpotLight Class

class Qt3DRender::QSpotLight

Qt 3D シーン内のスポットライトオブジェクトをカプセル化します。詳細...

Header: #include <QSpotLight>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
In QML: SpotLight
Inherits: Qt3DRender::QAbstractLight
Status: Deprecated

プロパティ

パブリック関数

QSpotLight(Qt3DCore::QNode *parent = nullptr)
float constantAttenuation() const
float cutOffAngle() const
float linearAttenuation() const
QVector3D localDirection() const
float quadraticAttenuation() const

パブリックスロット

void setConstantAttenuation(float value)
void setCutOffAngle(float cutOffAngle)
void setLinearAttenuation(float value)
void setLocalDirection(const QVector3D &localDirection)
void setQuadraticAttenuation(float value)

シグナル

void constantAttenuationChanged(float constantAttenuation)
void cutOffAngleChanged(float cutOffAngle)
void linearAttenuationChanged(float linearAttenuation)
void localDirectionChanged(const QVector3D &localDirection)
void quadraticAttenuationChanged(float quadraticAttenuation)

詳細説明

スポットライトは、特定の方向に円錐状の光を放つ光源です。

スポットライトは3つの減衰係数を使用し、距離による光の強度の減少を表現します。これらの係数は、全減衰を計算する際に一緒に使用するように設計されています。Qt3D Extrasのマテリアルでは以下の式が使用され、距離はライトからレンダリングされるサーフェスまでの距離です:

totalAttenuation = 1.0 / (constantAttenuation + (linearAttenuation * distance) + (quadraticAttenuation * distance * distance));

カスタムマテリアルでは、これらの係数を異なるように解釈することができます。

プロパティの説明

constantAttenuation : float

スポット光の一定の減衰を指定します。

注意: このプロパティの正確な意味と使用方法は、マテリアルの実装次第です。

アクセス関数:

float constantAttenuation() const
void setConstantAttenuation(float value)

通知信号:

void constantAttenuationChanged(float constantAttenuation)

cutOffAngle : float

スポット光のカットオフ角度を指定します。

注: このプロパティの正確な意味と使用方法は、マテリアルの実装次第です。

アクセス関数:

float cutOffAngle() const
void setCutOffAngle(float cutOffAngle)

通知信号:

void cutOffAngleChanged(float cutOffAngle)

linearAttenuation : float

スポット光の直線減衰量を指定します。

注: このプロパティの正確な意味と使用方法は、マテリアルの実装次第です。

アクセス関数:

float linearAttenuation() const
void setLinearAttenuation(float value)

通知信号:

void linearAttenuationChanged(float linearAttenuation)

localDirection : QVector3D

スポットライトのローカル方向を指定します。

注: このプロパティの正確な意味と使用方法は、マテリアルの実装次第です。

アクセス関数:

QVector3D localDirection() const
void setLocalDirection(const QVector3D &localDirection)

通知シグナル:

void localDirectionChanged(const QVector3D &localDirection)

quadraticAttenuation : float

スポットライトの二次減衰を指定します。

注: このプロパティの正確な意味と使用方法は、マテリアルの実装次第です。

アクセス関数:

float quadraticAttenuation() const
void setQuadraticAttenuation(float value)

ノーティファイア信号:

void quadraticAttenuationChanged(float quadraticAttenuation)

メンバ関数ドキュメント

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

指定されたparent で新しい QSpotLight を構築します。

©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 ここで提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。