このページでは

PrincipledMaterial QML Type

「金属/粗さ」ワークフローを使用して、3Dアイテムのマテリアルを定義できます。詳細...

Import Statement: import QtQuick3D
Inherits:

Material

プロパティ

詳細な説明

シーン内でモデルをレンダリングするには、メッシュのシェーディング方法を定義するマテリアルが少なくとも1つ、モデルに適用されている必要があります。PrincipledMaterialは、最小限のパラメータで使いやすさを追求したPBRメタル/ラフネスマテリアルです。 パラメータ数が少ないことに加え、すべての入力値は0から1の間で厳密に正規化されており、適切なデフォルト値が設定されています。つまり、値を一切変更しなくても、このマテリアルを使用してモデルのシェーディングを行うことができます。PrincipledMaterialの各プロパティがモデルのシェーディングにどのように影響するかについての概要については、「Principled Material」のサンプルを参照してください。

メタル/ラフネス・ワークフロー

Principledマテリアルは、いわゆるメタルネス/ラフネスマテリアルです。つまり、このマテリアルの主な特性は、metallness 、roughness 、およびbase color プロパティによって制御されます。

メタルネス

現実世界のマテリアルは、主に金属と誘電体(非金属)の2つのカテゴリに分類されます。Principledマテリアルでは、マテリアルがどのカテゴリに属するかは、metalness の値によって決定されます。metalness の値を0に設定すると、そのマテリアルは誘電体となり、0より大きい値はすべて金属とみなされます。現実の金属のmetalness 値は1ですが、0から1までの値も存在し、通常は反射率が低い金属に使用されます。 例えば、素材に腐食などの効果をレンダリングする場合、出力特性を誘電体素材により近づけるために、素材の「metalness 」を低く設定する必要があります。「metalness 」の値は素材の反射率に影響を与えるため、「metalness」を使って光沢を調整したくなるかもしれませんが、まずどのような素材を表現したいのかを検討してください。 誘電体素材に磨き上げられたような外観を与えるために「metalness 」の値を増やしても、誘電体素材としては不正確な特性が導入されてしまうため、代わりに「roughness 」の値を調整するほうが適切かどうかを検討してください。

粗さ

マテリアルの「roughness 」は、オブジェクトの表面の状態を表します。「roughness 」の値が低いほど、オブジェクトの表面は滑らかになり、その結果、「roughness 」の値が高いマテリアルよりも反射率が高くなります。

ベースカラー

金属/ラフネスマテリアルにおけるbase color には、拡散色と鏡面反射色の両方のデータが含まれており、ベースカラーがどちらとして解釈されるかは、主にmetalness の値によって決まります。 たとえば、メタレネス値が 1 のマテリアルでは、ベースカラーの大部分がスペキュラーカラーとして解釈され、拡散色は黒みがかった色調になります。メタレネス値が 0 のマテリアルでは、その逆の現象が起こります。これはもちろん多少単純化されていますが、base color とmetalness の値がどのように相互作用するかの大まかなイメージをつかむのに役立ちます。 スペキュラー/グロスネス(Specular/Glossiness)のワークフローに詳しい方にとっては、ここで注目すべき明確な違いがあります。それは、2つのマテリアルの色データが直接互換性を持たないという点です。なぜなら、スペキュラー/グロスネスのワークフロー(material )では、拡散色と鏡面反射色は別々の入力から得られるからです。

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

alphaCutoff : real

alphaCutoff プロパティは、Mask alphaMode を使用する際のカットオフ値を指定するために使用できます。アルファ値がしきい値を下回るフラグメントは、完全に透明(すべての色チャンネルで0.0 )としてレンダリングされます。アルファ値がカットオフ値以上の場合、色には一切影響がありません。

デフォルト値は 0.5 です。

「alphaMode」も参照してください 。

alphaMode : enumeration

このプロパティは、baseColor のアルファカラー値と、base color map のアルファチャンネルがどのように使用されるかを指定します。

注: アルファカットオフの判定では 、ベースカラーのアルファのみが考慮されます。opacity およびNode::opacity は、この判定では考慮されません。

注: ベースカラーマップをサンプリングする場合 、有効なアルファ値は、サンプリングされたアルファ値に「baseColor 」のアルファ値を乗じたものとなります。

定数説明
PrincipledMaterial.Defaultテストは適用されず、実効アルファ値はそのまま渡されます。 なお、baseColor またはbaseColorMap のアルファ値が1.0 未満であっても、必ずしもアルファブレンディングが行われるとは限りません。不透明度(opacity)が 1 未満である、不透明度マップ(opacity map)が存在する、デフォルト以外の不透明度マップの不透明度(blendMode )値が設定されているなど、オブジェクトを半透明として扱うトリガーとなる他の関連プロパティがない場合、そのマテリアルを持つオブジェクトは不透明として扱われる可能性があります。 他のオブジェクトやマテリアルのプロパティに関係なくアルファブレンディングを確実に実行するには、代わりにBlend に設定してください。
PrincipledMaterial.Blendカットオフテストは適用されませんが、アルファブレンディングが確実に実行されます。したがって、このマテリアルを持つオブジェクトは、レンダラーによって不透明として扱われることは決してありません。
PrincipledMaterial.Opaqueカットオフテストは適用されず、レンダリングされるオブジェクトは完全に不透明であるとみなされます。つまり、頂点カラー、ベースカラー、およびベースカラーマップのアルファ値は無視され、代わりに値 1.0 が代入されます。このモードでは、アルファブレンディングが行われないことは保証されません。 関連するプロパティ(不透明度が1未満である、不透明度マップが存在する、デフォルト以外のblendMode が設定されているなど)によって指定されている場合、Default のalphaModeと同様に、オブジェクトはレンダリングパイプラインによって半透明として扱われます。
PrincipledMaterial.MaskalphaCutoff に基づくテストが適用されます。有効なアルファ値がalphaCutoff を下回った場合、フラグメントは完全に透明に変更され、破棄されます(破棄に伴うすべての影響:そのフラグメントの深度バッファへの書き込みは行われません)。 それ以外の場合は、アルファ値が 1.0 に変更され、フラグメントは完全に不透明になります。アルファブレンディングに関しては、カットオフテストの結果にかかわらず、このモードの挙動は `Opaque` と同一です。これは、glTF 2 仕様のアルファカバレッジに関する実装上の注意事項が満たされていることを意味します。 アルファカットオフテストが設定されたオブジェクトも、デフォルトでは不透明なオブジェクトと同様に振る舞うため、影を落とすことができます。ただし、関連するプロパティ(不透明度が1未満、不透明度マップ、またはデフォルト以外のblendMode など)によって別の挙動が指定されている場合は例外です(その場合、影を落とすことはできません)。

alphaCutoff およびblendModeも参照してください 。

attenuationColor : color

このプロパティは、白色光が減衰距離に達した際に吸収によって変化する色を定義します。デフォルト値はQt.White

attenuationDistance : real

このプロパティは、光が媒質内で粒子と相互作用するまでの平均移動距離として定義される、媒質の密度を表します。値はワールド空間で指定されます。デフォルト値は+infinity です。

baseColor : color

このプロパティは、マテリアルの基底色を設定します。指定されたマテリアルの種類(金属または誘電体)に応じて、拡散チャンネルと鏡面反射チャンネルが適切に設定されます。 たとえば、誘電体マテリアルでは、拡散色はベースカラーと同じになりますが、スペキュラー色はスペキュラー量に応じて明るい色になります。金属の場合、拡散チャンネルとスペキュラーチャンネルはベースカラーを基に混合され、拡散チャンネルは暗い色になり、スペキュラーチャンネルはベースカラーに近い色になります。

baseColorMap およびalphaModeも参照してください 。

baseColorChannel : enumeration [since 6.8]

このプロパティは、baseColorMap からbaseColor の値を読み取る際に使用されるテクスチャチャンネルを定義します。単一のテクスチャチャンネルを色として使用するには、baseColorSingleChannelEnabled を有効にする必要があります。デフォルト値はMaterial.R です。

定数説明
Material.Rテクスチャの R チャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み取ります。
Material.Aテクスチャの A チャンネルから値を読み取ります。

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

baseColorMap : Texture

このプロパティは、マテリアルのベースカラーを設定するために使用されるテクスチャを定義します。

「 baseColor 」および「alphaMode 」も参照してください 。

baseColorSingleChannelEnabled : bool [since 6.8]

このプロパティを有効にすると、マテリアルはbaseColorMap のbaseColorChannel から取得した単一の値をRGB値として使用し、アルファ値として1.0を使用します。デフォルト値はfalseです。

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

blendMode : enumeration

このプロパティは、レンダリングされたモデルの色が、その背後の色とどのように混ざり合うかを決定します。

定数説明
PrincipledMaterial.SourceOverデフォルトのブレンディングモード。不透明なオブジェクトは、その背後のオブジェクトを遮ります。このデフォルトモードは、このマテリアルを使用するモデルについて、レンダリングパイプラインでのアルファブレンディングを単独で保証するものではなく、むしろ以下の要因に基づいて判断が行われます: オブジェクトとマテリアルの合計不透明度が1.0 であり、マテリアルに不透明度マップがなく、alphaMode がアルファブレンディングを強制する値に設定されていない場合、モデルは不透明として扱われます。つまり、深度テストと深度書き込みが有効な状態で、他の不透明なオブジェクトとともに、ブレンディングは無効にしてレンダリングされます。 それ以外の場合は、モデルは半透明として扱われ、不透明なオブジェクトの後に、他の半透明オブジェクトと共に、中心点からカメラまでの距離に基づいた奥から手前への順序で、アルファブレンディングを有効にしてレンダリングされます。
PrincipledMaterial.Screen色は反転乗算を使用してブレンドされ、より明るい結果が得られます。このブレンドモードは順序に依存しません。半不透明なオブジェクトを使用していて、面やモデルの並べ替えによって「ポッピング」が発生する場合は、スクリーンブレンドを使用することで、ポッピングのない結果を得ることができます。
PrincipledMaterial.Multiply色は「乗算」を使用してブレンドされ、より暗い結果になります。このブレンドモードも順序に依存しません。

「 alphaMode 」および「Qt Quick 3D Architecture」も参照してください 。

clearcoatAmount : real

このプロパティは、クリアコート層の濃度を定義します。

デフォルト値は0.0

clearcoatChannel : enumeration

このプロパティは、clearcoatMap からクリアコートの量を読み取る際に使用されるテクスチャチャネルを定義します。デフォルト値はMaterial.R です。

定数説明
Material.Rテクスチャの R チャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み込みます。
Material.Aテクスチャの A チャンネルから値を読み取ります。

clearcoatFresnelBias : real

このプロパティは、接線方向の角度で見られる反射を維持しつつ、正面からの反射(表面をまっすぐ見た場合)を強調します。マテリアルに変更を反映させるには、「clearcoatFresnelScaleBiasEnabled 」を有効にする必要があります。デフォルト値は「0.0 」です。

clearcoatFresnelPower : real

このプロパティは、接線方向の反射を維持しつつ、正面からの反射(表面をまっすぐ見た場合)を低減します。デフォルト値は5.0 です。

clearcoatFresnelScale : real

このプロパティは、接線方向の反射を維持しつつ、正面からの反射(表面を真直ぐ見た場合)のスケールを調整します。マテリアルに変更を反映させるには、「clearcoatFresnelScaleBiasEnabled 」を有効にする必要があります。デフォルト値は「1.0 」です。

clearcoatFresnelScaleBiasEnabled : real

この値を「true」に設定すると、マテリアルは「クリアコート・フレネル・スケール」および「クリアコート・フレネル・バイアス」を考慮するようになります。デフォルト値は「false 」です。

clearcoatMap : Texture

このプロパティは、クリアコート層の濃淡を決定するために使用されるテクスチャを定義します。clearcoatAmount の値には、このテクスチャから読み取られた値が乗算されます。

clearcoatNormalMap : Texture

このプロパティは、クリアコート層に適用される法線マッピングを決定するために使用されるテクスチャを定義します。

clearcoatNormalStrength : real

このプロパティは、clearcoatNormalMap のシミュレーションによる変位量を制御します。

clearcoatRoughnessAmount : real

このプロパティは、クリアコート層の粗さを定義します。デフォルト値は0.0

clearcoatRoughnessChannel : enumeration

このプロパティは、clearcoatRoughnessMap からクリアコートの粗さを読み取るために使用されるテクスチャチャンネルを定義します。デフォルト値はMaterial.G です。

定数説明
Material.RテクスチャのRチャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み取ります。
Material.Aテクスチャの A チャンネルから値を読み取ります。

clearcoatRoughnessMap : Texture

このプロパティは、クリアコート層の粗さを決定するために使用されるテクスチャを定義します。clearcoatRoughnessAmount の値には、このテクスチャから読み取られた値が乗算されます。

emissiveChannel : enumeration [since 6.8]

このプロパティは、emissiveMap から発光値を読み取るために使用されるテクスチャチャネルを定義します。単一のテクスチャチャネルを色として使用するには、emissiveSingleChannelEnabled を有効にする必要があります。デフォルト値はMaterial.R です。

定数説明
Material.Rテクスチャの R チャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み取ります。
Material.Aテクスチャの A チャンネルから値を読み取ります。

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

emissiveFactor : vector3d

このプロパティは、このマテリアルの自己発光の色を決定します。発光マップが設定されている場合、x、y、zの各成分は、テクスチャのR、G、Bチャンネルに対する係数(乗数)としてそれぞれ使用されます。 デフォルト値は (0, 0, 0) で、これは発光効果が全くないことを意味します。

注: lightingMode を DefaultMaterial.NoLighting に設定すると 、発光係数はシーンに影響を与えません。

emissiveMap : Texture

このプロパティは、発光色の輝度を指定するために使用するRGBテクスチャを設定します。

emissiveSingleChannelEnabled : bool [since 6.8]

このプロパティを有効にすると、マテリアルはemissiveMap のemissiveChannel から取得した単一の値をRGB値として使用します。デフォルト値はfalseです。

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

fresnelBias : real

このプロパティは、接線方向の角度で見られる反射を維持しつつ、正面からの反射(表面をまっすぐ見た場合)を強調します。マテリアルに変更を反映させるには、「fresnelScaleBiasEnabled 」を有効にする必要があります。デフォルト値は「0.0 」です。

fresnelPower : real

このプロパティは、接線方向の反射を維持しつつ、正面からの反射(表面をまっすぐ見た場合の反射)を低減します。デフォルト値は5.0 です。

fresnelScale : real

このプロパティは、接線方向の反射を維持しつつ、正面からの反射(表面をまっすぐ見た場合)のスケールを調整します。マテリアルに変更を反映させるには、「fresnelScaleBiasEnabled 」を有効にする必要があります。デフォルト値は「1.0 」です。

fresnelScaleBiasEnabled : real

この値を「true」に設定すると、マテリアルはフレネルスケールとフレネルバイアスを考慮するようになります。デフォルト値はfalse です。

heightAmount : real

このプロパティには、heightMap テクスチャの値を調整するために使用される係数が格納されています。値は0.0から1.0の間で指定する必要があります。デフォルト値は0.0であり、これは高さマップが設定されていても、高さの変位が無効になることを意味します。

heightChannel : enumeration

このプロパティは、heightMap から高さ値を読み取る際に使用されるテクスチャチャネルを定義します。デフォルト値はMaterial.R です。

定数説明
Material.Rテクスチャの R チャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み取ります。
Material.Aテクスチャの A チャンネルから値を読み取ります。

heightMap : Texture

このプロパティは、パララックスマッピングを使用してレンダリングされる際に、テクスチャがどの程度ずれるかを決定するために使用されるテクスチャを定義します。値は 0.0 から 1.0 までの線形値が指定され、0.0 はずれなし、1.0 は最大ずれを意味します。

indexOfRefraction : real

このプロパティは、素材の屈折率を定義します。1.5 のデフォルト値は、プラスチックやガラスなどの素材にとっては理想的な値ですが、水、アスファルト、サファイア、ダイヤモンドなどの他の素材については、よりリアルに見えるように値を調整する必要があります。リアルな素材の場合、indexOfRefractionは通常、1.0 から3.0

一般的な物質の屈折率の例をいくつか挙げると:

材料屈折率
空気1.0
水1.33
ガラス1.55
サファイア1.76
ダイヤモンド2.42

注: 3.0 を超える屈折率を持つ物質は、現時点で世界中に知られていません 。

invertOpacityMapValue : real [since 6.8]

このプロパティは、opacityMap の不透明度値を反転させます。デフォルト値はfalse です。

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

lighting : enumeration

このプロパティは、このマテリアルを生成する際に使用する照明方法を定義します。

デフォルト値はPrincipledMaterial.FragmentLighting

「PrincipledMaterial.FragmentLighting 」を使用する場合、レンダリングされる各ピクセルに対して拡散光および鏡面反射光が計算されます。特定のエフェクト(フレネル効果や法線マップなど)では、正常に機能させるために「PrincipledMaterial.FragmentLighting 」が必要です。

「PrincipledMaterial.NoLighting 」を使用する場合、ライティングは計算されません。このモードは(予想通り)非常に高速であり、ライティングによるシェーディングを必要としないイメージマップを使用する場合に非常に効果的です。「baseColor 」の値、アルファ値、および頂点色を除く、その他のすべてのシェーディングプロパティは無視されます。

定数値
PrincipledMaterial.NoLighting
PrincipledMaterial.FragmentLighting

lineWidth : real

このプロパティは、ジオメトリが「線」または「ラインストリップ」のプリミティブタイプを使用している場合に、描画される線の幅を決定します。デフォルト値は 1.0 です。このプロパティは、三角メッシュなど、他のタイプのジオメトリを描画する場合には関係ありません。

警告: 基盤となるグラフィックス API によっては、1 以外の線の幅が 実行時にサポートされない場合があります。その場合、幅を変更する要求は無視されます。たとえば、Direct3D、Metal、コアプロファイルコンテキストを使用した OpenGL では、太い線がサポートされないことが予想されます。

maxHeightMapSamples : int

このプロパティは、heightMap を使用してパララックスオクルージョンマッピングを実行する際に使用されるサンプルの最大数を定義します。maxHeightMapSamples の値は、表面と平行な方向から見たときに、heightMap のサンプルのうち使用される数です。デフォルト値は 32 です。

各フラグメントで使用される実際のサンプル数は、レンダリング対象の表面に対するカメラの角度に応じて、minHeightMapSamples とmaxHeightMapSamplesの間になります。

注:この 値は 、望ましくないアーティファクトが発生している場合に限り、heightMap を使用するマテリアルの微調整を行うためにのみ調整してください。

metalness : real

「metalness」プロパティは、材料の金属性を定義します。この値は正規化されており、0.0 は材料が誘電体(非金属)であることを、1.0 は材料が金属であることを意味します。

注:原則として 、材料はメタルネスが 0 の誘電体、またはメタルネスが 1 の金属のいずれかです。0 から 1 までの範囲のメタルネス値も指定可能であり、その場合は異なるモデルが混合されたような材料となります。

範囲は [0.0, 1.0] です。デフォルト値は 0 です。

metalnessChannel : enumeration

このプロパティは、metalnessMap からメタルネス値を読み取る際に使用されるテクスチャチャンネルを定義します。デフォルト値はMaterial.B です。

定数説明
Material.Rテクスチャの R チャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み取ります。
Material.Aテクスチャの A チャンネルから値を読み取ります。

metalnessMap : Texture

このプロパティは、マテリアルの各部分のメタルネス量を設定するために使用するテクスチャを指定します。

minHeightMapSamples : int

このプロパティは、heightMap を使用してパララックスオクルージョンマッピングを実行する際に使用されるサンプルの最小数を定義します。minHeightMapSamples の値は、表面を正面から見た場合(カメラの視点がフラグメントに対して垂直な場合)に、heightMap から使用されるサンプルの数です。デフォルト値は 8 です。

各フラグメントに対して実際に使用されるサンプル数は、レンダリングされる表面に対するカメラの角度に応じて、`minHeightMapSamples` と `maxHeightMapSamples ` の間の値となります。

注:この 値は 、heightMap を使用しているマテリアルにおいて、望ましくないアーティファクトが発生している場合にのみ、微調整を行うために変更してください。

normalMap : Texture

このプロパティは、マテリアルの表面全体にわたる微細なジオメトリの変位をシミュレートするために使用されるRGB画像を定義します。RGBチャンネルは、XYZ方向の法線偏差を表します。

注:法線 マップは モデルのシルエットには影響しません。

normalStrength : real

このプロパティは、normalMap のシミュレーションによる変位量を制御します。

occlusionAmount : real

このプロパティには、occlusionMap テクスチャの値を調整するために使用される係数が格納されています。値は0.0から1.0の間で指定する必要があります。デフォルト値は1.0です。

occlusionChannel : enumeration

このプロパティは、occlusionMap からオクルージョン値を読み取る際に使用されるテクスチャチャネルを定義します。デフォルト値はMaterial.R です。

定数説明
Material.Rテクスチャの R チャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み取ります。
Material.Aテクスチャの A チャンネルから値を読み取ります。

occlusionMap : Texture

このプロパティは、マテリアルの各領域がどの程度の光を受けるかを決定するために使用されるテクスチャを定義します。値は 0.0 から 1.0 までの線形値が想定されており、0.0 は照明が全く当たらない状態、1.0 は照明の効果が変更されない状態を意味します。

「occlusionAmount」も参照してください 。

opacity : real

このプロパティは、モデルとは別に、このマテリアルだけの不透明度を下げます。

opacityChannel : enumeration

このプロパティは、opacityMap から不透明度値を読み取る際に使用するテクスチャチャネルを定義します。デフォルト値はMaterial.A です。

定数説明
Material.Rテクスチャの R チャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み取ります。
Material.Aテクスチャの A チャンネルから値を読み取ります。

opacityMap : Texture

このプロパティは、マテリアルの各部分ごとに不透明度を個別に制御するために使用されるテクスチャを定義します。

pointSize : real

このプロパティは、ジオメトリが「点」のプリミティブ型を使用している場合に、レンダリングされる点のサイズを決定します。デフォルト値は 1.0 です。このプロパティは、三角メッシュなど、他の種類のジオメトリをレンダリングする場合には関係ありません。

警告: 基盤となるグラフィックス API によっては、1 以外のポイントサイズは 実行時にサポートされない場合があります。たとえば、Direct 3D では、1 以外のサイズを設定しても効果はありません。

roughness : real

このプロパティは、光源から生成されるスペキュラーハイライトの大きさや、反射の鮮明さを全体的に制御します。値を大きくするとラフネスが増し、スペキュラーハイライトが柔らかくなり、反射がぼやけます。設定範囲は [0.0, 1.0] です。デフォルト値は 0 です。

roughnessChannel : enumeration

このプロパティは、roughnessMap からラフネス値を読み取る際に使用されるテクスチャチャンネルを定義します。デフォルト値はMaterial.G です。

定数説明
Material.RテクスチャのRチャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み取ります。
Material.Aテクスチャの A チャンネルから値を読み取ります。

roughnessMap : Texture

このプロパティは、マテリアルのスペキュラーの粗さを制御するためのテクスチャを定義します。

specularAmount : real

このプロパティは、鏡面反射(ハイライトや反射)の強さを制御します。

範囲は[0.0, 1.0]です。デフォルト値は1.0 です。

注: 非誘電体(金属)の場合 、このプロパティは効果を持ちません。

注:この プロパティはspecularReflectionMap には影響しませんが、シーンのSceneEnvironment::lightProbe からの反射量には影響します。

specularChannel : enumeration [since 6.8]

このプロパティは、specularMap からスペキュラーカラーの値を読み取るために使用されるテクスチャチャンネルを定義します。単一のテクスチャチャンネルをカラーとして使用するには、specularSingleChannelEnabled を有効にする必要があります。デフォルト値はMaterial.R です。

定数説明
Material.RテクスチャのRチャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み取ります。
Material.Aテクスチャの A チャンネルから値を読み取ります。

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

specularMap : Texture

このプロパティは、マテリアルの表面全体におけるスペキュラーの量と色を調整するためのRGBテクスチャを定義します。これらの値は、specularAmount (反射率)に乗算されます。

注: マテリアルが誘電体でない限り、スペキュラーマップは 無視されます。

specularReflectionMap : Texture

このプロパティは、マテリアルのスペキュラーハイライトに使用されるテクスチャを設定します。

これは通常、環境マッピングを行うために使用されます。モデルが回転すると、マップが環境から反射しているかのように見えます。これを期待通りに機能させるには、テクスチャの「mappingMode 」を「Texture.Environment」に設定する必要があります。スペキュラー反射マップは、比較的低コストで高品質な外観を追加できる簡単な方法です。

注: `light probe ` を `SceneEnvironment` に紐付け 、画像ベースのライティングを利用することで、同様の環境反射効果を実現できます。ただし、ライトプローブは概念的に異なり、パフォーマンスの面ではより負荷がかかる可能性のあるソリューションです。 それぞれのアプローチには固有の用途があり、どちらを使用するかはケースバイケースで判断する必要があります。プロパティに設定するテクスチャに関しては、specularReflectionMapに利点があります。これは制限がなく、sourceItem を介してQt Quick のサブシーンからデータを取得するテクスチャを含め、あらゆる種類のテクスチャをサポートしているからです。

注:鮮明な 画像を使用すると、マテリアルが非常に光沢のある見た目になります。画像をぼかすほど、マテリアルの質感は柔らかく見えます。

「Texture::mappingMode」も参照してください 。

specularSingleChannelEnabled : bool [since 6.8]

このプロパティを有効にすると、マテリアルはspecularMap のspecularChannel から取得した単一の値をRGB値として使用します。デフォルト値はfalseです。

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

specularTint : real

このプロパティは、ベースカラーが鏡面反射にどの程度寄与するかを定義します。

注:この プロパティは誘電体素材にのみ適用されます。

thicknessChannel : enumeration

このプロパティは、transmissionMap から厚さの値を読み取るために使用されるテクスチャチャンネルを定義します。デフォルト値はMaterial.G です。

定数説明
Material.RテクスチャのRチャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み取ります。
Material.Aテクスチャの A チャンネルから値を読み取ります。

thicknessFactor : real

このプロパティは、表面の下にある体積の厚さを定義します。PrincipledMaterial の他の多くのプロパティとは異なり、thicknessFactorで定義される値は、モデルの座標空間における厚さとして0.0から+無限大までの値となります。値が0.0の場合、その材料は薄肉であることを意味します。デフォルト値は0.0

thicknessMap : Texture

このプロパティは、マテリアルのボリュームの厚さを定義するために使用されるテクスチャを指定します。thicknessFactor の値には、このテクスチャから読み込まれた値が乗算されます。

transmissionChannel : enumeration

このプロパティは、transmissionMap から透過率を読み取る際に使用されるテクスチャチャンネルを定義します。デフォルト値はMaterial.R です。

定数説明
Material.Rテクスチャの R チャンネルから値を読み取ります。
Material.Gテクスチャの G チャンネルから値を読み取ります。
Material.Bテクスチャの B チャンネルから値を読み取ります。
Material.Aテクスチャの A チャンネルから値を読み取ります。

transmissionFactor : real

このプロパティは、材料の表面を通過する光の割合(パーセンテージ)を定義します。デフォルト値は0.0

transmissionMap : Texture

このプロパティは、表面を通過する光の割合を決定するために使用されるテクスチャを定義します。transmissionFactor の値には、このテクスチャから読み取られた値が乗算されます。

vertexColorAlphaMask : enumeration [since 6.8]

このプロパティは、指定されたマスクとして使用される頂点カラーのアルファチャンネルを定義します。値はフラグのビット単位の組み合わせです。デフォルト値はPrincipledMaterial.NoMask です。

定数説明
PrincipledMaterial.NoMask.
PrincipledMaterial.ClearcoatAmountMask.
PrincipledMaterial.ClearcoatRoughnessAmountMask.
PrincipledMaterial.ClearcoatNormalStrengthMask.
PrincipledMaterial.HeightAmountMask.
PrincipledMaterial.MetalnessMask.
PrincipledMaterial.RoughnessMask.
PrincipledMaterial.NormalStrengthMask.
PrincipledMaterial.OcclusionAmountMask.
PrincipledMaterial.SpecularAmountMask.
PrincipledMaterial.ThicknessFactorMask.
PrincipledMaterial.TransmissionFactorMask.

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

vertexColorBlueMask : enumeration [since 6.8]

このプロパティは、指定されたマスクとして使用される頂点色の青チャンネルを定義します。値はフラグのビット単位の組み合わせです。デフォルト値はPrincipledMaterial.NoMask です。

定数説明
PrincipledMaterial.NoMask.
PrincipledMaterial.ClearcoatAmountMask.
PrincipledMaterial.ClearcoatRoughnessAmountMask.
PrincipledMaterial.ClearcoatNormalStrengthMask.
PrincipledMaterial.HeightAmountMask.
PrincipledMaterial.MetalnessMask.
PrincipledMaterial.RoughnessMask.
PrincipledMaterial.NormalStrengthMask.
PrincipledMaterial.OcclusionAmountMask.
PrincipledMaterial.SpecularAmountMask.
PrincipledMaterial.ThicknessFactorMask.
PrincipledMaterial.TransmissionFactorMask.

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

vertexColorGreenMask : enumeration [since 6.8]

このプロパティは、指定されたマスクとして使用される頂点色の緑チャンネルを定義します。値はフラグのビット単位の組み合わせです。デフォルト値はPrincipledMaterial.NoMask です。

定数説明
PrincipledMaterial.NoMask.
PrincipledMaterial.ClearcoatAmountMask.
PrincipledMaterial.ClearcoatRoughnessAmountMask.
PrincipledMaterial.ClearcoatNormalStrengthMask.
PrincipledMaterial.HeightAmountMask.
PrincipledMaterial.MetalnessMask.
PrincipledMaterial.RoughnessMask.
PrincipledMaterial.NormalStrengthMask.
PrincipledMaterial.OcclusionAmountMask.
PrincipledMaterial.SpecularAmountMask.
PrincipledMaterial.ThicknessFactorMask.
PrincipledMaterial.TransmissionFactorMask.

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

vertexColorRedMask : enumeration [since 6.8]

このプロパティは、指定されたマスクとして使用される頂点色の赤チャンネルを定義します。値はフラグのビット単位の組み合わせです。デフォルト値はPrincipledMaterial.NoMask です。

定数説明
PrincipledMaterial.NoMask.
PrincipledMaterial.ClearcoatAmountMask.
PrincipledMaterial.ClearcoatRoughnessAmountMask.
PrincipledMaterial.ClearcoatNormalStrengthMask.
PrincipledMaterial.HeightAmountMask.
PrincipledMaterial.MetalnessMask.
PrincipledMaterial.RoughnessMask.
PrincipledMaterial.NormalStrengthMask.
PrincipledMaterial.OcclusionAmountMask.
PrincipledMaterial.SpecularAmountMask.
PrincipledMaterial.ThicknessFactorMask.
PrincipledMaterial.TransmissionFactorMask.

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

vertexColorsEnabled : bool [since 6.5]

このプロパティを有効にすると、マテリアルはメッシュの頂点色を使用します。これらは、マテリアルに対して指定されたその他の色と乗算されます。デフォルト値は true です。

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

vertexColorsMaskEnabled : bool [since 6.8]

このプロパティを有効にすると、マテリアルはメッシュの頂点色を、RoughnessAmount や SpecularAmount などのさまざまなプロパティのマスクとして使用します。デフォルト値は false です。

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

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