Technique QML Type

テクニックをカプセル化します。詳細...

Import Statement: import Qt3D.Render 2.8
In C++: QTechnique
Status: Deprecated

プロパティ

詳細な説明

Technique は、RenderPass オブジェクト、FilterKey オブジェクト、Parameter オブジェクト、およびGraphicsApiFilter の集合を指定します。これらの集合は、指定されたグラフィックス API がレンダリングできるレンダリング技法を定義します。フィルタキーは、TechniqueFilter によって、FrameGraph の特定の部分で特定のテクニックを選択するために使用されます。テクニックに定義されたパラメータは、RenderPass で定義されたパラメータ(同名)をオーバーライドしますが、RenderPassFilterTechniqueFilter 、Material、Effect のパラメータによってオーバーライドされます。

複数のバージョンのグラフィックス API をターゲットとするエフェクトを作成する場合、graphicsApiFilter を設定した複数の Technique ノードを作成し、それぞれをターゲットとするバージョンの 1 つに一致させると便利です。実行時に、Qt3D レンダラは、どのグラフィックス API バージョンがサポートされているか、および(指定されている場合)FrameGraph 内で指定されたTechniqueFilter を満たすFilterKey ノードに基づいて、最も適切な Technique を選択します。

注意: OpenGL をレンダリングのためのグラフィックス API として使用する場合、Qt3D は実行時にQSurfaceFormat::defaultFormat() が返すQSurfaceFormat に依存して、利用可能な最も適切な GL バージョンを決定します。QSurfaceFormat をカスタマイズする必要がある場合は、QSurfaceFormat::setDefaultFormat() を忘れずに適用してください。ビューにQSurfaceFormat を設定しても、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 {
                // ...
            }
        }
    ]
}

EffectRenderPassTechniqueFilterも参照して ください。

プロパティ ドキュメント

filterKeys : list<FilterKey>

このテクニックを有効にするフィルタキーのリストを指定します。


graphicsApiFilter : GraphicsApiFilter [read-only]

使用するグラフィックス API フィルタを指定します。


parameters : list<Parameter>

テクニックが使用するパラメータを指定します。


renderPasses : list<RenderPass>

このテクニックで使用するレンダーパスを指定します。


本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。