このページでは

Lightmapper QML Type

シーンのライトマップベイク設定を指定します。詳細...

Import Statement: import QtQuick3D
Since: Qt 6.4
Inherits:

QtObject

プロパティ

詳細説明

直接照明と間接照明をベイクするときに使用します。これらの設定のほとんどは、すでに生成されたライトマップを使用してシーンをレンダリングするときなど、それ以外のときには関係ありません。ただし、source は例外で、開発用のデフォルト値が設定されています。

ベイクに成功すると、source で指定された値のファイルが1つ生成されます。このバイナリファイルには、モデルごとのライトマップとライトマップ互換のUVを持つメッシュファイルを含むベイクの結果が含まれます。個々のモデルデータには、BakedLightmap::key を介してアクセスします。

結果のライトマップ ファイルに含まれるデータはすべて、互いに、また現在のシーン ステートと緊密に結合しています。つまり、元のメッシュファイルやLightmapperの設定、その他のシーンに変更があった場合、更新された結果を確認するために新しいベイクを実行する必要があります。

注意: Qt 6.4 現在、ライトマップベイクは初期のテクノロジープレビューの状態です。今後のリリースでは、機能、品質、API に変更が加えられる可能性があります。

Lightmapper オブジェクトは、:

Lightmaps and Global IlluminationQt Quick 3D - Baked Lightmap ExampleQt Quick 3D - SSGI Lightmap Exampleも参照してください

プロパティのドキュメント

adaptiveBiasEnabled : bool

サーフェス法線に基づく追加の動的バイアスを適用することを有効にする。

デフォルト値はtrue。

bias : real

ベイク時に使用されるレイキャスティングバイアス。アーティファクトが発生した場合、例えば望ましくないシャドウイングパターンを減らすために、値を調整する。多くの場合、デフォルト値で十分です。

デフォルト値は0.005です。

bounces : int

サンプルあたりの間接光バウンスの最大数。この値は少なくとも1であるべきで、そうでなければ間接光計算の意味がありません。

デフォルト値は3です。

この値はライトマップベイク時のパフォーマンスと結果のライトマップの品質に大きく影響します。

denoiseSigma : real [default: 8, since 6.10]

このプロパティは、非局所平均ベースのノイズ除去のシグマ値を定義する。つまり、この値が高いほどぼかしが強くなります。ノイズを除去しながら視覚的な特徴を失わないように、この値をできるだけ低く保つようにしてください。

このプロパティは 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 opacitybaseColor alphabase color map's alpha の組み合わせを考慮します。オパシティマップやアルファカットオフの設定など、その他の半透明のソースは、ライトマップのベイク処理では無視されます。

samples : int

ライトマップのテクセルあたりのサンプル数。

デフォルト値は256です。

この値は、ライトマップベイク時のパフォーマンスと結果のライトマップの品質に大きく影響します。

source : url [default: file:lightmaps.bin, since 6.10]

実行時にライトマップファイルを読み込むための 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 [default: 1, since 6.10]

つまり、32 の texelsPerUnit を持つ1x1 の四角形は、ライトマップ内で約32x32 のテクセル を占めることになります。

このプロパティは Qt 6.10 で導入されました。

Model::texelsPerUnitも参照してください

© 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.