QMLグラフィックスレンダリング-RecursiveBlur

著者:ビリー
著作権表示:著作権は著者に帰属します。商業的転載については著者に連絡してください。非商業的転載の出典を示してください。

属性の紹介

  • キャッシュ:bool
    キャッシュ効果を使用してピクセルを出力します。これにより、レンダリングパフォーマンスが向上します。ソースまたはエフェクトのプロパティが変更されるたびに、キャッシュ内のピクセルを更新する必要があります。エフェクト出力を保存するために追加のメモリバッファが必要になるため、メモリ消費量が増加します。したがって、ソースプロパティまたはエフェクトプロパティをアニメーション化するときは、キャッシュを無効にすることをお勧めします。デフォルトはfalseです

  • ループ:int
    ソースで実行されたファジー反復の量反復ファジングプロセスは、属性が変更されたときに始まります。値が減少するか、値がゼロからゼロ以外に変化する場合、スナップショットがソースから取得されます。スナップショットは、プロセスの開始点として使用されます。反復ループは、可能な限り高速に実行しようとします。速度は、VSYNCまたは1つのファジーステップに必要な時間、あるいはその両方によって制限される場合があります。場合によっては、より遅い速度でぼかしを実行する必要があります。この場合、値を増やすアニメーションを介してプロパティを制御すると便利です。値の範囲は0からinfです。デフォルトでは、このプロパティは0に設定されています

  • 進捗状況:本物
    非同期ソースぼかしプロセスの進行状況、0.0(ぼかしなし)から1.0(完了)

  • 半径:実数
    1つのピクセルがぼやける隣接ピクセルの距離に影響します。半径が大きいほど品質は向上しますが、レンダリングは遅くなります注:このエフェクトの半径の値は、アニメーションを頻繁に変更またはトリガーすることはありません。これを使用する正しい方法は、正しい値を設定し、反復ファジーシーケンスの全期間にわたって一定に保つことです。この値の範囲は、0.0(ブラーなし)から16.0(最大ブラーステップ)です。デフォルトでは、このプロパティは0.0(ぼかしなし)に設定されています

  • ソース:バリアント
    難読化するソースアイテム注:エフェクトにそれ自体を含めることはサポートされていません

  • transparentBorder:bool
    ピクセルのぼかしがソースエッジの外側のピクセルの影響を受ける、アイテムのエッジ付近のぼかし動作このプロパティがtrueに設定されている場合、ソースの外側のピクセルは、OpenGLの境界へのクランプ拡張と同様に、透明として解釈されます。ぼかしはエフェクトアイテムの領域の少し外側に広がります。このプロパティがfalseに設定されている場合、ソースの外側のピクセルは、OpenGLのエッジへのクランプの動作と同様に、アイテムのエッジピクセルと同じ色を含むと解釈されます。ぼかしはエフェクトアイテムエリアの外には広がりません。デフォルトでは、このプロパティはfalseに設定されています

予防

  1. RecursiveBlurはOpenGLレンダリングをサポートしています
  2. RecursiveBlur再帰的ぼかし効果は、ぼかしソースを複数回再帰的にフィードバックループするアルゴリズムを使用して画像をぼかし、画像を柔らかくします。この効果は、GaussianBlurやFastBlurよりもぼやけた結果を生成する可能性がありますが、結果は非同期で生成され、より多くの時間がかかります

さまざまな数値効果の表示

ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入

公式例

import QtQuick 2.12
import QtGraphicalEffects 1.12

Item {
    width: 300
    height: 300
    
    Image {
        id: bug
        source: "images/bug.jpg"
        sourceSize: Qt.size(parent.width, parent.height)
        smooth: true
        visible: false
    }
    
    RecursiveBlur {
        anchors.fill: bug
        source: bug
        radius: 7.5
        loops: 50
    }
}

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/qq_34139994/article/details/120053642