Spec-Zone.ru › Qt

Тип QML Technique

Инкапсулирует Technique. Подробнее...

Заявление об импорте: import Qt3D.Render
С: Qt 5.7
Инициализирует: QTechnique
  • Список всех членов, включая унаследованные

Свойства

  • filterKeys : список<FilterKey>
  • graphicsApiFilter : GraphicsApiFilter
  • parameters : список<Parameter>
  • renderPasses : список<RenderPass>

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

Technique задаёт набор объектов RenderPass, объектов FilterKey, объектов Parameter и GraphicsApiFilter, которые вместе определяют технику отрисовки, которую данный графический API может выполнить. Фильтры ключей используются TechniqueFilter для выбора определённых техник в определённых частях графа кадров (FrameGraph). Параметр, определённый в Technique, переопределяет параметр (с тем же именем), определённый в RenderPass, но переопределяется параметрами в RenderPassFilter, TechniqueFilter, Material и Effect.

При создании эффекта (Effect), нацеленного на несколько версий графического API, полезно создать несколько узлов Technique, каждый с graphicsApiFilter, настроенным на соответствие одной из целевых версий. Во время выполнения рендерер Qt3D выберет наиболее подходящую технику на основе поддерживаемых версий графического API и (при необходимости) узлов FilterKey, которые удовлетворяют заданному TechniqueFilter в FrameGraph.

Примечание: При использовании OpenGL как графического API для рендеринга, Qt3D полагается на QSurfaceFormat, возвращаемый QSurfaceFormat::defaultFormat() во время выполнения, чтобы определить наиболее подходящую версию GL. Если вам нужно настроить QSurfaceFormat, не забудьте применить её с помощью QSurfaceFormat::setDefaultFormat(). Настройка QSurfaceFormat на представлении (view) вероятно не повлияет на рендеринг, связанный с Qt3D.

Примечание: Узел Technique отключить нельзя.

Technique {
    id: gl3Technique
    parameters: [
        Parameter { name: "color"; value: "orange" }
    ]
    filterKeys: [
        FilterKey { name: "renderingStyle"; value: "forward" }
    ]
    graphicsApiFilter: {
        api: GraphicsApiFilter.OpenGL
        profile: GraphicsApiFilter.CoreProfile
        majorVersion: 3
        minorVersion: 1
    }
    renderPasses: [
        RenderPass {
            id: firstPass
            shaderProgram: ShaderProgram {
                // ...
            }
        },
        RenderPass {
            id: secondPass
            shaderProgram: ShaderProgram {
                // ...
            }
        }
    ]
}

См. также Effect, RenderPass и TechniqueFilter.

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

filterKeys : список<FilterKey>

Указывает список фильтрующих ключей, которые включают эту технику

graphicsApiFilter : GraphicsApiFilter

Указывает используемый фильтр графических API

parameters : список<Parameter>

Указывает параметры, используемые техникой

renderPasses : список<RenderPass>

Указывает используемые проходы рендеринга (render passes)

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

Spec-Zone.ru

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