Lightmapper QML Type
シーンのライトマップベイク設定を指定します。詳細...
Import Statement: | import QtQuick3D |
Since: | Qt 6.4 |
Inherits: |
プロパティ
- adaptiveBiasEnabled : bool
- bias : real
- bounces : int
- denoiseSigma : real
(since 6.10)
- indirectLightEnabled : bool
- indirectLightFactor : real
- indirectLightWorkgroupSize : int
- opacityThreshold : real
- samples : int
- source : url
(since 6.10)
- texelsPerUnit : real
(since 6.10)
詳細説明
直接照明と間接照明をベイクするときに使用します。これらの設定のほとんどは、すでに生成されたライトマップを使用してシーンをレンダリングするときなど、それ以外のときには関係ありません。ただし、source は例外で、開発用のデフォルト値が設定されています。
ベイクに成功すると、source で指定された値のファイルが1つ生成されます。このバイナリファイルには、モデルごとのライトマップとライトマップ互換のUVを持つメッシュファイルを含むベイクの結果が含まれます。個々のモデルデータには、BakedLightmap::key を介してアクセスします。
結果のライトマップ ファイルに含まれるデータはすべて、互いに、また現在のシーン ステートと緊密に結合しています。つまり、元のメッシュファイルやLightmapperの設定、その他のシーンに変更があった場合、更新された結果を確認するために新しいベイクを実行する必要があります。
注意: Qt 6.4 現在、ライトマップベイクは初期のテクニカルプレビューの状態です。機能、品質、API の変更は将来のリリースで行われる可能性があります。
Lightmapper オブジェクトは、:
- Model::bakedLightmap および関連するBakedLightmap 、
- Model::usedInBakedLighting およびModel::texelsPerUnit 、
- Light::bakeMode,
- エンジンのビルトインライトマップベーカーです。
Lightmaps and Global IlluminationおよびQt Quick 3D - Baked Lightmap Exampleも参照して ください。
プロパティ ドキュメント
adaptiveBiasEnabled : bool |
サーフェス法線に基づいて追加の動的なバイアスを適用することを有効にします。
デフォルト値はtrueです。
bias : real |
ベイク時に使用されるレイキャスティングバイアス。望ましくないシャドウイングパターンを減らすなど、アーティファクトが発生する場合に値を調整します。多くの場合、デフォルト値で十分です。
デフォルト値は0.005です。
bounces : int |
サンプルあたりの間接光の最大バウンス数。この値は少なくとも1であるべきで、そうでなければ間接光計算の意味がありません。
デフォルト値は3です。
この値は、ライトマップベイク時のパフォーマンスと結果のライトマップの品質に大きく影響します。
denoiseSigma : real |
このプロパティは、Non-local means based denoiserのシグマ値を定義します。つまり、この値が高いほどぼかしが強くなります。ノイズを除去しながら視覚的な特徴を失わないように、この値をできるだけ低く保つようにしてください。
このプロパティは Qt 6.10 で導入されました。
indirectLightEnabled : bool |
通常、この値を変更する必要はありません。デフォルト値はtrueです。このプロパティをfalseに設定すると、ライトマップのベイク時に間接光の計算が無効になります。したがって、結果として得られるテクスチャマップには、直接光の情報のみが含まれます。実行時、エンジンはマップに直接光と間接光の両方が含まれているものとして、マップを通常通り使用し続けます。
indirectLightFactor : real |
間接光量の乗数。厳密に正しいレンダリング結果を提供するのは値1(つまり間接光量の計算に影響を与えない)ですが、ライトマップを使用する場合、バウンス数が少なくても、少し高い値の方が見栄えの良い結果が得られることがよくあります。
デフォルト値は1です。
indirectLightWorkgroupSize : int |
サンプルワークグループのサイズ。これらのワークグループは並列実行されます。(正確な動作はCPUコア数とQThreadPool の設定に依存します)。
デフォルト値は32である。デフォルトのサンプル数が256の場合、1つのモデルにつき8つのグループを並行して実行しようとすることを意味します。
opacityThreshold : real |
レイトレーシングでライティングを計算するときに、レイとメッシュの交点でオブジェクトが無視される不透明度(アルファ)のしきい値。不透明度がしきい値を下回ると、モデル(サブメッシュ)はライトをオクルードしないので、影も生成されません。
デフォルト値は0.5です。
注意: ライトマッパーはmaterial's opacity とbaseColor alpha とbase color map's alpha の組み合わせを考慮します。オパシティマップやアルファカットオフ設定など、その他の半透明ソースは、ライトマップのベイク処理では無視されます。
samples : int |
ライトマップのテクセルあたりのサンプル数。
デフォルト値は256です。
この値は、ライトマップベイク時のパフォーマンスと結果のライトマップの品質に大きく影響します。
source : url |
実行時にライトマップファイルをロードするための URL と、ベイクに成功したときの出力ファイルのパス。
ベイク時に、出力パスは url から推測され、書き込み可能な通常のファイルの場所に解決する必要があります。デフォルトの値はfile:lightmaps.bin
で、これはファイルが現在の作業ディレクトリに置かれ、ベイクに成功すると最終結果が即座に表示されることを意味します。
出力ファイルと同じディレクトリに、最終的なライトマップ・ファイルを作成する前に使用される余分なライトマップ・データを含む.raw
ファイルが作成されます。これにより、.raw
ファイルが存在する場合、実行の間にシーン全体をベイクすることなく、ノイズ除去だけを行うことができます。
ライトマップをQRCリソースとして読み込みたい場合は、通常の方法で埋め込み、:/
またはqrc:/
プレフィックスをurlに追加する必要があります。以下の例では、常にリソース経由で埋め込まれたライトマップファイルを読み込もうとしています。まず、値を書き込み可能な場所に設定し、bakeします。次に、生成されたファイルをソースディレクトリにコピーします。次に、アプリケーションのCMakeプロジェクトで、/lightmaps
PREFIXの下にリソースとしてファイルをリストすることで、ビルドプロセスがファイルをピックアップし、実行ファイルに含めることができます。
Lightmapper { source: "qrc:/lightmaps/lightmaps.bin" // will attempt to load from :/lightmaps/lightmaps.bin at runtime // and write a file to lightmaps/lightmaps.bin when baking. }
このプロパティは Qt 6.10 で導入されました。
texelsPerUnit : real |
つまり、32
の texelsPerUnit を持つ1x1
の四角形は、ライトマップ内で約32x32
のテクセルになります。
このプロパティは Qt 6.10 で導入されました。
Model::texelsPerUnitも参照してください 。
© 2025 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.