Spec-Zone.ru › Qt 5.9

Класс QNormalDiffuseMapMaterial

(Qt3DExtras::QNormalDiffuseMapMaterial)

Класс QNormalDiffuseMapMaterial предоставляет стандартную реализацию освещения Фонга и эффекта рельефа, где компонент рассеянного света считывается из карты текстур, а нормали рендерируемой модели — из карты нормалей. Подробнее...

Заголовок: #include <QNormalDiffuseMapMaterial>
qmake: QT += 3dextras
С момента: Qt 5.7
Наследует: Qt3DRender::QMaterial
Наследуется от:

Qt3DExtras::QNormalDiffuseMapAlphaMaterial

  • Список всех членов, включая унаследованные

Свойства

  • ambient : QColor
  • diffuse : Qt3DRender::QAbstractTexture *
  • normal : Qt3DRender::QAbstractTexture *
  • shininess : float
  • specular : QColor
  • textureScale : float
  • 1 свойство унаследовано от Qt3DRender::QMaterial
  • 1 свойство унаследовано от Qt3DCore::QComponent
  • 3 свойства унаследовано от Qt3DCore::QNode
  • 1 свойство унаследовано от QObject

Публичные функции

QNormalDiffuseMapMaterial(Qt3DCore::QNode *parent = nullptr)
~QNormalDiffuseMapMaterial()
QColor ambient() const
Qt3DRender::QAbstractTexture * diffuse() const
Qt3DRender::QAbstractTexture * normal() const
float shininess() const
QColor specular() const
float textureScale() const
  • 4 публичных функции унаследованы от Qt3DRender::QMaterial
  • 2 публичных функции унаследованы от Qt3DCore::QComponent
  • 11 публичных функций унаследованы от Qt3DCore::QNode
  • 32 публичных функции унаследованы от QObject

Публичные слоты

void setAmbient(const QColor &ambient)
void setDiffuse(Qt3DRender::QAbstractTexture *diffuse)
void setNormal(Qt3DRender::QAbstractTexture *normal)
void setShininess(float shininess)
void setSpecular(const QColor &specular)
void setTextureScale(float textureScale)
  • 1 публичный слот унаследован от Qt3DRender::QMaterial
  • 1 публичный слот унаследован от Qt3DCore::QComponent
  • 3 публичных слота унаследованы от Qt3DCore::QNode
  • 1 публичный слот унаследован от QObject

Сигналы

void ambientChanged(const QColor &ambient)
void diffuseChanged(Qt3DRender::QAbstractTexture *diffuse)
void normalChanged(Qt3DRender::QAbstractTexture *normal)
void shininessChanged(float shininess)
void specularChanged(const QColor &specular)
void textureScaleChanged(float textureScale)
  • 1 сигнал унаследован от Qt3DRender::QMaterial
  • 3 сигнала унаследованных от Qt3DCore::QComponent
  • 4 сигнала унаследованных от Qt3DCore::QNode
  • 2 сигнала унаследованных от QObject

Защищенные функции

QNormalDiffuseMapMaterial(QNormalDiffuseMapMaterialPrivate &dd, Qt3DCore::QNode *parent = nullptr)
  • 2 защищенных функции унаследованных от Qt3DCore::QNode
  • 9 защищенных функций унаследованных от QObject

Дополнительные унаследованные члены

  • 11 статических публичных членов унаследованных от QObject

Подробное описание

Класс QNormalDiffuseMapMaterial предоставляет реализацию освещения по модели Фонга и эффекта рельефа, где компонент рассеянного света читается из текстуры, а нормали отображаемой сетки — из текстуры нормалей.

Эффект отраженного света основан на сочетании 3 компонентов освещения: окружающего, рассеянного и зеркального. Относительная интенсивность этих компонентов регулируется коэффициентами отражения, которые моделируются как RGB-тройки:

  • Окружающий — цвет, испускаемый объектом без других источников света.
  • Рассеянный — цвет, испускаемый при отражении света от грубой поверхности.
  • Зеркальный — цвет, испускаемый при отражении света от глянцевой поверхности.
  • Глянцевость поверхности регулируется плавающей точкой.

Этот материал использует эффект с однопроходной отрисовкой и выполняет освещение по фрагменту. Обеспечиваются методы для OpenGL 2, OpenGL 3 или выше, а также OpenGL ES 2.

Документация свойств

ambient : QColor

Содержит текущий цвет окружающей среды.

Функции доступа:

QColor ambient() const
void setAmbient(const QColor &ambient)

Сигнал уведомления:

void ambientChanged(const QColor &ambient)

diffuse : Qt3DRender::QAbstractTexture *

Содержит текущую текстуру карты рассеивания.

По умолчанию текстура рассеивания имеет следующие свойства:

  • Линейные фильтры уменьшения и увеличения
  • Линейное mip-картирование с включенным mip-картированием
  • Режим повторения
  • Максимальная анизотропия 16.0

Функции доступа:

Qt3DRender::QAbstractTexture * diffuse() const
void setDiffuse(Qt3DRender::QAbstractTexture *diffuse)

Сигнал уведомления:

void diffuseChanged(Qt3DRender::QAbstractTexture *diffuse)

normal : Qt3DRender::QAbstractTexture *

Содержит текущую текстуру карты нормалей.

По умолчанию текстура нормалей имеет следующие свойства:

  • Линейные фильтры уменьшения и увеличения
  • Режим повторения
  • Максимальная анизотропия 16.0

Функции доступа:

Qt3DRender::QAbstractTexture * normal() const
void setNormal(Qt3DRender::QAbstractTexture *normal)

Сигнал уведомления:

void normalChanged(Qt3DRender::QAbstractTexture *normal)

shininess : float

Содержит текущую степень блеска как значение с плавающей запятой.

Функции доступа:

float shininess() const
void setShininess(float shininess)

Сигнал уведомления:

void shininessChanged(float shininess)

specular : QColor

Содержит текущий цвет специфического отражения.

Функции доступа:

QColor specular() const
void setSpecular(const QColor &specular)

Сигнал уведомления:

void specularChanged(const QColor &specular)

textureScale : float

Содержит текущий масштаб текстуры. Он применяется как множитель к координатам текстуры во время рендеринга. По умолчанию равен 1.0.

Функции доступа:

float textureScale() const
void setTextureScale(float textureScale)

Сигнал уведомления:

void textureScaleChanged(float textureScale)

Документация по членам-функциям

QNormalDiffuseMapMaterial::QNormalDiffuseMapMaterial(Qt3DCore::QNode *parent = nullptr)

Создаёт экземпляр QNormalDiffuseMapMaterial по умолчанию.

[protected] QNormalDiffuseMapMaterial::QNormalDiffuseMapMaterial(QNormalDiffuseMapMaterialPrivate &dd, Qt3DCore::QNode *parent = nullptr)

Конструктор копирования.

QNormalDiffuseMapMaterial::~QNormalDiffuseMapMaterial()

Удаляет экземпляр QNormalDiffuseMapMaterial.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qt3dextras-qnormaldiffusemapmaterial.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API