PrincipledMaterial QML Type
メタル/ラフネスワークフローを使用して3Dアイテムのマテリアルを定義できます。詳細...
| Import Statement: | import QtQuick3D |
| Inherits: |
プロパティ
- alphaCutoff : real
- alphaMode : enumeration
- attenuationColor : color
- attenuationDistance : real
- baseColor : color
- baseColorChannel : enumeration
(since 6.8) - baseColorMap : Texture
- baseColorSingleChannelEnabled : bool
(since 6.8) - blendMode : enumeration
- clearcoatAmount : real
- clearcoatChannel : enumeration
- clearcoatFresnelBias : real
- clearcoatFresnelPower : real
- clearcoatFresnelScale : real
- clearcoatFresnelScaleBiasEnabled : real
- clearcoatMap : Texture
- clearcoatNormalMap : Texture
- clearcoatNormalStrength : real
- clearcoatRoughnessAmount : real
- clearcoatRoughnessChannel : enumeration
- clearcoatRoughnessMap : Texture
- emissiveChannel : enumeration
(since 6.8) - emissiveFactor : vector3d
- emissiveMap : Texture
- emissiveSingleChannelEnabled : bool
(since 6.8) - fresnelBias : real
- fresnelPower : real
- fresnelScale : real
- fresnelScaleBiasEnabled : real
- heightAmount : real
- heightChannel : enumeration
- heightMap : Texture
- indexOfRefraction : real
- invertOpacityMapValue : real
(since 6.8) - lighting : enumeration
- lineWidth : real
- maxHeightMapSamples : int
- metalness : real
- metalnessChannel : enumeration
- metalnessMap : Texture
- minHeightMapSamples : int
- normalMap : Texture
- normalStrength : real
- occlusionAmount : real
- occlusionChannel : enumeration
- occlusionMap : Texture
- opacity : real
- opacityChannel : enumeration
- opacityMap : Texture
- pointSize : real
- roughness : real
- roughnessChannel : enumeration
- roughnessMap : Texture
- specularAmount : real
- specularChannel : enumeration
(since 6.8) - specularMap : Texture
- specularReflectionMap : Texture
- specularSingleChannelEnabled : bool
(since 6.8) - specularTint : real
- thicknessChannel : enumeration
- thicknessFactor : real
- thicknessMap : Texture
- transmissionChannel : enumeration
- transmissionFactor : real
- transmissionMap : Texture
- vertexColorAlphaMask : enumeration
(since 6.8) - vertexColorBlueMask : enumeration
(since 6.8) - vertexColorGreenMask : enumeration
(since 6.8) - vertexColorRedMask : enumeration
(since 6.8) - vertexColorsEnabled : bool
(since 6.5) - vertexColorsMaskEnabled : bool
(since 6.8)
詳細説明
モデルをシーンでレンダリングする前に、メッシュがどのようにシェーディングされるべきかを記述するマテリアルを少なくとも1つ添付する必要があります。PrincipledMaterialはPBRメタル/粗さマテリアルで、最小限のパラメータセットで使いやすいマテリアルを目指しています。パラメータが少ないだけでなく、すべての入力値は厳密に0から1の間で正規化され、感覚的なデフォルト値を持っています。プリンシプルマテリアルの異なるプロパティがモデルのシェーディングにどのように影響するかについては、プリンシプルマテリアルの例を参照してください。
メタル/ラフネスワークフロー
プリンシプルマテリアルは、メタル/ラフネスマテリアルとして知られています。要するに、マテリアルの主な特性は、metallness 、roughness 、base color プロパティを通して制御されることを意味します。
金属性
現実の材料は、金属と誘電体(非金属)の2つのカテゴリーに大別されます。プリンシプル素材では、素材が属するカテゴリーはmetalness の値によって決定されます。metalness の値を0にすると、その材料は誘電体であることを意味し、0を超えると金属とみなされます。実際の金属はmetalness 値が1になりますが、0と1の間の値も可能で、通常は反射率の低い金属に使用されます。たとえば、材料に腐食などをレンダリングする場合、材料のmetalness を減らして、誘電材料に近い特性を出力する必要があります。metalness の値は材料の反射率に影響するため、光沢度を調整するために金属度を使いたくなるかもしれませんが、まずどのような材料を表現したいかを考えてください。metalness の値を大きくして誘電体材料をより光沢のある外観にすることは、誘電体材料としては正確でない特性を導入することになりますので、例えば、roughness の値を代わりに調整する方が適切かどうかを検討してください。
粗さ
材料のroughness は物体の表面の状態を表します。roughness の値が低いと、物体の表面が滑らかであることを意味し、roughness の値が高い材料よりも反射率が高くなります。
ベースカラー
メタル/ラフネス素材のbase color は、ディフューズとスペキュラの両方のデータを含んでいます。ベースカラーをどちらか一方として解釈するかは、主にmetalness の値によって決まります。例えば、メタルネス値が1の素材は、ベースカラーのほとんどがスペキュラカラーとして解釈され、ディフューズカラーは黒味を帯びた色になります。もちろんこれは少し単純化したものですが、base color とmetalness の値がどのように相互作用するかを大まかに知ることができます。つまり、Specular/Glossinessmaterial では、ディフューズカラーとスペキュラカラーは別々の入力から来るため、2つのマテリアルのカラーデータは直接互換性がありません。
プロパティ ドキュメント
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 よりも小さくても、自動的にアルファブレンドが行われるわけではないことに注意してください。他の関連するプロパティ(不透明度が 1 よりも小さい、不透明度マップが存在する、デフォルトではないblendMode の値など)がなければ、マテリアルを持つオブジェクトは不透明として扱われます。他のオブジェクトやマテリアルのプロパティに関係なくアルファブレンディングが行われるようにするには、代わりにBlend を設定します。 |
PrincipledMaterial.Blend | カットオフテストは適用されませんが、アルファブレンディングが起こることが保証されます。したがって、このマテリアルを持つオブジェクトがレンダラーによって不透明として扱われることはありません。 |
PrincipledMaterial.Opaque | つまり、頂点カラー、ベースカラー、ベースカラーマップのアルファ値は無視され、代わりに1.0の値が代入されます。このモードは、アルファブレンディングが起こらないことを保証するものではありません。関連するプロパティ(不透明度が 1 より小さい、不透明度マップがある、デフォルトでないblendMode など)にそのように書かれている場合でも、Default alphaMode と同様に、レンダリングパイプラインによってオブジェクトは半透明として扱われます。 |
PrincipledMaterial.Mask | alphaCutoff に基づくテストが適用されます。有効なアルファ値が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) で、エミッシブの寄与がまったくないことを意味します。
Note: 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
このプロパティは、Parallax Mappingを使用してレンダリングするときにテクスチャが変位する高さを決定するために使用されるテクスチャを定義します。値は0.0から1.0までの線形であることが期待され、0.0は変位なし、1.0は最大変位を意味する。
indexOfRefraction : real
このプロパティは材料の屈折率を定義します。デフォルト値の1.5 は、プラスチックやガラスのような素材には理想的な値ですが、水、アスファルト、サファイア、ダイヤモンドのような他の素材では、よりリアルに見えるように値を調整する必要があります。現実的な材料の場合、屈折率は通常1.0 と の間であるべきです。3.0
一般的な素材の屈折率の例をいくつか挙げます:
| 素材 | 屈折率 |
|---|---|
| 空気 | 1.0 |
| 水 | 1.33 |
| ガラス | 1.55 |
| サファイア | 1.76 |
| ダイヤモンド | 2.42 |
注: 3.0 をはるかに超えるiorを持つ物質は世界で知られていない。
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 を使用して Parallex Occlusion Mapping を実行するために使用されるサンプルの最大数を定義します。 maxHeightMapSamples 値は、サーフェスに平行に見たときに使用されるheightMap のサンプル数です。デフォルト値は 32 です。
各フラグメントに使用される実際のサンプル数は、レンダリングされるサーフェスに対するカメラの角度に応じて、minHeightMapSamples と maxHeightMapSamples の間になります。
注意: この値は、望ましくないアーティファクトが存在する場合に、heightMap を使用してマテリアルを微調整する場合にのみ調整する必要があります。
metalness : real
金属性は材料の金属性を定義する。この値は正規化され、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 を使用して Parallex Occlusion Mapping を実行するために使用されるサンプルの最小数を定義します。 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 です。このプロパティは、三角形メッシュなど、他のタイプのジオメトリをレンダリングするときには関係ありません。
警告 1以外のポイントサイズは、アンダーライイング・グラフィックスAPIによっては実行時にサポートされない場合があります。例えば、1以外のサイズを設定しても、Direct 3Dでは効果がありません。
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
このプロパティは、マテリアルの鏡面粗さを制御するための 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
このプロパティは、マテリアルのスペキュラハイライトに使用する Texture を設定します。
これは通常、環境マッピングを実行するために使用されます。モデルが回転すると、マップは環境から反射しているように見えます。これが期待通りに動作するには、TextureのmappingMode 、Texture.Environmentに設定する必要があります。スペキュラ反射マップは、比較的低コストで高品質の外観を追加する簡単な方法です。
注: light probe をSceneEnvironment に関連付け、画像ベースのライティングに頼ることで、同様の環境反射エフェクトを実現できます。しかし、ライトプローブは概念的に異なり、性能に関しては、より高価なソリューションになる可能性があります。それぞれのアプローチには固有の用途があり、どちらを使うかはケースバイケースで決める必要があります。プロパティに設定される Texture に関して言えば、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 から +infinity までの値で表します。値 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.