SpotLight QML Type

シーン内のスポットライトを定義します。詳細...

Import Statement: import QtQuick3D
Inherits:

Light

プロパティ

詳細説明

スポットライトは、coneAngle プロパティで定義される円錐形の一方向に向かって光を放出します。光強度は、coneAngle に近づくと弱くなります。光強度が弱くなり始める角度は、innerConeAngle で定義されます。いずれの角度も度単位で定義されています。

innerConeAngle の内部では、スポット光は点光と同様の動作をします。そこでは、光強度は逆二乗則に従って減少します。ただし、フェードオフ(および範囲)は、constantFadelinearFadequadraticFade プロパティで制御できます。光の減衰は次の式で計算されます: constantFade +distance * (linearFade * 0.01) +distance * (quadraticFade * 0.0001)^2

簡単な例を見てみましょう。ここでは、スポットライトをZ軸の300の位置、つまりカメラとシーンセンターの中間に配置しています。デフォルトでは、ライトはZ軸方向に発光しています。典型的なスポットライトに近づけるために、brightness を 10 に増やしました。

import QtQuick
import QtQuick3D
View3D {
    anchors.fill: parent

    PerspectiveCamera { z: 600 }

    SpotLight {
        z: 300
        brightness: 10
        ambientColor: Qt.rgba(0.1, 0.1, 0.1, 1.0)
    }

    Model {
        source: "#Rectangle"
        scale: Qt.vector3d(10, 10, 10)
        z: -100
        materials: PrincipledMaterial { }
    }

    Model {
        source: "#Sphere"
        scale: Qt.vector3d(2, 2, 2)
        materials: PrincipledMaterial {
            baseColor: "#40c060"
            roughness: 0.1
        }
    }
}

回転は、DirectionalLight と同様に起こります。ここでは、ライトをもっと右に発光させたいので、Y軸を中心に-20度回転させます。円錐はデフォルトの40ではなく、coneAngle を30に設定することで小さくなります。また、innerConeAngle を 10 に変更することで、強度の減少開始を早めています。

SpotLight {
    z: 300
    brightness: 10
    ambientColor: Qt.rgba(0.1, 0.1, 0.1, 1.0)
    eulerRotation.y: -20
    coneAngle: 30
    innerConeAngle: 10
}

さらなる使用例については、Qt Quick 3D - Lights Example を参照してください。

DirectionalLight,PointLight,Shadow Mappingも参照してください

プロパティの説明

coneAngle : real

このプロパティは、光がシーンに影響を与えないカットオフ角度(エッジからエッジまで)を定義します。0180 の間の角度で定義します。デフォルト値は40 です。

注意: コーンの角度が180 度に近づくと、影の質が悪化し始めます。したがって、170 以下の値を推奨します。


constantFade : real

このプロパティは光の減衰項の定数係数です。デフォルト値は 1.0 です。


innerConeAngle : real

このプロパティは、光の強度がconeAngle に近づくにつれて徐々に減少し始める角度(端から端まで)を定義します。0から180の間で度単位で定義します。この値をconeAngle よりも大きく設定すると、coneAngle と同じ値であるかのように動作します。デフォルト値は30である。


linearFade : real

このプロパティは、照明効果がライトまでの距離に比例してライトを暗くする割合を増加させます。デフォルト値は0.0 で、これはライトにリニアフェードがないことを意味します。ここで使用される値は、光の減衰の計算に使用される前に0.01 で乗算されます。


quadraticFade : real

このプロパティは、逆二乗則に比例して、照明効果が光を減衰させる割合を増加させます。デフォルト値は1.0で、スポット光の減衰が逆二乗則に正確に従うことを意味します。つまり、オブジェクトまでの距離が2倍になると、光量は1/4に減少します。ここで使用される値は、光の減衰を計算する前に0.0001


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