ExtendedSceneEnvironment QML Type

SceneEnvironment よく使われるレンダリング効果を提供する。詳細...

Import Statement: import QtQuick3D.Helpers
Since: Qt 6.5
Inherits:

SceneEnvironment

プロパティ

詳細な説明

ExtendedSceneEnvironmentQtQuick3DSceneEnvironment タイプを拡張したもので、よく使われるエフェクトのコレクションが組み込まれています。これらのエフェクトは、制御するエフェクトの名前を先頭に持つ一連のプロパティを通して公開されます。

これらのエフェクトを 1 つ以上有効にすると、SceneEnvironmenteffects リストに後処理エフェクトを手動で追加するのと同様の結果が得られます。しかし、ExtendedSceneEnvironment は、スタンドアロンでは利用できないエフェクトを提供し、さらに重要な点として、有効化されたエフェクトを効率的に組み合わせることで、必要な追加のレンダーパスの数を減らし、シーンに個別のポストプロセッシングエフェクトを適用するよりも大幅にパフォーマンスを向上させることができます。ExtendedSceneEnvironmentはまた、より複雑なマルチパスエフェクトや、複数のエフェクトを有効にして一緒に組み合わせた場合でも、トーンマッピングとうまく連携します。これは、スタンドアロンエフェクトでは必ずしもそうではありませんでした。

注意: SceneEnvironmenteffects リストに追加の後処理エフェクトが追加された場合、それらのエフェクトはExtendedSceneEnvironment タイプで提供されるエフェクトの前に適用されます。

トーンマッピングなど、SceneEnvironment の一部の機能は継承され、ExtendedSceneEnvironment の追加プロパティで拡張されます。たとえば、SceneEnvironment は、tonemapMode プロパティを提供しますが、ExtendedSceneEnvironment では、トーンマッパの露出、ホワイトポイント、シャープネス、ディザリングの設定も制御できるようになります。ただし、ExtendedSceneEnvironment はすべてをSceneEnvironment から継承するため、tonemapMode プロパティは重複しません。したがって、トーンマッピングモードの基本設定は、View3D にどのタイプの環境が関連付けられていても使用できますが、追加プロパティは ExtendedSceneEnvironment を使用する場合にのみ使用できます。スクリーンスペースアンビエントオクルージョン(SSAO)やフォグなどのその他のエフェクトは、完全にSceneEnvironment の一部であり、どちらのタイプの環境でも使用できます。

ExtendedSceneEnvironment を使い始める

ExtendedSceneEnvironment が提供する追加機能を使用するには、View3D をそのインスタンスに関連付けます。QtQuick3D.Helpers モジュールのインポートを忘れないでください。

import QtQuick3D
import QtQuick3D.Helpers

View3D {
    environment: ExtendedSceneEnvironment {
        tonemapMode: SceneEnvironment.Filmic
        vignetteEnabled: true
        // ...
    }
}

注意: エフェクトのパラメータを試して値を調整し、希望する視覚的な結果を得るには、値を変更したときにレンダリングシーンで即座にフィードバックされるスライダのようなコントロールを使って視覚的に行うと、より生産的になることがよくあります。そのため、Qt Design Studio のようなデザイナーツールや、Qt Quick 3D - Scene Effects Exampleのようなテストベッドを使用することは、視覚的に魅力的な高品質のシーンを設定する場合に推奨されます。

注意: SceneEnvironment を ExtendedSceneEnvironment に切り替えると、シングルパスのエフェクトがSceneEnvironment's effect list に追加された場合と同じように、少なくとも1回のレンダーパスが自動的に追加されます。 これは、個々のポストプロセスステップがいくつ有効になっているかに関係なく当てはまります。(より複雑なエフェクトは、1つ以上の追加レンダーパスを含む場合があります)。

利用可能なエフェクト

以下は、SceneEnvironment から継承された機能を含む、ExtendedSceneEnvironment が提供するエフェクトと関連機能の概要です。

SceneEnvironment およびQt Quick 3D - Scene Effects Exampleも参照してください

プロパティ ドキュメント

adjustmentBrightness : real [default: 1]

シーンの明るさを調整します。

明るさ 1明るさ 4


adjustmentContrast : real [default: 1]

シーンのコントラストを調整します。

コントラスト1コントラスト 4


adjustmentSaturation : real [default: 1]

シーンの彩度を調整します。

彩度 1彩度4


colorAdjustmentsEnabled : bool [default: false]

色の調整を有効にします。

colorAdjustmentsEnabledも参照してください


depthOfFieldBlurAmount : real [default: 4.0]

フォーカス範囲外のオブジェクトに適用されるぼかしの量。適切な値は0から10 の範囲です。値 0 の場合、追加のぼかしは適用されません。

ぼかし量 0ぼかし量 15


depthOfFieldEnabled : bool [default: false]

被写界深度ぼかし効果を有効にします。


depthOfFieldFocusDistance : real [default: 600]

カメラからの距離を設定します。

ここでは、Sponzaシーンに100 のスケールを適用しています。これは、視界の奥と手前にぼかしを適用するのに適した大きな範囲を持つためです。下の写真は、フォーカス距離753、フォーカス範囲482で撮影したものです。


depthOfFieldFocusRange : real [default: 100]

depthOfFieldFocusDistance 、ピントは完全に合っている。その後、手前も奥も同じ距離でピントが完全にボケていく。


ditheringEnabled : bool [default: false]

バンディング・アーティファクトを減らすためにディザリングを有効にする。


exposure : real [default: 1.0]

トーンマッパーが使用する露出レベル。

フィルムトンマッピング、露出8露出を0.5に設定したフィルム調トンマッピング。


fxaaEnabled : bool [default: false]

高速近似アンチエイリアス(FXAA)を有効にします。

FXAA無効FXAA有効


glowBlendMode : int [default: ExtendedSceneEnvironment.GlowBlendMode.SoftLight]

グロー効果のブレンドモード。

使用可能なモードは次のとおりです:

Additive は、空や太陽が見えるような屋外のシーンで推奨されることが多いのですが、屋内環境ではデフォルトの 。SoftLight

Replace.GlowBlendMode.Replaceはブレンディングを実行せず、グロー/ブルーム効果が実際のコンテンツとブレンドされる寄与のみを表示します。実際には、グロー/ブルーム効果のパラメータを設定する際の実験やトラブルシューティングに役立ちます。

ブレンドモード
グロー無効

加算

スクリーン

ソフトライト

置換


glowBloom : real [default: 0]

グロー効果に適用されるブルームの量を設定します。0から1の値が想定される。

glowHDRMinimumValueglowHDRMaximumValueglowHDRScale 、glowBloom の各値は、グロー/ブルーム効果によって生成されるluminance feedback の量を制御します。

実際には、glowStrengthglowIntensity 、glowBloomの値は、しばしば望ましい結果を達成するために一緒に調整されます。

例えば、4つのグロー・レベルが有効で、強さが1.5、強度が1である場合:

glowBloomを0に設定glowBloomを0.5に設定


glowEnabled : bool [default: false]

グロー効果を有効にする。また、glowBloom の値が 0 より大きい場合、ブルームを与えることができる。


glowHDRMaximumValue : real [default: 12.0]

グローの最大輝度をハイダイナミックレンジで設定する。値の範囲は0から 256まで

glowHDRMinimumValue 、glowHDRMaximumValue、glowHDRScale 、およびglowBloom の値を合わせて、グロー/ブルーム効果によって生成されるluminance feedback の量を制御する。


glowHDRMinimumValue : real [default: 1.0]

グローの最小輝度をハイダイナミックレンジで設定する。期待される値は0から 4の範囲である。

glowHDRMinimumValue、glowHDRMaximumValueglowHDRScaleglowBloom の各値を合わせて、グロー/ブルーム効果によって生成されるluminance feedback の量を制御する。


glowHDRScale : real [default: 2.0]

HDRグローのブリードスケール。期待される値は0から8 の範囲です。

glowHDRMinimumValueglowHDRMaximumValue 、glowHDRScale 、glowBloom の各値を合わせて、グロー/ブルーム効果によって生成されるluminance feedback の量を制御します。


glowIntensity : real [default: 1]

グロー強度。期待される値は0から8 の範囲です。

強度は事実上、累積されたグロー・カラー(すべてのレベルを含む)のスケール・ファクター(乗数)である。

実際には、glowStrength 、glowIntensity、glowBloom の値は、望ましい結果を得るために、しばしば一緒に調整されます。

例えば、glowStrength 1.0、glowBloom 0.25:

glowIntensityを0.251.25のglowIntensity


glowLevel : int [default: 1]

どのブラーパスがグロー効果に適用されるかを設定します。全部で7段階あります。

どのレベルも設定されていない場合、グローは視覚効果を持ちません。

例えば、グローレベル1と 6を有効にするには、2つの列挙型をORするだけです:

glowLevel = (ExtendedSceneEnvironment.GlowLevel.One | ExtendedSceneEnvironment.GlowLevel.Six)
グローレベル値
一つ

つ|2つ

つ|2つ|3つ

つ|2つ|3つ|4つ


glowQualityHigh : bool [default: false]

グロー効果の品質を向上させるために、ダウンサンプリング時にグローに使用するサンプルを増やします。

注意: これを有効にすると、レンダリング品質とパフォーマンスがトレードオフになります。代わりにdithering を使用できるかどうか検討してください。


glowStrength : real [default: 1]

グローの強さ。使用可能な値は0から 2です。

強さは、レベルごとに適用されるスケールファクター(乗数)です。つまり、glowLevel で有効になっているレベルが多ければ多いほど、glowStrength が大きいほど効果が顕著になります。

実際には、glowStrength、glowIntensityglowBloom の値は、多くの場合、望ましい結果を得るために一緒に調整される。

例えば、glowIntensity が1.0、glowBloom が0.25、最初の4つのレベルが有効な場合:

glowStrengthが0.51.5のglowStrength


glowUseBicubicUpscale : bool [default: false]

グロー効果のエイリアシング・アーティファクトとボックス化を低減します。

注意: バイキュービックのアップスケーリングを使用すると、パフォーマンスが犠牲になります。代わりにdithering


lensFlareApplyDirtTexture : bool [default: false]

レンズフレアに汚れテクスチャを適用するかどうかを設定します。

汚れテクスチャ無効デフォルトの汚れテクスチャ有効

lensFlareLensDirtTextureも参照してください


lensFlareApplyStarburstTexture : bool [default: false]

レンズフレアにスターバーストテクスチャを適用するかどうかを設定します。

スターバースト テクスチャ 無効デフォルトスターバーストテクスチャ有効

lensFlareLensStarburstTexture参照して ください。


lensFlareBloomBias : real [default: 0.95]

レンズフレアのブルームを開始するレベルを設定します。

バイアス値はハイダイナミックレンジのカラー値から差し引かれ、結果は0にクランプされます。つまり、シーンによっては、レンズフレアを目立たせるために、かなり低い値、例えば1以下に設定する必要がある場合があります。そのため、デフォルトは0.95となっている。一方、色の範囲が広い場合は、より大きな値がより理にかなっているかもしれません。

0.81のバイアス0.31のバイアス


lensFlareBloomScale : real [default: 10]

レンズフレア・ブルーム効果のスケールを設定します。期待されるスケール値は0から20 の範囲です。

実際には、lensFlareBloomBias を差し引いたゼロクランプのカラー値の乗数として機能します。

スケール2、バイアス0.81スケール20、バイアス0.81


lensFlareBlurAmount : real [default: 3]

レンズフレアに適用するぼかしの量を設定します。0から50 の範囲で設定。

ぼかし量を0に設定ぼかし量を30に設定


lensFlareCameraDirection : vector3d [default: Qt.vector3d(0, 0, -1)]

シーン内のカメラの向きを設定します。


lensFlareDistortion : real [default: 5]

レンズフレアの色収差量を設定します。期待値の範囲は0から20 です。

ディストーションを0に設定ディストーションを15に設定


lensFlareEnabled : bool [default: false]

レンズフレアを有効にします。

有効にすると、最初に調整するプロパティは通常lensFlareBloomBias です。


lensFlareGhostCount : int [default: 4]

レンズフレアのゴーストの量を設定します。期待される値は0から20 です。

ゴースト数 2ゴースト数 16


lensFlareGhostDispersal : real [default: 0.5]

レンズフレアゴースト間の距離を設定します。設定可能な値は05 です。値は0より大きくする必要があります。

ゴースト分散 0.25ゴースト分散0.90


lensFlareHaloWidth : real [default: 0.25]

レンズフレアのハローの大きさを設定します。0から1 の範囲で設定します。


lensFlareLensColorTexture : Texture

レンズフレアのレンズカラーに使用するグラデーション画像。

デフォルトでは256x256のテクスチャが使用されます:


lensFlareLensDirtTexture : Texture

レンズの欠陥をシミュレートするために使用される画像。

lensFlareApplyDirtTexture が有効な場合のみ効果があります。

デフォルトでは内蔵のダーティテクスチャが使用されます:


lensFlareLensStarburstTexture : Texture

レンズフレアのスターバースト効果を増強するノイズ画像。lensFlareApplyStarburstTexture が有効なときのみ効果があります。

デフォルトでは内蔵ノイズテクスチャが使用されます:


lensFlareStretchToAspect : real [default: 0.5 [0, 1]]

レンズフレアのハローの丸みの補正係数を設定します。


lutEnabled : bool [default: false]

ルックアップテーブル(LUT)を使ったカラーグレーディングを可能にする。ルックアップテーブルはテクスチャとして与えられる。


lutFilterAlpha : real [default: 1]

シーンに混ぜるカラーグレーディングの量を設定します。値は0から 1の間であることが期待されます。


lutSize : real [default: 16]

LUTテクスチャのサイズを設定します。テクスチャのサイズは

width = lutSize * lutSizeheight = lutSize


lutTexture : Texture

ルックアップテクスチャのソース。テクスチャが設定されていない場合は、組み込みのIDテーブルが使用されます。

下の写真は256x16のサイズのテクスチャの例で、デフォルトのlutSize 16と一致しています。

このエフェクトの結果:


sharpnessAmount : real [default: 0.0]

シャープネス量を設定します。有効な値は0.0 (オフ)から1.0 (フル)です。

シャープネスを0に設定したフィルムトンマッピングシャープネスを1に設定したフィルム調トンマッピング


tonemapMode : enumeration

このプロパティは、レンダリング前の色のトーンマッピング方法を定義します。Qt Quick 3D のレンダリングはすべてリニアカラースペースで行われるため、多くの場合、表示できないカラー値が生成される可能性があります。tonemapMode は、表示可能な範囲に色を再マッピングするために使用される手法を決定します。

デフォルト値はSceneEnvironment.TonemapModeLinear

一定です。説明
SceneEnvironment.TonemapModeNoneすべてのトーンマッピングがバイパスされます。このモードは、ポスト処理エフェクトを実行するときに便利です。
SceneEnvironment.TonemapModeLinearリニアトーンマッピングが適用されます。色はガンマ補正され、sRGB色空間で返されます。
SceneEnvironment.TonemapModeAcesAcademy Color Encoding System トーンマッピングが適用されます。
SceneEnvironment.TonemapModeHejlDawsonHejl-Dawson トーンマッピングが適用されます。
SceneEnvironment.TonemapModeFilmicFilmic トーンマッピングが適用されます。

注: 後処理エフェクトを使用する場合、多くのエフェクトはトーンマッピングされていないリニアカラーデータを期待します。この場合、SceneEnvironment.TonemapModeNone 値を使用して、内蔵トーンマッピングをバイパスすることが重要です。ExtendedSceneEnvironment の内蔵エフェクトは自動的に適切なトーンマッピングを行うため、これは適用されません。

トーンマップモード
なし

リニア

エース

ヘジルドーソン

フィルム調


vignetteColor : color [default: "gray"]

ヴィネット効果の色を設定します。

例えば、半径 4、強さ 15 で赤に変更します:


vignetteEnabled : bool [default: false]

ヴィネット効果を有効にします。


vignetteRadius : real [default: 0.35]

ビネット効果の半径を設定します。範囲は0から5 です。

半径0.35半径 5.0


vignetteStrength : real [default: 15]

ビネット効果の強さを設定します。0から15 の範囲で設定します。

強さ15強さ10


whitePoint : real [default: 1]

トーンマッピング有効時の白の基準値。値は 0 より大きくなければならない。

注: この値は、SceneEnvironment.TonemapModeLinear を使用する場合は無視されます。

白色点を 0.1 に設定したフィルミッ クトーンマッピング白色点を 1 に設定したフィルムのトンマッピング


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