Класс QDiffuseSpecularMapMaterial
(Qt3DRender::QDiffuseSpecularMapMaterial)Класс QDiffuseSpecularMapMaterial предоставляет стандартную реализацию освещения по модели Фонга и эффекта бумпинга, где компоненты рассеянного и зеркального света считываются из текстурных карт. Подробнее...
| Заголовок: | #include <QDiffuseSpecularMapMaterial> |
| qmake: | QT += 3drender |
| С тех пор: | Qt 5.5 |
| Наследует: | Qt3DRender::QMaterial |
Свойства
|
- 1 свойство унаследовано от Qt3DRender::QMaterial
- 1 свойство унаследовано от Qt3DCore::QComponent
- 2 свойства унаследованы от Qt3DCore::QNode
- 1 свойство унаследовано от QObject
Открытые функции
| QDiffuseSpecularMapMaterial(Qt3DCore::QNode *parent = Q_NULLPTR) | |
| ~QDiffuseSpecularMapMaterial() | |
| QColor | ambient() const |
| QAbstractTextureProvider * | diffuse() const |
| float | shininess() const |
| QAbstractTextureProvider * | specular() const |
| float | textureScale() const |
- 6 открытых функций унаследовано от Qt3DRender::QMaterial
- 2 открытых функции унаследовано от Qt3DCore::QComponent
- 6 открытых функций унаследовано от Qt3DCore::QNode
- 31 открытых функций унаследовано от QObject
Открытые слоты
| void | setAmbient(const QColor &ambient) |
| void | setDiffuse(QAbstractTextureProvider *diffuse) |
| void | setShininess(float shininess) |
| void | setSpecular(QAbstractTextureProvider *specular) |
| void | setTextureScale(float textureScale) |
- 1 открытый слот унаследован от Qt3DRender::QMaterial
- 1 открытый слот унаследован от Qt3DCore::QComponent
- 2 открытых слота унаследованы от Qt3DCore::QNode
- 1 открытый слот унаследован от QObject
Сигналы
| void | ambientChanged(const QColor &ambient) |
| void | diffuseChanged(QAbstractTextureProvider *diffuse) |
| void | shininessChanged(float shininess) |
| void | specularChanged(QAbstractTextureProvider *specular) |
| void | textureScaleChanged(float textureScale) |
- 1 сигнал унаследован от Qt3DRender::QMaterial
- 2 сигнала унаследованы от Qt3DCore::QComponent
- 2 сигнала унаследованы от Qt3DCore::QNode
- 2 сигнала унаследованы от QObject
Дополнительные унаследованные члены
- 11 статических открытых членов унаследованы от QObject
- 1 защищённая функция унаследована от Qt3DRender::QMaterial
- 1 защищённая функция унаследована от Qt3DCore::QComponent
- 3 защищённых функции унаследованы от Qt3DCore::QNode
- 9 защищённых функций унаследованы от QObject
- 1 статический защищённый член унаследован от Qt3DCore::QNode
Подробное описание
Класс QDiffuseSpecularMapMaterial предоставляет стандартную реализацию освещения по модели Фонга и эффекта бумпинга, где компоненты рассеянного и зеркального света считываются из текстурных карт.
Эффект зеркального освещения основан на комбинации 3 компонентов освещения: окружающего, рассеянного и зеркального. Относительные интенсивности этих компонентов контролируются коэффициентами отражения, которые моделируются как RGB-тройки:
- Окружающий — цвет, излучаемый объектом без других источников света.
- Рассеянный — цвет, излучаемый для отражений от шероховатых поверхностей со светом.
- Зеркальный — цвет, излучаемый для отражений от глянцевых поверхностей со светом.
- Глянцовость поверхности контролируется свойством float.
Этот материал использует эффект с одним этапом рендеринга и выполняет освещение на фрагментном уровне. Предлагаются методы для OpenGL 2, OpenGL 3 или выше, а также OpenGL ES 2.
Документация свойств
ambient : QColor
Содержит текущий цвет окружающей среды.
Функции доступа:
| QColor | ambient() const |
| void | setAmbient(const QColor &ambient) |
Сигнал уведомления:
| void | ambientChanged(const QColor &ambient) |
diffuse : Qt3DRender::QAbstractTextureProvider *
Содержит текущую текстуру карты рассеяния.
По умолчанию текстура рассеяния имеет следующие свойства:
- Линейные фильтры уменьшения и увеличения
- Линейное mip-мапирование с включенным mip-мапированием
- Режим повторения
- Максимальная анизотропия 16,0
Функции доступа:
| QAbstractTextureProvider * | diffuse() const |
| void | setDiffuse(QAbstractTextureProvider *diffuse) |
Сигнал уведомления:
| void | diffuseChanged(QAbstractTextureProvider *diffuse) |
shininess : float
Содержит текущую степень блеска в виде значения с плавающей точкой.
Функции доступа:
| float | shininess() const |
| void | setShininess(float shininess) |
Сигнал уведомления:
| void | shininessChanged(float shininess) |
specular : Qt3DRender::QAbstractTextureProvider *
Содержит текущую текстуру карты бликов.
По умолчанию текстура бликов имеет следующие свойства:
- Линейные фильтры уменьшения и увеличения
- Линейное mip-мапирование с включенным mip-мапированием
- Режим повторения
- Максимальная анизотропия 16,0
Функции доступа:
| QAbstractTextureProvider * | specular() const |
| void | setSpecular(QAbstractTextureProvider *specular) |
Сигнал уведомления:
| void | specularChanged(QAbstractTextureProvider *specular) |
textureScale : float
Содержит текущий масштаб текстуры в виде значения с плавающей точкой.
Функции доступа:
| float | textureScale() const |
| void | setTextureScale(float textureScale) |
Сигнал уведомления:
| void | textureScaleChanged(float textureScale) |
Документация функций-членов
QDiffuseSpecularMapMaterial::QDiffuseSpecularMapMaterial(Qt3DCore::QNode *parent = Q_NULLPTR)
Создает экземпляр QDiffuseSpecularMapMaterial по умолчанию.
QDiffuseSpecularMapMaterial::~QDiffuseSpecularMapMaterial()
Удаляет экземпляр QDiffuseSpecularMapMaterial.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qt3drender-qdiffusespecularmapmaterial.html