DirectionalLight QML Type
シーン内の指向性ライトを定義します。詳細...
Import Statement: | import QtQuick3D |
Inherits: |
プロパティ
- csmBlendRatio : float
- csmNumSplits : int
- csmSplit1 : float
- csmSplit2 : float
- csmSplit3 : float
詳細説明
指向性ライトは、無限に遠くにある特定できない光源から一方向に光を放ちます。これは実生活における太陽光の仕組みに似ています。指向性ライトは無限の範囲を持ち、減衰しません。
castsShadow を有効にすると、影は光の方向と平行になります。
指向性ライトは事実上位置を持たないので、動かしても効果はありません。ライトは常にライトのZ軸方向に照射されます。
X軸またはY軸に沿ってライトを回転させると、光の放射方向が変わります。
指向性ライトのスケーリングは、次の場合にのみ効果があります:
- Zスケールが負の数に設定されている場合、光は反対方向に放射されます。
- いずれかの軸のスケールが0に設定されている場合、光はワールドのZ軸に沿って放射されます。
注意: この場合、ライトを回転させても効果はありません。
簡単な例を見てみましょう:
import QtQuick import QtQuick3D View3D { anchors.fill: parent PerspectiveCamera { z: 600 } DirectionalLight { } Model { source: "#Sphere" scale: Qt.vector3d(4, 4, 4) materials: PrincipledMaterial { baseColor: "#40c060" roughness: 0.1 // make specular highlight visible } } }
ここでは、DirectionalLightはデフォルトのwhite
、DirectionalLightノードのZ軸方向に発光します。
X軸を中心に60度回転させると、次のようになります。Z軸の方向にまっすぐ発光する代わりに、光は60度「下」を向くようになります:
DirectionalLight { eulerRotation.x: 60 }
その他の使用例については、Qt Quick 3D - Lights Example を参照してください。
PointLight,SpotLight,Shadow Mappingも参照してください 。
プロパティの説明
csmBlendRatio : float |
このプロパティは、どのカスケードのシャドウをどの程度前のカスケードとブレンドするかを定義します。
範囲:[0.0, 1.0]
デフォルト値:0.05
csmNumSplits : int |
csmSplit1 : float |
このプロパティは、CSM がアクティブな場合に、シャドウ マップ分割の最初のカスケードが発生する場所を定義します。
範囲:デフォルト値:[0.0, 1.0]
デフォルト値:0
注意: このプロパティは、DirectionalLight::csmNumSplits が0
より大きい場合にのみ使用されます。
csmSplit2 : float |
このプロパティは、CSMがアクティブなときにシャドウマップ分割の2番目のカスケードが発生する場所を定義します。
範囲:[0.0, 1.0]
デフォルト値:0.25
注意: このプロパティは、DirectionalLight::csmNumSplits が1
より大きい場合にのみ使用されます。
csmSplit3 : float |
このプロパティは、CSMがアクティブなときにシャドウマップ分割の3番目のカスケードが発生する場所を定義します。
範囲:[0.0, 1.0]
デフォルト値:0.5
注意: このプロパティは、DirectionalLight::csmNumSplits が2
より大きい場合にのみ使用されます。
本書に含まれる文書の著作権は、各所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。