Spec-Zone.ru › Qt

Класс QShaderProgramBuilder

класс Qt3DRender::QShaderProgramBuilder

Генерирует содержимое программы шейдеров из загруженных графов. Подробнее...

Заголовок: #include <QShaderProgramBuilder>
CMake: find_package(Qt6 COMPONENTS 3drender REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
С момента: Qt 5.10
Инициализируется: ShaderProgramBuilder
Наследуется от: Qt3DCore::QNode
  • Список всех членов, включая наследуемые

Свойства

  • computeShaderCode : const QByteArray
  • computeShaderGraph : QUrl
  • enabledLayers : QStringList
  • fragmentShaderCode : const QByteArray
  • fragmentShaderGraph : QUrl
  • geometryShaderCode : const QByteArray
  • geometryShaderGraph : QUrl
  • shaderProgram : Qt3DRender::QShaderProgram*
  • tessellationControlShaderCode : const QByteArray
  • tessellationControlShaderGraph : QUrl
  • tessellationEvaluationShaderCode : const QByteArray
  • tessellationEvaluationShaderGraph : QUrl
  • vertexShaderCode : const QByteArray
  • vertexShaderGraph : QUrl

Открытые функции

QByteArray computeShaderCode() const
QUrl computeShaderGraph() const
QStringList enabledLayers() const
QByteArray fragmentShaderCode() const
QUrl fragmentShaderGraph() const
QByteArray geometryShaderCode() const
QUrl geometryShaderGraph() const
Qt3DRender::QShaderProgram * shaderProgram() const
QByteArray tessellationControlShaderCode() const
QUrl tessellationControlShaderGraph() const
QByteArray tessellationEvaluationShaderCode() const
QUrl tessellationEvaluationShaderGraph() const
QByteArray vertexShaderCode() const
QUrl vertexShaderGraph() const

Открытые слоты

void setComputeShaderGraph(const QUrl &computeShaderGraph)
void setEnabledLayers(const QStringList &layers)
void setFragmentShaderGraph(const QUrl &fragmentShaderGraph)
void setGeometryShaderGraph(const QUrl &geometryShaderGraph)
void setShaderProgram(Qt3DRender::QShaderProgram *program)
void setTessellationControlShaderGraph(const QUrl &tessellationControlShaderGraph)
void setTessellationEvaluationShaderGraph(const QUrl &tessellationEvaluationShaderGraph)
void setVertexShaderGraph(const QUrl &vertexShaderGraph)

Сигналы

void computeShaderCodeChanged(const QByteArray &computeShaderCode)
void computeShaderGraphChanged(const QUrl &computeShaderGraph)
void enabledLayersChanged(const QStringList &layers)
void fragmentShaderCodeChanged(const QByteArray &fragmentShaderCode)
void fragmentShaderGraphChanged(const QUrl &fragmentShaderGraph)
void geometryShaderCodeChanged(const QByteArray &geometryShaderCode)
void geometryShaderGraphChanged(const QUrl &geometryShaderGraph)
void shaderProgramChanged(Qt3DRender::QShaderProgram *shaderProgram)
void tessellationControlShaderCodeChanged(const QByteArray &tessellationControlShaderCode)
void tessellationControlShaderGraphChanged(const QUrl &tessellationControlShaderGraph)
void tessellationEvaluationShaderCodeChanged(const QByteArray &tessellationEvaluationShaderCode)
void tessellationEvaluationShaderGraphChanged(const QUrl &tessellationEvaluationShaderGraph)
void vertexShaderCodeChanged(const QByteArray &vertexShaderCode)
void vertexShaderGraphChanged(const QUrl &vertexShaderGraph)

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

Библиотека для создания программы шейдеров содержит несколько различных графов шейдеров, используемых для генерации кода шейдеров.

Сохраняется кэш сгенерированного кода шейдеров. Сгенерированные шейдеры по умолчанию сохраняются в QStandardPaths::writableLocation(QStandardPaths::TempLocation)). Этот путь может быть изменён, установив переменную окружения QT3D_WRITABLE_CACHE_PATH на допустимый путь для записи.

Использование кэша может быть отключено путём установки переменной окружения QT3D_DISABLE_SHADER_CACHE.

В большинстве случаев изменения, внесённые в граф, обнаруживаются Qt 3D, и будет сгенерирован новый элемент кэша. Один из случаев, когда этого не произойдёт, — это изменение фрагментов кода, включённых в графы. Для решения этой проблемы можно очистить каталог кэша или установить переменную окружения QT3D_REBUILD_SHADER_CACHE, чтобы принудительно перегенерировать код шейдеров.

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

[read-only, since 5.13] computeShaderCode : const QByteArray

Содержит сгенерированный код compute шейдера.

Это свойство было добавлено в Qt 5.13.

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

QByteArray computeShaderCode() const

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

void computeShaderCodeChanged(const QByteArray &computeShaderCode)

computeShaderGraph : QUrl

Содержит URL графа compute шейдера, используемого этим строителем программы шейдеров.

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

QUrl computeShaderGraph() const
void setComputeShaderGraph(const QUrl &computeShaderGraph)

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

void computeShaderGraphChanged(const QUrl &computeShaderGraph)

enabledLayers : QStringList

Содержит список слоёв, которые этот строитель активирует в графах шейдеров во время генерации кода.

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

QStringList enabledLayers() const
void setEnabledLayers(const QStringList &layers)

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

void enabledLayersChanged(const QStringList &layers)

[read-only, since 5.13] fragmentShaderCode : const QByteArray

Содержит сгенерированный код фрагментного шейдера.

Это свойство было добавлено в Qt 5.13.

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

QByteArray fragmentShaderCode() const

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

void fragmentShaderCodeChanged(const QByteArray &fragmentShaderCode)

fragmentShaderGraph : QUrl

Содержит URL графа фрагментного шейдера, используемого этим строителем программы шейдеров.

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

QUrl fragmentShaderGraph() const
void setFragmentShaderGraph(const QUrl &fragmentShaderGraph)

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

void fragmentShaderGraphChanged(const QUrl &fragmentShaderGraph)

[read-only, since 5.13] geometryShaderCode : const QByteArray

Содержит сгенерированный код геометрического шейдера.

Это свойство было добавлено в Qt 5.13.

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

QByteArray geometryShaderCode() const

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

void geometryShaderCodeChanged(const QByteArray &geometryShaderCode)

geometryShaderGraph : QUrl

Содержит URL графа геометрического шейдера, используемого этим строителем программы шейдеров.

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

QUrl geometryShaderGraph() const
void setGeometryShaderGraph(const QUrl &geometryShaderGraph)

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

void geometryShaderGraphChanged(const QUrl &geometryShaderGraph)

shaderProgram : Qt3DRender::QShaderProgram*

Содержит программу шейдеров, для которой этот строитель генерирует код.

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

Qt3DRender::QShaderProgram * shaderProgram() const
void setShaderProgram(Qt3DRender::QShaderProgram *program)

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

void shaderProgramChanged(Qt3DRender::QShaderProgram *shaderProgram)

[read-only, since 5.13] tessellationControlShaderCode : const QByteArray

Содержит сгенерированный код шейдера управления разбивкой.

Это свойство было добавлено в Qt 5.13.

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

QByteArray tessellationControlShaderCode() const

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

void tessellationControlShaderCodeChanged(const QByteArray &tessellationControlShaderCode)

tessellationControlShaderGraph : QUrl

Содержит URL графа шейдера управления разбивкой, используемого этим строителем программы шейдеров.

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

QUrl tessellationControlShaderGraph() const
void setTessellationControlShaderGraph(const QUrl &tessellationControlShaderGraph)

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

void tessellationControlShaderGraphChanged(const QUrl &tessellationControlShaderGraph)

[read-only, since 5.13] tessellationEvaluationShaderCode : const QByteArray

Содержит сгенерированный код шейдера оценки разбивки.

Это свойство было добавлено в Qt 5.13.

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

QByteArray tessellationEvaluationShaderCode() const

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

void tessellationEvaluationShaderCodeChanged(const QByteArray &tessellationEvaluationShaderCode)

tessellationEvaluationShaderGraph : QUrl

Содержит URL графа шейдера оценки разбивки, используемого этим строителем программы шейдеров.

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

QUrl tessellationEvaluationShaderGraph() const
void setTessellationEvaluationShaderGraph(const QUrl &tessellationEvaluationShaderGraph)

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

void tessellationEvaluationShaderGraphChanged(const QUrl &tessellationEvaluationShaderGraph)

[read-only, since 5.13] vertexShaderCode : const QByteArray

Содержит сгенерированный код вершинного шейдера.

Это свойство было добавлено в Qt 5.13.

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

QByteArray vertexShaderCode() const

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

void vertexShaderCodeChanged(const QByteArray &vertexShaderCode)

vertexShaderGraph : QUrl

Содержит URL графа вершинного шейдера, используемого этим создателем программы шейдеров.

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

QUrl vertexShaderGraph() const
void setVertexShaderGraph(const QUrl &vertexShaderGraph)

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

void vertexShaderGraphChanged(const QUrl &vertexShaderGraph)

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

Spec-Zone.ru

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