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