QMetalRoughMaterial Class

class Qt3DExtras::QMetalRoughMaterial

QMetalRoughMaterialは、PBRライティングのデフォルト実装を提供します。詳細...

ヘッダー #include <QMetalRoughMaterial>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3dextras)
target_link_libraries(mytarget PRIVATE Qt6::3dextras)
qmake QT += 3dextras
QML で MetalRoughMaterial
を継承しています: Qt3DRender::QMaterial
ステータス非推奨

プロパティ

パブリック機能

QMetalRoughMaterial(Qt3DCore::QNode *parent = nullptr)
virtual ~QMetalRoughMaterial()
QVariant ambientOcclusion() const
QVariant baseColor() const
QVariant metalness() const
QVariant normal() const
QVariant roughness() const
float textureScale() const

パブリックスロット

void setAmbientOcclusion(const QVariant &ambientOcclusion)
void setBaseColor(const QVariant &baseColor)
void setMetalness(const QVariant &metalness)
void setNormal(const QVariant &normal)
void setRoughness(const QVariant &roughness)
void setTextureScale(float textureScale)

シグナル

void ambientOcclusionChanged(const QVariant &ambientOcclusion)
void baseColorChanged(const QVariant &baseColor)
void metalnessChanged(const QVariant &metalness)
void normalChanged(const QVariant &normal)
void roughnessChanged(const QVariant &roughness)
void textureScaleChanged(float textureScale)

詳細説明

このマテリアルはシングルレンダーパスアプローチのエフェクトを使用し、フラグメントごとにライティングを行います。テクニックはOpenGL 3とOpenGL ES 3用に提供されています。

プロパティ ドキュメント

ambientOcclusion : QVariant

マテリアルの現在のアンビエントオクルージョンマップテクスチャを保持します。テクスチャでなければ無視されます。デフォルトではこのマップは設定されていません。

アクセス関数:

QVariant ambientOcclusion() const
void setAmbientOcclusion(const QVariant &ambientOcclusion)

通知シグナル:

void ambientOcclusionChanged(const QVariant &ambientOcclusion)

baseColor : QVariant

マテリアルの現在のベースカラーを保持します。これは、プレーンなカラー値またはテクスチャのいずれかになります。デフォルトでは、このプロパティの値は "grey" です。

アクセス関数:

QVariant baseColor() const
void setBaseColor(const QVariant &baseColor)

通知シグナル:

void baseColorChanged(const QVariant &baseColor)

metalness : QVariant

マテリアルの現在のメタルネスレベルを、0(純粋に誘電体、デフォルト)から1(純粋にメタリック)の間の値として保持します。これは、一様な値またはテクスチャのいずれかになります。デフォルトでは、このプロパティの値は0です。

アクセス関数:

QVariant metalness() const
void setMetalness(const QVariant &metalness)

通知シグナル:

void metalnessChanged(const QVariant &metalness)

normal : QVariant

マテリアルの現在の法線マップテクスチャを保持します。これはテクスチャのみで、それ以外は無視されます。デフォルトでは、このマップは設定されていません。

アクセス関数:

QVariant normal() const
void setNormal(const QVariant &normal)

通知シグナル:

void normalChanged(const QVariant &normal)

roughness : QVariant

素材の現在の粗さレベルを保持します。これは一様な値またはテクスチャのいずれかになります。デフォルトでは、このプロパティの値は0です。

アクセス関数:

QVariant roughness() const
void setRoughness(const QVariant &roughness)

通知シグナル:

void roughnessChanged(const QVariant &roughness)

textureScale : float

現在のテクスチャスケールを保持します。レンダリング時にテクスチャ座標に乗数として適用されます。デフォルトは 1.0 です。

QTextureWrapMode::Repeatと組み合わせて使用すると、textureScaleは、サーフェス全体にテクスチャをタイル化する簡単な方法を提供します。例えば、4.0 のテクスチャスケールは、16 (4x4) のタイルになります。

アクセス関数

float textureScale() const
void setTextureScale(float textureScale)

通知シグナル

void textureScaleChanged(float textureScale)

メンバー関数ドキュメント

[explicit] QMetalRoughMaterial::QMetalRoughMaterial(Qt3DCore::QNode *parent = nullptr)

親オブジェクトparent を持つ新しい QMetalRoughMaterial インスタンスを構築します。

[virtual noexcept] QMetalRoughMaterial::~QMetalRoughMaterial()

QMetalRoughMaterial インスタンスを破棄します。

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