Fog QML Type
シーンのフォグ設定を指定します。詳細...
| Import Statement: | import QtQuick3D |
| Since: | Qt 6.5 |
| Inherits: |
プロパティ
- color : color
- density : real
- depthCurve : real
- depthEnabled : bool
- depthFar : real
- depthNear : real
- enabled : bool
- heightCurve : real
- heightEnabled : bool
- leastIntenseY : real
- mostIntenseY : real
- transmitCurve : real
- transmitEnabled : bool
詳細説明
SceneEnvironment のfog プロパティが有効な Fog オブジェクトに設定されている場合、プロパティはフォグのレンダリングを設定するために使用されます。

このタイプによって提供される単純なフォグは、マテリアルによって実装されます。これはポストプロセッシングエフェクトではなく、View3D の出力でテクスチャを処理する追加のレンダーパスを伴わないことを意味します。むしろ、PrincipledMaterial またはシェーディングされたCustomMaterial を持つ各レンダリング可能オブジェクト(Model のサブメッシュ)のフラグメントシェーダで実装されます。
フォグはいくつかのプロパティによって設定されます:
- 一般設定:color およびdensity
- デプスフォグ設定:depthEnabled depthNear,depthFar 、depthCurve
- 高さフォグ設定:heightEnabled leastIntenseY,mostIntenseY 、heightCurve
- 色透過率設定:transmitEnabled,transmitCurve
例えば、以下のスニペットでは、デフォルトのフォグパラメータを使用して深度フォグ(高さフォグではない)を有効にしています:
environment: SceneEnvironment {
backgroundMode: SceneEnvironment.Color
clearColor: theFog.color
fog: Fog {
id: theFog
enabled: true
depthEnabled: true
}
}フォグ・オブジェクトをインラインで定義する代わりに、id によってフォグ・オブジェクトを参照することもできます。また、ExtendedSceneEnvironment は親タイプであるSceneEnvironment からすべてを継承しているため、ExtendedSceneEnvironment でもフォグを使用することができます:
Fog {
id: theFog
enabled: true
depthEnabled: true
}
environment: ExtendedSceneEnvironment {
fog: theFog
}Qt Quick 3D - 単純な霧の例およびQt Quick 3D - シーンエフェクトの例も参照してください 。
プロパティドキュメント
color : color
霧の色。デフォルト値は "#8099b3" です。

同じシーンで色を青っぽく変更したもの:

densityも参照してください 。
density : real
フォグ量を制御します。実際には0〜1の範囲の乗数です。デフォルト値は1.0です。値を小さくすると、フォグ効果の強さが減少します。depthEnabled が true に設定されている場合のみ適用されます。
画面上の視覚効果は、トーンマッピングやグロー、ブルームな ど、ExtendedSceneEnvironment の他の設定に影響される場合がありま す。同じ密度値でも、他のエフェクトが有効になっているか、またそれらがどのように設定されているかによって、結果が異なる場合があります。
密度を0.95 に設定したシーンの例:

密度を0.15 に下げた同じシーン:

colorも参照してください 。
depthCurve : real
デフォルト値は1.0。
depthEnabled が true に設定されている場合にのみ適用される。
depthEnabledも参照のこと 。
depthEnabled : bool
霧が遠くに現れるかどうかを制御する。デフォルト値は false です。
heightEnabled,enabled,depthNear,depthFar,depthCurveも参照してください 。
depthFar : real
カメラからの終了距離。デフォルト値は1000.0。depthEnabled が true に設定されている場合のみ適用されます。
注意: カメラやモデルを含むシーンは、depthNear や depthFar などのプロパティで適切な範囲を定義できるように、適切に設定されている必要があります。最初にトランスフォームを調整することなく、そのままインポートされたアセットを含むシーンで常にフォグを有効にできるとは思わないでください。例えば、このページのスクリーンショットの例では、スポンザモデルを使用していますが、これは、glTFソースアセットからbalsam ツールで生成されたインスタンス化されたスポンザコンポーネントに、(100, 100, 100) のスケールを手動で追加適用した後に生成されたものです。これにより、depthNear と depthFar の値を調整することで、見栄えの良い結果を得るのに十分な Z レンジが得られました。
depthNear およびdepthEnabledも参照して ください。
depthNear : real
カメラからの開始距離。デフォルト値は 10.0。depthEnabled が true に設定されている場合のみ適用されます。
例として、最初に depthNear の値を大きくしたシーンを見てみましょう。

depthNearの値を小さくすると、カメラからの距離が小さくなり、フォグが効果的にカメラに「近づく」ようになります:

注意: カメラやモデルを含むシーンは、depthNear やdepthFar などのプロパティで定義できるように、適切に設定されている必要があります。最初にトランスフォームをチューニングせずに、そのままインポートしたアセットを含むシーンで常にフォグを有効にできるとは思わないでください。たとえば、このページのスクリーンショットの例では、スポンザモデルを使用していますが、これは、glTFソースアセットからbalsam ツールで生成されたインスタンス化されたスポンザコンポーネントに、手動で(100, 100, 100) の追加スケールを適用して生成したものです。これにより、depthNear とdepthFar の値を調整することで、見栄えの良い結果を得るのに十分な Z レンジが得られました。
depthFar およびdepthEnabledも参照して ください。
enabled : bool
シーンにフォグを適用するかどうかを制御します。デフォルト値は false です。
深度や高さのフォグを有効にしても、この値を true に設定しなければ効果はありません。
depthEnabled およびheightEnabledも参照してください 。
heightCurve : real
高さフォグの強度を指定します。デフォルト値は1.0です。heightEnabled が true に設定されている場合にのみ適用されます。
heightEnabledも参照してください 。
heightEnabled : bool
高さフォグを有効にするかどうかを制御する。デフォルト値は false です。
depthEnabled,enabled,leastIntenseY,mostIntenseY,heightCurveも参照してください 。
leastIntenseY : real
霧が最も薄くなる位置(Y座標)を指定します。デフォルト値は10.0。heightEnabled が true に設定されている場合にのみ適用されます。
注意: デフォルトでは、この値はmostIntenseY よりも大きくなります。 この値が true である限り、フォグは上から下にレンダリングされます。この値がmostIntenseY より小さい場合、フォグは下から上にレンダリングされます。
注意: Qt Quick 3D のシーンでは、Y軸は上を向きます。
この写真は、ハイトフォグが有効なシーンで(デプスフォグはありません)、leastIntenseYの値が、フォグがスポンザシーンの底部のみに広がるように設定されています。

leastIntenseYの値を大きくすると、フォグがより高く広がるようになります。(Y軸が上を向いていることに注意してください)

注意: 深度フォグと同様に、シーンは、leastIntenseYとmostIntenseY によってY座標の範囲を定義できるように、適切に設定されることが期待されます。最初にトランスフォームを調整することなく、そのままインポートされたアセットを含むシーンで常にフォグを有効にできるとは思わないでください。たとえば、このページのスクリーンショットの例では、Sponzaモデルを使用していますが、これは、glTF ソースアセットからbalsam ツールで生成されたインスタンス化された Sponza コンポーネントに、手動で(100, 100, 100) の追加スケールを適用した後に生成されたものです。
mostIntenseY およびheightEnabledも参照してください 。
mostIntenseY : real
霧が最も強くなる位置(Y座標)を指定します。デフォルト値は0です。デフォルト値は 0 です。heightEnabled が true に設定されている場合にのみ適用されます。
注意: デフォルトでは、この値はleastIntenseY よりも小さくなります。 この値が true である限り、フォグは上から下にレンダリングされます。この値がleastIntenseY より大きい場合、フォグは下から上にレンダリングされます。
注意: Y軸は、Qt Quick 3D のシーンでは上向きになります。
注意: 深度フォグと同様に、シーンは、leastIntenseY とmostIntenseYによってY座標の範囲を定義できるように、適切に設定されることが期待されます。最初にトランスフォームを調整することなく、そのままインポートされたアセットを含むシーンで常にフォグを有効にできるとは思わないでください。例えば、このページのSponzaモデルのスクリーンショット例は、glTFソースアセットからbalsam ツールで生成されたインスタンス化されたSponzaコンポーネントに、手動で(100, 100, 100) の追加スケールを適用した後に生成されています。
leastIntenseY およびheightEnabledも参照してください 。
transmitCurve : real
光透過効果の強さ。デフォルト値は1.0。transmitEnabled が true に設定されている場合のみ適用される。
transmitEnabled : bool
フォグが光透過効果を持つかどうかを制御します。デフォルト値はfalseです。
© 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.