このページでは

Technique QML Type

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

Import Statement: import Qt3D.Render 2.12
In C++: QTechnique
Inherits:

Node

Status: Deprecated

この型は非推奨です。新しいコードでの使用は強く推奨しません。

プロパティ

詳細な説明

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

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

注: レンダリング用のグラフィックスAPIとしてOpenGLを使用する場合 、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 {
                // ...
            }
        }
    ]
}

関連項目: Effect 、RenderPass 、およびTechniqueFilter 。

プロパティのドキュメント

filterKeys : list<FilterKey>

この手法を有効にするフィルタキーのリストを指定します

graphicsApiFilter : GraphicsApiFilter [read-only]

使用中のグラフィックス API フィルターを指定します

parameters : list<Parameter>

この手法で使用されるパラメータを指定します

renderPasses : list<RenderPass>

このテクニックで使用されるレンダリングパスを指定します

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.