51 lines
1.2 KiB
QML
51 lines
1.2 KiB
QML
// Copyright (C) 2020 The Qt Company Ltd.
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
|
|
|
|
import QtQuick
|
|
import QtQuick3D
|
|
|
|
Effect {
|
|
readonly property TextureInput sprite: TextureInput {
|
|
texture: Texture {}
|
|
}
|
|
|
|
Shader {
|
|
id: rgbl
|
|
stage: Shader.Fragment
|
|
shader: "qrc:/qtquick3deffects/shaders/fxaaRgbl.frag"
|
|
}
|
|
Shader {
|
|
id: blur
|
|
stage: Shader.Fragment
|
|
shader: "qrc:/qtquick3deffects/shaders/fxaaBlur.frag"
|
|
}
|
|
Buffer {
|
|
id: rgblBuffer
|
|
name: "rgbl_buffer"
|
|
format: Buffer.RGBA8
|
|
textureFilterOperation: Buffer.Linear
|
|
textureCoordOperation: Buffer.ClampToEdge
|
|
bufferFlags: Buffer.None // aka frame
|
|
}
|
|
|
|
passes: [
|
|
Pass {
|
|
shaders: [ rgbl ]
|
|
output: rgblBuffer
|
|
},
|
|
Pass {
|
|
shaders: [ blur ]
|
|
commands: [
|
|
// INPUT is the texture for rgblBuffer
|
|
BufferInput {
|
|
buffer: rgblBuffer
|
|
},
|
|
// the actual input texture is exposed as sprite
|
|
BufferInput {
|
|
sampler: "sprite"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|