This commit is contained in:
Sven Riwoldt
2024-10-19 12:31:37 +02:00
commit f7f8c52455
10176 changed files with 1619386 additions and 0 deletions

View File

@@ -0,0 +1,49 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property vector3d bottomColor: Qt.vector3d(0.0, 0.0, 0.0)
property vector3d topColor: Qt.vector3d(1.0, 1.0, 1.0)
Shader {
id: additivecolorgradient
stage: Shader.Fragment
shader: "shaders/additivecolorgradient.frag"
}
passes: [
Pass {
shaders: additivecolorgradient
}
]
}

View File

@@ -0,0 +1,48 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property real amount: 0.01
Shader {
id: blur
stage: Shader.Fragment
shader: "shaders/blur.frag"
}
passes: [
Pass {
shaders: blur
}
]
}

View File

@@ -0,0 +1,64 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property TextureInput noiseSample: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/brushnoise.png"
}
}
property real brushLength: 1.0 // 0 - 3
property real brushSize: 100.0 // 10 - 200
property real brushAngle: 45.0
readonly property real sinAlpha: Math.sin(degrees_to_radians(brushAngle))
readonly property real cosAlpha: Math.cos(degrees_to_radians(brushAngle))
function degrees_to_radians(degrees) {
var pi = Math.PI;
return degrees * (pi/180);
}
Shader {
id: brushstrokes
stage: Shader.Fragment
shader: "shaders/brushstrokes.frag"
}
passes: [
Pass {
shaders: brushstrokes
}
]
}

View File

@@ -0,0 +1,70 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property TextureInput maskTexture: TextureInput {
texture: Texture {
source: "maps/white.png"
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
}
}
readonly property TextureInput sourceTexture: TextureInput {
texture: Texture {}
}
readonly property TextureInput depthTexture: TextureInput {
texture: Texture {}
}
property real aberrationAmount: 50
property real focusDepth: 600
Shader {
id: chromaticAberration
stage: Shader.Fragment
shader: "shaders/chromaticaberration.frag"
}
passes: [
Pass {
shaders: chromaticAberration
commands: [
BufferInput {
param: "sourceTexture"
},
DepthInput {
param: "depthTexture"
}
]
}
]
}

View File

@@ -0,0 +1,51 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property real redStrength: 1.0 // 0 - 2
property real greenStrength: 1.5 // 0 - 2
property real blueStrength: 1.0 // 0 - 2
property real saturation: 0.0 // -1 - 1
Shader {
id: colormaster
stage: Shader.Fragment
shader: "shaders/colormaster.frag"
}
passes: [
Pass {
shaders: colormaster
}
]
}

View File

@@ -0,0 +1,100 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
readonly property TextureInput sourceSampler: TextureInput {
texture: Texture {}
}
readonly property TextureInput depthSampler: TextureInput {
texture: Texture {}
}
property real focusDistance: 600
property real focusRange: 100
property real blurAmount: 4
Shader {
id: downsampleVert
stage: Shader.Vertex
shader: "shaders/downsample.vert"
}
Shader {
id: downsampleFrag
stage: Shader.Fragment
shader: "shaders/downsample.frag"
}
Shader {
id: blurVert
stage: Shader.Vertex
shader: "shaders/depthoffieldblur.vert"
}
Shader {
id: blurFrag
stage: Shader.Fragment
shader: "shaders/depthoffieldblur.frag"
}
Buffer {
id: downsampleBuffer
name: "downsampleBuffer"
format: Buffer.RGBA8
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
bufferFlags: Buffer.None
sizeMultiplier: 0.5
}
passes: [
Pass {
shaders: [ downsampleVert, downsampleFrag ]
commands: BufferInput {
param: "depthSampler"
}
output: downsampleBuffer
},
Pass {
shaders: [ blurVert, blurFrag ]
commands: [
BufferInput {
buffer: downsampleBuffer
},
BufferInput {
param: "sourceSampler"
},
DepthInput {
param: "depthSampler"
}
]
}
]
}

View File

@@ -0,0 +1,48 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property real amount: 0.5
Shader {
id: desaturate
stage: Shader.Fragment
shader: "shaders/desaturate.frag"
}
passes: [
Pass {
shaders: desaturate
}
]
}

View File

@@ -0,0 +1,58 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property real radius: 100.0 // 0 - 100
property real distortionWidth: 10.0 // 2 - 100
property real distortionHeight: 10.0 // 0 - 100
property real distortionPhase: 0.0 // 0 - 360
property vector2d center: Qt.vector2d(0.5, 0.5)
Shader {
id: distortionVert
stage: Shader.Vertex
shader: "shaders/distortion.vert"
}
Shader {
id: distortionFrag
stage: Shader.Fragment
shader: "shaders/distortionripple.frag"
}
passes: [
Pass {
shaders: [ distortionVert, distortionFrag ]
}
]
}

View File

@@ -0,0 +1,56 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property real radius: 0.25 // 0 - 1
property real distortionHeight: 0.5 // -1 - 1
property vector2d center: Qt.vector2d(0.5, 0.5)
Shader {
id: distortionVert
stage: Shader.Vertex
shader: "shaders/distortion.vert"
}
Shader {
id: distortionFrag
stage: Shader.Fragment
shader: "shaders/distortionsphere.frag"
}
passes: [
Pass {
shaders: [ distortionVert, distortionFrag ]
}
]
}

View File

@@ -0,0 +1,56 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property real radius: 0.25 // 0 - 1
property real distortionStrength: 1.0 // -10 - 10
property vector2d center: Qt.vector2d(0.5, 0.5)
Shader {
id: distortionVert
stage: Shader.Vertex
shader: "shaders/distortion.vert"
}
Shader {
id: distortionFrag
stage: Shader.Fragment
shader: "shaders/distortionspiral.frag"
}
passes: [
Pass {
shaders: [ distortionVert, distortionFrag ]
}
]
}

View File

@@ -0,0 +1,54 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property real edgeStrength: 0.5 // 0 - 1
Shader {
id: edgeVert
stage: Shader.Vertex
shader: "shaders/edgedetect.vert"
}
Shader {
id: edgeFrag
stage: Shader.Fragment
shader: "shaders/edgedetect.frag"
}
passes: [
Pass {
shaders: [ edgeVert, edgeFrag ]
}
]
}

View File

@@ -0,0 +1,48 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property real amount: 0.003 // 0 - 0.01
Shader {
id: emboss
stage: Shader.Fragment
shader: "shaders/emboss.frag"
}
passes: [
Pass {
shaders: emboss
}
]
}

View File

@@ -0,0 +1,49 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property bool flipHorizontally: true
property bool flipVertically: true
Shader {
id: flip
stage: Shader.Fragment
shader: "shaders/flip.frag"
}
passes: [
Pass {
shaders: flip
}
]
}

View File

@@ -0,0 +1,73 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
readonly property TextureInput sprite: TextureInput {
texture: Texture {}
}
Shader {
id: rgbl
stage: Shader.Fragment
shader: "shaders/fxaaRgbl.frag"
}
Shader {
id: blur
stage: Shader.Fragment
shader: "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: [ BufferInput {
buffer: rgblBuffer
}, BufferInput {
param: "sprite"
}
]
}
]
}

View File

@@ -0,0 +1,75 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property real amount: 2 // 0 - 10
Shader {
id: vertical
stage: Shader.Vertex
shader: "shaders/blurvertical.vert"
}
Shader {
id: horizontal
stage: Shader.Vertex
shader: "shaders/blurhorizontal.vert"
}
Shader {
id: gaussianblur
stage: Shader.Fragment
shader: "shaders/gaussianblur.frag"
}
Buffer {
id: tempBuffer
name: "tempBuffer"
format: Buffer.RGBA8
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
bufferFlags: Buffer.None // aka frame
}
passes: [
Pass {
shaders: [ horizontal, gaussianblur ]
output: tempBuffer
},
Pass {
shaders: [ vertical, gaussianblur ]
commands: [
BufferInput {
buffer: tempBuffer
}
]
}
]
}

View File

@@ -0,0 +1,155 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
readonly property TextureInput downsample2: TextureInput {
texture: Texture {}
}
readonly property TextureInput downsample4: TextureInput {
texture: Texture {}
}
property real gamma: 1 // 0.1 - 4
property real exposure: 0 // -9 - 9
readonly property real exposureExp2: Math.pow(2, exposure)
property real bloomThreshold: 1
property real blurFalloff: 0 // 0 - 10
readonly property real negativeBlurFalloffExp2: Math.pow(2, -blurFalloff)
property real tonemappingLerp: 1 // 0 - 1
property real channelThreshold: 1
readonly property real poissonRotation: 0
readonly property real poissonDistance: 4
Shader {
id: luminosityVert
stage: Shader.Vertex
shader: "shaders/luminosity.vert"
}
Shader {
id: luminosityFrag
stage: Shader.Fragment
shader: "shaders/luminosity.frag"
}
Shader {
id: blurVert
stage: Shader.Vertex
shader: "shaders/poissonblur.vert"
}
Shader {
id: blurFrag
stage: Shader.Fragment
shader: "shaders/poissonblur.frag"
}
Shader {
id: combiner
stage: Shader.Fragment
shader: "shaders/combiner.frag"
}
Buffer {
id: luminosity_buffer2
name: "luminosity_buffer2"
format: Buffer.RGBA8
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
bufferFlags: Buffer.None
sizeMultiplier: 0.5
}
Buffer {
id: downsample_buffer2
name: "downsample_buffer2"
format: Buffer.RGBA8
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
bufferFlags: Buffer.None
sizeMultiplier: 0.5
}
Buffer {
id: downsample_buffer4
name: "downsample_buffer4"
format: Buffer.RGBA8
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
bufferFlags: Buffer.None
sizeMultiplier: 0.25
}
passes: [
Pass {
shaders: [ luminosityVert, luminosityFrag ]
output: downsample_buffer2
},
Pass {
shaders: [ luminosityVert, luminosityFrag ]
commands: BufferInput {
buffer: downsample_buffer2
}
output: luminosity_buffer2
},
Pass {
shaders: [ blurVert, blurFrag ]
commands: BufferInput {
buffer: luminosity_buffer2
}
output: downsample_buffer2
},
Pass {
shaders: [ blurVert, blurFrag ]
commands: [
SetUniformValue {
target: "poissonRotation"
value: 0.62831
},
BufferInput {
buffer: luminosity_buffer2
}
]
output: downsample_buffer4
},
Pass {
shaders: combiner
commands: [
BufferInput {
param: "downsample2"
buffer: downsample_buffer2
},
BufferInput {
param: "downsample4"
buffer: downsample_buffer4
}
]
}
]
}

View File

@@ -0,0 +1,121 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
readonly property TextureInput sprite: TextureInput {
texture: Texture {}
}
property real fadeAmount: 0.25 // 0 - 1
property real blurQuality: 0.25 // 0.1 - 1.0
Shader {
id: vblurVert
stage: Shader.Vertex
shader: "shaders/motionblurvertical.vert"
}
Shader {
id: vblurFrag
stage: Shader.Fragment
shader: "shaders/motionblurvertical.frag"
}
Shader {
id: hblurVert
stage: Shader.Vertex
shader: "shaders/motionblurhorizontal.vert"
}
Shader {
id: hblurFrag
stage: Shader.Fragment
shader: "shaders/motionblurhorizontal.frag"
}
Shader {
id: blend
stage: Shader.Fragment
shader: "shaders/blend.frag"
}
Buffer {
id: glowBuffer
name: "glowBuffer"
format: Buffer.RGBA8
textureFilterOperation: Buffer.Nearest
textureCoordOperation: Buffer.ClampToEdge
bufferFlags: Buffer.SceneLifetime
sizeMultiplier: blurQuality
}
Buffer {
id: tempBuffer
name: "tempBuffer"
format: Buffer.RGBA8
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
bufferFlags: Buffer.None
sizeMultiplier: blurQuality
}
passes: [
Pass {
shaders: [ hblurVert, hblurFrag ]
commands: [
BufferInput {
param: "glowSampler"
buffer: glowBuffer
}
]
output: tempBuffer
},
Pass {
shaders: [ vblurVert, vblurFrag ]
commands: [
BufferInput {
buffer: tempBuffer
}
]
output: glowBuffer
},
Pass {
shaders: blend
commands: [
BufferInput {
buffer: glowBuffer
},
BufferInput {
param: "sprite"
}
]
}
]
}

View File

@@ -0,0 +1,64 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.14
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property real shoulderSlope: 1.0 // 0.0 - 3.0
property real shoulderEmphasis: 0 // -1.0 - 1.0
property real toeSlope: 1.0 // 0.0 - 3.0
property real toeEmphasis: 0 // -1.0 - 1.0
property real contrastBoost: 0 // -1.0 - 2.0
property real saturationLevel: 1 // 0.0 - 2.0
property real gammaValue: 2.2 // 0.1 - 8.0
property bool useExposure: false
property real whitePoint: 1.0 // 0.01 - 128.0
property real exposureValue: 1.0 // 0.01 - 16.0
Shader {
id: tonemapShader
stage: Shader.Fragment
shader: "shaders/scurvetonemap.frag"
}
Buffer {
// LDR output
id: defaultOutput
format: Buffer.RGBA8
}
passes: [
Pass {
shaders: tonemapShader
output: defaultOutput
}
]
}

View File

@@ -0,0 +1,57 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property TextureInput noiseSample: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/brushnoise.png"
}
}
property real amount: 10.0 // 0 - 127
property int direction: 0 // 0 = both, 1 = horizontal, 2 = vertical
property bool randomize: true
Shader {
id: scatter
stage: Shader.Fragment
shader: "shaders/scatter.frag"
}
passes: [
Pass {
shaders: [ scatter ]
}
]
}

View File

@@ -0,0 +1,93 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
readonly property TextureInput sourceSampler: TextureInput {
texture: Texture {}
}
property real focusPosition: 0.5 // 0 - 1
property real focusWidth: 0.2 // 0 - 1
property real blurAmount: 4 // 0 - 10
property bool isVertical: false
property bool isInverted: false
Shader {
id: downsampleVert
stage: Shader.Vertex
shader: "shaders/downsample.vert"
}
Shader {
id: downsampleFrag
stage: Shader.Fragment
shader: "shaders/downsampletiltshift.frag"
}
Shader {
id: blurVert
stage: Shader.Vertex
shader: "shaders/poissonblurtiltshift.vert"
}
Shader {
id: blurFrag
stage: Shader.Fragment
shader: "shaders/poissonblurtiltshift.frag"
}
Buffer {
id: downsampleBuffer
name: "downsampleBuffer"
format: Buffer.RGBA8
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
bufferFlags: Buffer.None
sizeMultiplier: 0.5
}
passes: [
Pass {
shaders: [ downsampleVert, downsampleFrag ]
output: downsampleBuffer
},
Pass {
shaders: [ blurVert, blurFrag ]
commands: [
BufferInput {
buffer: downsampleBuffer
},
BufferInput {
param: "sourceSampler"
}
]
}
]
}

View File

@@ -0,0 +1,50 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
property real vignetteStrength: 15 // 0 - 15
property vector3d vignetteColor: Qt.vector3d(0.5, 0.5, 0.5)
property real vignetteRadius: 0.35 // 0 - 5
Shader {
id: vignette
stage: Shader.Fragment
shader: "shaders/vignette.frag"
}
passes: [
Pass {
shaders: vignette
}
]
}

View File

@@ -0,0 +1,59 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
Section {
caption: qsTr("Additive Color Gradient")
width: parent.width
SectionLayout {
PropertyLabel { text: qsTr("Top Color") }
ColorEditor {
backendValue: backendValues.topColor
supportGradient: false
isVector3D: true
}
PropertyLabel { text: qsTr("Bottom Color") }
ColorEditor {
backendValue: backendValues.ambientColor
supportGradient: false
isVector3D: true
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
AdditiveColorGradientSection {
width: parent.width
}
}

View File

@@ -0,0 +1,63 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Blur")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Amount")
tooltip: qsTr("Strength of the blur.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 0.1
minimumValue: 0
decimals: 3
stepSize: 0.01
backendValue: backendValues.amount
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
BlurSection {
width: parent.width
}
}

View File

@@ -0,0 +1,123 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Noise")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Noise Sample Texture")
tooltip: qsTr("Defines a texture for noise samples.")
}
SecondColumnLayout {
IdComboBox {
typeFilter: "QtQuick3D.Texture"
backendValue: backendValues.noiseSample_texture
defaultItem: qsTr("Default")
implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
Section {
caption: qsTr("Brush")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Length")
tooltip: qsTr("Length of the brush.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 3
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.brushLength
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Size")
tooltip: qsTr("Size of the brush.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 200
minimumValue: 10
decimals: 0
backendValue: backendValues.brushSize
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Angle")
tooltip: qsTr("Angle of the brush")
}
SecondColumnLayout {
SpinBox {
maximumValue: 360
minimumValue: 0
decimals: 0
backendValue: backendValues.brushAngle
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
BrushStrokesSection {
width: parent.width
}
}

View File

@@ -0,0 +1,105 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Mask")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Mask Texture")
tooltip: qsTr("Defines a texture for mask.")
}
SecondColumnLayout {
IdComboBox {
typeFilter: "QtQuick3D.Texture"
backendValue: backendValues.maskTexture_texture
defaultItem: qsTr("Default")
implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
Section {
caption: qsTr("Aberration")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Amount")
tooltip: qsTr("Amount of aberration.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1000
minimumValue: -1000
decimals: 0
backendValue: backendValues.aberrationAmount
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Focus Depth")
tooltip: qsTr("Focus depth of the aberration.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 10000
minimumValue: 0
realDragRange: 5000
decimals: 0
backendValue: backendValues.focusDepth
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
ChromaticAberrationSection {
width: parent.width
}
}

View File

@@ -0,0 +1,120 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Colors")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Red Strength")
tooltip: qsTr("Red strength.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 2
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.redStrength
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Green Strength")
tooltip: qsTr("Green strength.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 2
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.greenStrength
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Blue Strength")
tooltip: qsTr("Blue strength.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 2
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.blueStrength
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Saturation")
tooltip: qsTr("Color saturation.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: -1
decimals: 2
stepSize: 0.1
backendValue: backendValues.saturation
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
ColorMasterSection {
width: parent.width
}
}

View File

@@ -0,0 +1,98 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Blur")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Blur Amount")
tooltip: qsTr("Amount of blur.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 50
minimumValue: 0
decimals: 2
backendValue: backendValues.blurAmount
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Focus Distance")
tooltip: qsTr("Focus distance of the blur.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 5000
minimumValue: 0
decimals: 0
backendValue: backendValues.focusDistance
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Focus Range")
tooltip: qsTr("Focus range of the blur.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 5000
minimumValue: 0
decimals: 0
backendValue: backendValues.focusRange
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
DepthOfFieldHQBlurSection {
width: parent.width
}
}

View File

@@ -0,0 +1,63 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Desaturate")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Amount")
tooltip: qsTr("Strength of the desaturate.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: -1
decimals: 2
stepSize: 0.1
backendValue: backendValues.amount
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
DesaturateSection {
width: parent.width
}
}

View File

@@ -0,0 +1,157 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Distortion Ripple")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Radius")
tooltip: qsTr("Radius of the effect.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 100
minimumValue: 0
decimals: 2
backendValue: backendValues.radius
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Width")
tooltip: qsTr("Width of the distortion.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 100
minimumValue: 2
decimals: 2
backendValue: backendValues.distortionWidth
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Height")
tooltip: qsTr("Height of the distortion.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 100
minimumValue: 0
decimals: 2
backendValue: backendValues.distortionHeight
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Phase")
tooltip: qsTr("Phase of the distortion.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 360
minimumValue: 0
decimals: 0
backendValue: backendValues.distortionPhase
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Center")
tooltip: qsTr("Center of the distortion.")
}
SecondColumnLayout {
SpinBox {
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.center_x
}
Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
ControlLabel { text: "X" }
Spacer { implicitWidth: StudioTheme.Values.controlGap }
SpinBox {
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.center_y
}
Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
ControlLabel { text: "Y" }
Spacer { implicitWidth: StudioTheme.Values.controlGap }
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
DistortionRippleSection {
width: parent.width
}
}

View File

@@ -0,0 +1,123 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Distortion Sphere")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Radius")
tooltip: qsTr("Radius of the effect.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.radius
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Height")
tooltip: qsTr("Height of the distortion.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: -1
decimals: 2
stepSize: 0.1
backendValue: backendValues.distortionHeight
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Center")
tooltip: qsTr("Center of the distortion.")
}
SecondColumnLayout {
SpinBox {
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.center_x
}
Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
ControlLabel { text: "X" }
Spacer { implicitWidth: StudioTheme.Values.controlGap }
SpinBox {
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.center_y
}
Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
ControlLabel { text: "Y" }
Spacer { implicitWidth: StudioTheme.Values.controlGap }
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
DistortionSphereSection {
width: parent.width
}
}

View File

@@ -0,0 +1,122 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Distortion Spiral")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Radius")
tooltip: qsTr("Radius of the effect.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.radius
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Strength")
tooltip: qsTr("Strength of the distortion.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 10
minimumValue: -10
decimals: 2
backendValue: backendValues.distortionStrength
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Center")
tooltip: qsTr("Center of the distortion.")
}
SecondColumnLayout {
SpinBox {
minimumValue: 0
maximumValue: 1
decimals: 2
stepSize: 0.1
backendValue: backendValues.center_x
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
ControlLabel { text: "X" }
Spacer { implicitWidth: StudioTheme.Values.controlGap }
SpinBox {
minimumValue: 0
maximumValue: 1
decimals: 2
stepSize: 0.1
backendValue: backendValues.center_y
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
Spacer { implicitWidth: StudioTheme.Values.controlLabelGap }
ControlLabel { text: "Y" }
Spacer { implicitWidth: StudioTheme.Values.controlGap }
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
DistortionSpiralSection {
width: parent.width
}
}

View File

@@ -0,0 +1,63 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Edge Detect")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Strength")
tooltip: qsTr("Strength of the edge.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.edgeStrength
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
EdgeDetectSection {
width: parent.width
}
}

View File

@@ -0,0 +1,61 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Section {
caption: qsTr("Effect")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Passes")
tooltip: qsTr("Render passes of the effect.")
Layout.alignment: Qt.AlignTop
Layout.topMargin: 5
}
SecondColumnLayout {
EditableListView {
backendValue: backendValues.passes
model: backendValues.passes.expressionAsList
Layout.fillWidth: true
typeFilter: "QtQuick3D.Pass"
onAdd: function(value) { backendValues.passes.idListAdd(value) }
onRemove: function(idx) { backendValues.passes.idListRemove(idx) }
onReplace: function (idx, value) { backendValues.passes.idListReplace(idx, value) }
}
ExpandingSpacer {}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
EffectSection {
width: parent.width
}
}

View File

@@ -0,0 +1,63 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Emboss")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Amount")
tooltip: qsTr("Strength of the emboss.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 0.01
minimumValue: 0
decimals: 4
stepSize: 0.001
backendValue: backendValues.amount
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,41 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
EmbossSection {
width: parent.width
}
}

View File

@@ -0,0 +1,75 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
Section {
caption: qsTr("Flip")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Horizontal")
tooltip: qsTr("Flip horizontally.")
}
SecondColumnLayout {
CheckBox {
text: backendValues.flipHorizontally.valueToString
backendValue: backendValues.flipHorizontally
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Vertical")
tooltip: qsTr("Flip vertically.")
}
SecondColumnLayout {
CheckBox {
text: backendValues.flipVertically.valueToString
backendValue: backendValues.flipVertically
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
FlipSection {
width: parent.width
}
}

View File

@@ -0,0 +1,38 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
// Fxaa effect has no modifiable properties
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
FxaaSection {
width: parent.width
}
}

View File

@@ -0,0 +1,62 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Gaussian Blur")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Amount")
tooltip: qsTr("Strength of the blur.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 10
minimumValue: 0
decimals: 2
backendValue: backendValues.amount
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
GaussianBlurSection {
width: parent.width
}
}

View File

@@ -0,0 +1,156 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Tonemap")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Gamma")
tooltip: qsTr("Amount of gamma.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 4
minimumValue: 0.1
decimals: 2
stepSize: 0.1
backendValue: backendValues.gamma
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Exposure")
tooltip: qsTr("Amount of exposure.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 9
minimumValue: -9
decimals: 2
backendValue: backendValues.exposure
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Blur Falloff")
tooltip: qsTr("Amount of blur falloff.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 10
minimumValue: 0
decimals: 2
backendValue: backendValues.blurFalloff
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Tonemapping Lerp")
tooltip: qsTr("Tonemapping linear interpolation value.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.tonemappingLerp
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Bloom Threshold")
tooltip: qsTr("Bloom color threshold value.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0
decimals: 3
stepSize: 0.1
backendValue: backendValues.bloomThreshold
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Channel Threshold")
tooltip: qsTr("Channel color threshold value.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0
decimals: 3
stepSize: 0.1
backendValue: backendValues.channelThreshold
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
HDRBloomTonemapSection {
width: parent.width
}
}

View File

@@ -0,0 +1,123 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import HelperWidgets 2.0
ComboBox {
id: comboBox
property alias typeFilter: itemFilterModel.typeFilter
manualMapping: true
editable: true
model: comboBox.addDefaultItem(itemFilterModel.itemModel)
textInput.validator: RegExpValidator { regExp: /(^$|^[a-z_]\w*)/ }
ItemFilterModel {
id: itemFilterModel
modelNodeBackendProperty: modelNodeBackend
}
property string defaultItem: qsTr("None")
property string textValue: comboBox.backendValue.expression
property bool block: false
property bool dirty: true
property var editRegExp: /^[a-z_]\w*/
onTextValueChanged: {
if (comboBox.block)
return
comboBox.setCurrentText(comboBox.textValue)
}
onModelChanged: comboBox.setCurrentText(comboBox.textValue)
onCompressedActivated: function(index, reason) { comboBox.handleActivate(index) }
Component.onCompleted: comboBox.setCurrentText(comboBox.textValue)
onEditTextChanged: {
comboBox.dirty = true
colorLogic.errorState = !(editRegExp.exec(comboBox.editText) !== null
|| comboBox.editText === parenthesize(defaultItem))
}
onFocusChanged: {
if (comboBox.dirty)
comboBox.handleActivate(comboBox.currentIndex)
}
function handleActivate(index)
{
if (!comboBox.__isCompleted || comboBox.backendValue === undefined)
return
var cText = (index === -1) ? comboBox.editText : comboBox.textAt(index)
comboBox.block = true
comboBox.setCurrentText(cText)
comboBox.block = false
}
function setCurrentText(text)
{
if (!comboBox.__isCompleted || comboBox.backendValue === undefined)
return
comboBox.currentIndex = comboBox.find(text)
if (text === "") {
comboBox.currentIndex = 0
comboBox.editText = parenthesize(comboBox.defaultItem)
} else {
if (comboBox.currentIndex === -1)
comboBox.editText = text
else if (comboBox.currentIndex === 0)
comboBox.editText = parenthesize(comboBox.defaultItem)
}
if (comboBox.currentIndex === 0) {
comboBox.backendValue.resetValue()
} else {
if (comboBox.backendValue.expression !== comboBox.editText)
comboBox.backendValue.expression = comboBox.editText
}
comboBox.dirty = false
}
function addDefaultItem(arr)
{
var copy = arr.slice()
copy.unshift(parenthesize(comboBox.defaultItem))
return copy
}
function parenthesize(value)
{
return "[" + value + "]"
}
}

View File

@@ -0,0 +1,82 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Motion Blur")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Fade Amount")
tooltip: qsTr("Specifies how much the blur fades away each frame.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.fadeAmount
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Quality")
tooltip: qsTr("Blur quality.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0.1
decimals: 2
stepSize: 0.1
backendValue: backendValues.blurQuality
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,39 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
MotionBlurSection {
width: parent.width
}
}

View File

@@ -0,0 +1,236 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Curve")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Shoulder Slope")
tooltip: qsTr("Set the slope of the curve shoulder.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 3
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.shoulderSlope
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Shoulder Emphasis")
tooltip: qsTr("Set the emphasis of the curve shoulder.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: -1
decimals: 2
stepSize: 0.1
backendValue: backendValues.shoulderEmphasis
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Toe Slope")
tooltip: qsTr("Set the slope of the curve toe.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 3
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.toeSlope
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Toe Emphasis")
tooltip: qsTr("Set the emphasis of the curve toe.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: -1
decimals: 2
stepSize: 0.1
backendValue: backendValues.toeEmphasis
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
Section {
caption: qsTr("Color")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Contrast Boost")
tooltip: qsTr("Set the contrast boost amount.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 2
minimumValue: -1
decimals: 2
stepSize: 0.1
backendValue: backendValues.contrastBoost
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Saturation Level")
tooltip: qsTr("Set the color saturation level.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 2
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.saturationLevel
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Gamma")
tooltip: qsTr("Set the gamma value.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 8
minimumValue: 0.1
decimals: 2
stepSize: 0.1
backendValue: backendValues.gammaValue
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Use Exposure")
tooltip: qsTr("Specifies if the exposure or white point should be used.")
}
SecondColumnLayout {
CheckBox {
text: backendValues.useExposure.valueToString
backendValue: backendValues.useExposure
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("White Point")
tooltip: qsTr("Set the white point value.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 128
minimumValue: 0.01
decimals: 2
backendValue: backendValues.whitePoint
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Exposure")
tooltip: qsTr("Set the exposure value.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 16
minimumValue: 0.01
decimals: 2
backendValue: backendValues.exposureValue
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
SCurveTonemapSection {
width: parent.width
}
}

View File

@@ -0,0 +1,120 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Noise")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Noise Sample Texture")
tooltip: qsTr("Defines a texture for noise samples.")
}
SecondColumnLayout {
IdComboBox {
typeFilter: "QtQuick3D.Texture"
backendValue: backendValues.noiseSample_texture
defaultItem: qsTr("Default")
implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
Section {
caption: qsTr("Scatter")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Amount")
tooltip: qsTr("Amount of scatter.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 127
minimumValue: 0
decimals: 2
backendValue: backendValues.amount
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Direction")
tooltip: qsTr("Direction of scatter. 0 = both, 1 = horizontal, 2 = vertical.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 2
minimumValue: 0
decimals: 0
backendValue: backendValues.direction
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Randomize")
tooltip: qsTr("Specifies if the scatter is random.")
}
SecondColumnLayout {
CheckBox {
text: backendValues.randomize.valueToString
backendValue: backendValues.randomize
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
ScatterSection {
width: parent.width
}
}

View File

@@ -0,0 +1,132 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Tilt Shift")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Focus Position")
tooltip: qsTr("Set the focus position.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.focusPosition
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Focus Width")
tooltip: qsTr("Set the focus width.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.focusWidth
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Blur Amount")
tooltip: qsTr("Set the blur amount.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 10
minimumValue: 0
decimals: 2
backendValue: backendValues.blurAmount
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Vertical")
tooltip: qsTr("Specifies if the tilt shift is vertical.")
}
SecondColumnLayout {
CheckBox {
text: backendValues.isVertical.valueToString
backendValue: backendValues.isVertical
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Inverted")
tooltip: qsTr("Specifies if the tilt shift is inverted.")
}
SecondColumnLayout {
CheckBox {
text: backendValues.isInverted.valueToString
backendValue: backendValues.isInverted
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
TiltShiftSection {
width: parent.width
}
}

View File

@@ -0,0 +1,89 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Vignette")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Strength")
tooltip: qsTr("Set the vignette strength.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 15
minimumValue: 0
decimals: 2
backendValue: backendValues.vignetteStrength
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Radius")
tooltip: qsTr("Set the vignette radius.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 5
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.vignetteRadius
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel { text: qsTr("Vignette Color") }
ColorEditor {
backendValue: backendValues.vignetteColor
supportGradient: false
isVector3D: true
}
}
}
}

View File

@@ -0,0 +1,40 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
Column {
width: parent.width
VignetteSection {
width: parent.width
}
}

View File

@@ -0,0 +1,421 @@
MetaInfo {
Type {
name: "QtQuick3D.Effects.AdditiveColorGradient"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Additive Color Gradient"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.Blur"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Blur"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.BrushStrokes"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Brush Strokes"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.ChromaticAberration"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Chromatic Aberration"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.ColorMaster"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Color Master"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.DepthOfFieldHQBlur"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Depth of Field HQ Blur"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.Desaturate"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Desaturate"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.DistortionRipple"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Distortion Ripple"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.DistortionSphere"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Distortion Sphere"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.DistortionSpiral"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Distortion Spiral"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.EdgeDetect"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Edge Detect"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.Emboss"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Emboss"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.Flip"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Flip"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.Fxaa"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Fxaa"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.GaussianBlur"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Gaussian Blur"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.HDRBloomTonemap"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "HDR Bloom Tonemap"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.MotionBlur"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Motion Blur"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.Scatter"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Scatter"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.SCurveTonemap"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "SCurve Tonemap"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.TiltShift"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Tilt Shift"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.Vignette"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
canBeDroppedInView3D: false
}
ItemLibraryEntry {
name: "Vignette"
category: "Qt Quick 3D Effects"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
}
}
Type {
name: "QtQuick3D.Effects.Effect"
icon: "images/effect16.png"
Hints {
visibleInNavigator: true
canBeDroppedInNavigator: true
canBeDroppedInFormEditor: false
}
ItemLibraryEntry {
name: "Effect"
category: "Qt Quick 3D Custom Shader Utils"
libraryIcon: "images/effect.png"
version: "1.15"
requiredImport: "QtQuick3D.Effects"
QmlSource { source: "./source/effect_template.qml" }
ExtraFile { source: "./source/effect_default_shader.frag" }
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 411 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 321 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 714 B

View File

@@ -0,0 +1,4 @@
void frag() {
vec4 mainCol = texture2D_0(vec2(TexCoord.x, TexCoord.y));
gl_FragColor = vec4(1.0 - mainCol.r, 1.0 - mainCol.g, 1.0 - mainCol.b, mainCol.a);
}

View File

@@ -0,0 +1,47 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Effects 1.15
Effect {
passes: renderPass
Pass {
id: renderPass
shaders: [fragShader]
}
Shader {
id: fragShader
stage: Shader.Fragment
shader: "effect_default_shader.frag"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 B

View File

@@ -0,0 +1,24 @@
import QtQuick.tooling 1.2
// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by:
// 'qmlplugindump -nonrelocatable QtQuick3D.Effects 1.15'
Module {
dependencies: [
"QtQuick 2.15",
"QtQuick.Window 2.1",
"QtQuick3D 1.15",
"QtQuick3D.Materials 1.15"
]
Component {
name: "QQuick3DEffect"
defaultProperty: "data"
prototype: "QQuick3DObject"
exports: ["QtQuick3D.Effects/Effect 1.15"]
exportMetaObjectRevisions: [0]
Property { name: "passes"; type: "QQuick3DShaderUtilsRenderPass"; isList: true; isReadonly: true }
}
}

View File

@@ -0,0 +1,27 @@
module QtQuick3D.Effects
plugin qtquick3deffectplugin
classname QtQuick3DEffectPlugin
AdditiveColorGradient 1.0 AdditiveColorGradient.qml
Blur 1.0 Blur.qml
BrushStrokes 1.0 BrushStrokes.qml
ChromaticAberration 1.0 ChromaticAberration.qml
ColorMaster 1.0 ColorMaster.qml
DepthOfFieldHQBlur 1.0 DepthOfFieldHQBlur.qml
Desaturate 1.0 Desaturate.qml
DistortionRipple 1.0 DistortionRipple.qml
DistortionSphere 1.0 DistortionSphere.qml
DistortionSpiral 1.0 DistortionSpiral.qml
EdgeDetect 1.0 EdgeDetect.qml
Emboss 1.0 Emboss.qml
Flip 1.0 Flip.qml
Fxaa 1.0 Fxaa.qml
GaussianBlur 1.0 GaussianBlur.qml
HDRBloomTonemap 1.0 HDRBloomTonemap.qml
MotionBlur 1.0 MotionBlur.qml
Scatter 1.0 Scatter.qml
SCurveTonemap 1.0 SCurveTonemap.qml
TiltShift 1.0 TiltShift.qml
Vignette 1.0 Vignette.qml
designersupported
depends QtQuick3D 1.15
depends QtQuick.Window 2.1

View File

@@ -0,0 +1,119 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
Node {
id: axisGrid_obj
property alias gridColor: gridMaterial.diffuseColor
property alias gridOpacity: gridMaterial.opacity
property alias enableXZGrid: gridXZ.visible
property alias enableXYGrid: gridXY.visible
property alias enableYZGrid: gridYZ.visible
property bool enableAxisLines: true
// Axis Lines
Model {
id: xAxis
source: "#Cube"
position: Qt.vector3d(5000, 0, 0)
scale: Qt.vector3d(100, .05, .05)
visible: enableAxisLines
materials: DefaultMaterial {
lighting: DefaultMaterial.NoLighting
diffuseColor: "red"
}
}
Model {
id: yAxis
source: "#Cube"
position: Qt.vector3d(0, 5000, 0)
scale: Qt.vector3d(0.05, 100, 0.05)
visible: enableAxisLines
materials: DefaultMaterial {
lighting: DefaultMaterial.NoLighting
diffuseColor: "green"
}
}
Model {
id: zAxis
source: "#Cube"
position: Qt.vector3d(0, 0, 5000)
scale: Qt.vector3d(0.05, 0.05, 100)
visible: enableAxisLines
materials: DefaultMaterial {
lighting: DefaultMaterial.NoLighting
diffuseColor: "blue"
}
}
// Grid Lines
DefaultMaterial {
id: gridMaterial
lighting: DefaultMaterial.NoLighting
opacity: 0.5
diffuseColor: Qt.rgba(0.8, 0.8, 0.8, 1)
}
Model {
id: gridXZ
source: "meshes/axisGrid.mesh"
scale: Qt.vector3d(100, 100, 100)
materials: [
gridMaterial
]
}
Model {
id: gridXY
visible: false
source: "meshes/axisGrid.mesh"
scale: Qt.vector3d(100, 100, 100)
eulerRotation: Qt.vector3d(90, 0, 0)
materials: [
gridMaterial
]
}
Model {
id: gridYZ
visible: false
source: "meshes/axisGrid.mesh"
scale: Qt.vector3d(100, 100, 100)
eulerRotation: Qt.vector3d(0, 0, 90)
materials: [
gridMaterial
]
}
}

View File

@@ -0,0 +1,65 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
Rectangle {
property var source: null
width: layout.width + 10
height: layout.height + 10
color: "#80778BA5"
radius: 5
Column {
id: layout
anchors.centerIn: parent
Text {
text: source.renderStats.fps + " FPS (" + (source.renderStats.frameTime).toFixed(3) + "ms)"
font.pointSize: 13
color: "white"
}
Text {
text: "Sync: " + (source.renderStats.syncTime).toFixed(3) + "ms"
font.pointSize: 9
color: "white"
}
Text {
text: "Render: " + (source.renderStats.renderTime).toFixed(3) + "ms"
font.pointSize: 9
color: "white"
}
Text {
text: "Max: " + (source.renderStats.maxFrameTime).toFixed(3) + "ms"
font.pointSize: 9
color: "white"
}
}
}

View File

@@ -0,0 +1,320 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
Item {
id: root
property Node controlledObject: undefined
property real speed: 1
property real shiftSpeed: 3
property real forwardSpeed: 5
property real backSpeed: 5
property real rightSpeed: 5
property real leftSpeed: 5
property real upSpeed: 5
property real downSpeed: 5
property real xSpeed: 0.1
property real ySpeed: 0.1
property bool xInvert: false
property bool yInvert: true
property bool mouseEnabled: true
property bool keysEnabled: true
readonly property bool inputsNeedProcessing: status.moveForward | status.moveBack
| status.moveLeft | status.moveRight
| status.moveUp | status.moveDown
| status.useMouse
property alias acceptedButtons: dragHandler.acceptedButtons
implicitWidth: parent.width
implicitHeight: parent.height
focus: keysEnabled
DragHandler {
id: dragHandler
target: null
enabled: mouseEnabled
onCentroidChanged: {
mouseMoved(Qt.vector2d(centroid.position.x, centroid.position.y));
}
onActiveChanged: {
if (active)
mousePressed(Qt.vector2d(centroid.position.x, centroid.position.y));
else
mouseReleased(Qt.vector2d(centroid.position.x, centroid.position.y));
}
}
Keys.onPressed: if (keysEnabled) handleKeyPress(event)
Keys.onReleased: if (keysEnabled) handleKeyRelease(event)
function mousePressed(newPos) {
status.currentPos = newPos
status.lastPos = newPos
status.useMouse = true;
}
function mouseReleased(newPos) {
status.useMouse = false;
}
function mouseMoved(newPos) {
status.currentPos = newPos;
}
function forwardPressed() {
status.moveForward = true
status.moveBack = false
}
function forwardReleased() {
status.moveForward = false
}
function backPressed() {
status.moveBack = true
status.moveForward = false
}
function backReleased() {
status.moveBack = false
}
function rightPressed() {
status.moveRight = true
status.moveLeft = false
}
function rightReleased() {
status.moveRight = false
}
function leftPressed() {
status.moveLeft = true
status.moveRight = false
}
function leftReleased() {
status.moveLeft = false
}
function upPressed() {
status.moveUp = true
status.moveDown = false
}
function upReleased() {
status.moveUp = false
}
function downPressed() {
status.moveDown = true
status.moveUp = false
}
function downReleased() {
status.moveDown = false
}
function shiftPressed() {
status.shiftDown = true
}
function shiftReleased() {
status.shiftDown = false
}
function handleKeyPress(event)
{
switch (event.key) {
case Qt.Key_W:
case Qt.Key_Up:
forwardPressed();
break;
case Qt.Key_S:
case Qt.Key_Down:
backPressed();
break;
case Qt.Key_A:
case Qt.Key_Left:
leftPressed();
break;
case Qt.Key_D:
case Qt.Key_Right:
rightPressed();
break;
case Qt.Key_R:
case Qt.Key_PageUp:
upPressed();
break;
case Qt.Key_F:
case Qt.Key_PageDown:
downPressed();
break;
case Qt.Key_Shift:
shiftPressed();
break;
}
}
function handleKeyRelease(event)
{
switch (event.key) {
case Qt.Key_W:
case Qt.Key_Up:
forwardReleased();
break;
case Qt.Key_S:
case Qt.Key_Down:
backReleased();
break;
case Qt.Key_A:
case Qt.Key_Left:
leftReleased();
break;
case Qt.Key_D:
case Qt.Key_Right:
rightReleased();
break;
case Qt.Key_R:
case Qt.Key_PageUp:
upReleased();
break;
case Qt.Key_F:
case Qt.Key_PageDown:
downReleased();
break;
case Qt.Key_Shift:
shiftReleased();
break;
}
}
Timer {
id: updateTimer
interval: 16
repeat: true
running: root.inputsNeedProcessing
onTriggered: {
processInputs();
}
}
function processInputs()
{
if (root.inputsNeedProcessing)
status.processInput();
}
QtObject {
id: status
property bool moveForward: false
property bool moveBack: false
property bool moveLeft: false
property bool moveRight: false
property bool moveUp: false
property bool moveDown: false
property bool shiftDown: false
property bool useMouse: false
property vector2d lastPos: Qt.vector2d(0, 0)
property vector2d currentPos: Qt.vector2d(0, 0)
function updatePosition(vector, speed, position)
{
if (shiftDown)
speed *= shiftSpeed;
else
speed *= root.speed
var direction = vector;
var velocity = Qt.vector3d(direction.x * speed,
direction.y * speed,
direction.z * speed);
controlledObject.position = Qt.vector3d(position.x + velocity.x,
position.y + velocity.y,
position.z + velocity.z);
}
function negate(vector) {
return Qt.vector3d(-vector.x, -vector.y, -vector.z)
}
function processInput() {
if (controlledObject == undefined)
return;
if (moveForward)
updatePosition(controlledObject.forward, forwardSpeed, controlledObject.position);
else if (moveBack)
updatePosition(negate(controlledObject.forward), backSpeed, controlledObject.position);
if (moveRight)
updatePosition(controlledObject.right, rightSpeed, controlledObject.position);
else if (moveLeft)
updatePosition(negate(controlledObject.right), leftSpeed, controlledObject.position);
if (moveDown)
updatePosition(negate(controlledObject.up), downSpeed, controlledObject.position);
else if (moveUp)
updatePosition(controlledObject.up, upSpeed, controlledObject.position);
if (useMouse) {
// Get the delta
var rotationVector = controlledObject.eulerRotation;
var delta = Qt.vector2d(lastPos.x - currentPos.x,
lastPos.y - currentPos.y);
// rotate x
var rotateX = delta.x * xSpeed
if (xInvert)
rotateX = -rotateX;
rotationVector.y += rotateX;
// rotate y
var rotateY = delta.y * -ySpeed
if (yInvert)
rotateY = -rotateY;
rotationVector.x += rotateY;
controlledObject.setEulerRotation(rotationVector);
lastPos = currentPos;
}
}
}
}

View File

@@ -0,0 +1,71 @@
import QtQuick.tooling 1.2
// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by:
// 'qmlplugindump -nonrelocatable QtQuick3D.Helpers 1.15'
Module {
dependencies: [
"QtQuick 2.15",
"QtQuick.Window 2.1",
"QtQuick3D 1.15",
"QtQuick3D.Effects 1.15",
"QtQuick3D.Materials 1.15"
]
Component {
name: "GridGeometry"
defaultProperty: "data"
prototype: "QQuick3DGeometry"
exports: ["QtQuick3D.Helpers/GridGeometry 1.14"]
exportMetaObjectRevisions: [0]
Property { name: "horizontalLines"; type: "int" }
Property { name: "verticalLines"; type: "int" }
Property { name: "horizontalStep"; type: "float" }
Property { name: "verticalStep"; type: "float" }
Method {
name: "setHorizontalLines"
Parameter { name: "count"; type: "int" }
}
Method {
name: "setVerticalLines"
Parameter { name: "count"; type: "int" }
}
Method {
name: "setHorizontalStep"
Parameter { name: "step"; type: "float" }
}
Method {
name: "setVerticalStep"
Parameter { name: "step"; type: "float" }
}
}
Component {
name: "PointerPlane"
defaultProperty: "data"
prototype: "QQuick3DNode"
exports: ["QtQuick3D.Helpers/PointerPlane 1.14"]
exportMetaObjectRevisions: [0]
Method {
name: "getIntersectPos"
type: "QVector3D"
Parameter { name: "rayPos0"; type: "QVector3D" }
Parameter { name: "rayPos1"; type: "QVector3D" }
Parameter { name: "planePos"; type: "QVector3D" }
Parameter { name: "planeNormal"; type: "QVector3D" }
}
Method {
name: "getIntersectPosFromSceneRay"
type: "QVector3D"
Parameter { name: "rayPos0"; type: "QVector3D" }
Parameter { name: "rayPos1"; type: "QVector3D" }
}
Method {
name: "getIntersectPosFromView"
type: "QVector3D"
Parameter { name: "view"; type: "QQuick3DViewport"; isPointer: true }
Parameter { name: "posInView"; type: "QPointF" }
}
}
}

View File

@@ -0,0 +1,8 @@
module QtQuick3D.Helpers
plugin qtquick3dhelpersplugin
classname QtQuick3DHelpersPlugin
AxisHelper 1.0 AxisHelper.qml
DebugView 1.0 DebugView.qml
WasdController 1.0 WasdController.qml
designersupported
depends QtQuick3D 1.0

View File

@@ -0,0 +1,104 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
property bool uEnvironmentMappingEnabled: true
property bool uShadowMappingEnabled: false
property real roughness: 0.3
property vector3d base_color: Qt.vector3d(0.7, 0.7, 0.7)
property real intensity: 1.0
property vector3d emission_color: Qt.vector3d(0, 0, 0)
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Glossy
}
property TextureInput emissive_texture: TextureInput {
id: emissiveTexture
enabled: true
texture: Texture {
id: emissiveImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/emissive.png"
}
}
property TextureInput emissive_mask_texture: TextureInput {
id: emissiveMaskTexture
enabled: true
texture: Texture {
id: emissiveMaskImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/emissive_mask.png"
}
}
property TextureInput uEnvironmentTexture: TextureInput {
id: uEnvironmentTexture
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/shadow.png"
}
}
Shader {
id: aluminumAnodizedEmissiveShader
stage: Shader.Fragment
shader: "shaders/aluminumAnodizedEmissive.frag"
}
passes: [
Pass {
shaders: aluminumAnodizedEmissiveShader
}
]
}

View File

@@ -0,0 +1,77 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
property bool uEnvironmentMappingEnabled: true
property bool uShadowMappingEnabled: false
property real roughness: 0.3
property vector3d base_color: Qt.vector3d(0.7, 0.7, 0.7)
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Glossy
}
property TextureInput uEnvironmentTexture: TextureInput {
id: uEnvironmentTexture
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/shadow.png"
}
}
Shader {
id: aluminumAnodizedShader
stage: Shader.Fragment
shader: "shaders/aluminumAnodized.frag"
}
passes: [
Pass {
shaders: aluminumAnodizedShader
}
]
}

View File

@@ -0,0 +1,126 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
property bool uEnvironmentMappingEnabled: true
property bool uShadowMappingEnabled: false
property vector3d tiling: Qt.vector3d(3, 3, 3)
property real brushing_strength: 0.5
property real reflection_stretch: 0.5
property vector3d metal_color: Qt.vector3d(0.95, 0.95, 0.95)
property real bump_amount: 0.4
// <Property formalName="Roughness Map U" name="roughness_texture_u" description="Horizontal roughness texture" type="Texture" filter="linear" minfilter="linearMipmapLinear" clamp="repeat" usage="roughness" default="./maps/materials/brushed_full_contrast.png" category="Material"/>
// <Property formalName="Roughness Map V" name="roughness_texture_v" description="Vertical roughness texture" type="Texture" filter="linear" minfilter="linearMipmapLinear" clamp="repeat" usage="roughness" default="./maps/materials/brushed_full_contrast.png" category="Material"/>
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Glossy
}
property TextureInput uEnvironmentTexture: TextureInput {
id: uEnvironmentTexture
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/shadow.png"
}
}
property TextureInput brush_texture: TextureInput {
enabled: true
texture: Texture {
id: brushTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/brushed_full_contrast.png"
}
}
property TextureInput roughness_texture_u: TextureInput {
enabled: true
texture: Texture {
id: roughnessUTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/brushed_full_contrast.png"
}
}
property TextureInput roughness_texture_v: TextureInput {
enabled: true
texture: Texture {
id: roughnessVTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/brushed_full_contrast.png"
}
}
property TextureInput bump_texture: TextureInput {
enabled: true
texture: Texture {
id: bumpTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/brushed_a.png"
}
}
Shader {
id: aluminumBrushedFragShader
stage: Shader.Fragment
shader: "shaders/aluminumBrushed.frag"
}
passes: [
Pass {
shaders: aluminumBrushedFragShader
}
]
}

View File

@@ -0,0 +1,137 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
property bool uEnvironmentMappingEnabled: true
property bool uShadowMappingEnabled: false
property real reflection_map_offset: 0.5
property real reflection_map_scale: 0.3
property vector3d tiling: Qt.vector3d(1, 1, 1)
property real roughness_map_offset: 0.16
property real roughness_map_scale: 0.4
property vector3d metal_color: Qt.vector3d(0.95, 0.95, 0.95)
property real intensity: 1.0
property vector3d emission_color: Qt.vector3d(0, 0, 0)
property vector3d emissive_mask_offset: Qt.vector3d(0, 0, 0)
property real bump_amount: 0.5
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Glossy
}
property TextureInput uEnvironmentTexture: TextureInput {
id: uEnvironmentTexture
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/shadow.png"
}
}
property TextureInput reflection_texture: TextureInput {
enabled: true
texture: Texture {
id: reflectionTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/grunge_b.png"
}
}
property TextureInput roughness_texture: TextureInput {
enabled: true
texture: Texture {
id: roughnessTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/grunge_d.png"
}
}
property TextureInput emissive_texture: TextureInput {
id: emissiveTexture
enabled: true
texture: Texture {
id: emissiveImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/emissive.png"
}
}
property TextureInput emissive_mask_texture: TextureInput {
id: emissiveMaskTexture
enabled: true
texture: Texture {
id: emissiveMaskImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/emissive_mask.png"
}
}
property TextureInput bump_texture: TextureInput {
enabled: true
texture: Texture {
id: bumpTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/grunge_d.png"
}
}
Shader {
id: aluminumEmissiveShader
stage: Shader.Fragment
shader: "shaders/aluminumEmissive.frag"
}
passes: [
Pass {
shaders: aluminumEmissiveShader
}
]
}

View File

@@ -0,0 +1,109 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
property real reflection_map_offset: 0.5
property real reflection_map_scale: 0.3
property real roughness_map_offset: 0.16
property real roughness_map_scale: 0.4
property real bump_amount: 0.5
property bool uEnvironmentMappingEnabled: true
property bool uShadowMappingEnabled: false
property vector3d tiling: Qt.vector3d(1, 1, 1)
property vector3d metal_color: Qt.vector3d(0.95, 0.95, 0.95)
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Glossy
}
property TextureInput uEnvironmentTexture: TextureInput {
id: uEnvironmentTexture
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/shadow.png"
}
}
property TextureInput reflection_texture: TextureInput {
enabled: true
texture: Texture {
id: reflectionTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/grunge_b.png"
}
}
property TextureInput roughness_texture: TextureInput {
enabled: true
texture: Texture {
id: roughnessTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/grunge_d.png"
}
}
property TextureInput bump_texture: TextureInput {
enabled: true
texture: Texture {
id: bumpTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/grunge_d.png"
}
}
Shader {
id: aluminumFragShader
stage: Shader.Fragment
shader: "shaders/aluminum.frag"
}
passes: [
Pass {
shaders: aluminumFragShader
}
]
}

View File

@@ -0,0 +1,72 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
// These properties names need to match the ones in the shader code!
property bool uEnvironmentMappingEnabled: false
property bool uShadowMappingEnabled: false
property real roughness: 0.0
property vector3d metal_color: Qt.vector3d(0.805, 0.395, 0.305)
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Glossy
}
property TextureInput uEnvironmentTexture: TextureInput {
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
source: "maps/shadow.png"
}
}
Shader {
id: copperFragShader
stage: Shader.Fragment
shader: "shaders/copper.frag"
}
passes: [ Pass {
shaders: copperFragShader
}
]
}

View File

@@ -0,0 +1,236 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
// These properties names need to match the ones in the shader code!
property real roughness: 0.0
property real blur_size: 8.0
property real refract_depth: 5
property bool uEnvironmentMappingEnabled: true
property bool uShadowMappingEnabled: false
property real glass_bfactor: 0.0
property bool glass_binside: false
property real uFresnelPower: 1.0
property real reflectivity_amount: 1.0
property real glass_ior: 1.5
property real intLightFall: 2.0
property real intLightRot: 0.0
property real intLightBrt: 0.0
property real bumpScale: 0.5
property int bumpBands: 1
property vector3d bumpCoords: Qt.vector3d(1.0, 1.0, 1.0)
property vector2d intLightPos: Qt.vector2d(0.5, 0.0)
property vector3d glass_color: Qt.vector3d(0.9, 0.9, 0.9)
property vector3d intLightCol: Qt.vector3d(0.9, 0.9, 0.9)
hasTransparency: true
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Refraction | ShaderInfo.Glossy
}
property TextureInput glass_bump: TextureInput {
enabled: true
texture: Texture {
id: glassBumpMap
source: "maps/spherical_checker.png"
}
}
property TextureInput uEnvironmentTexture: TextureInput {
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
source: "maps/shadow.png"
}
}
property TextureInput randomGradient1D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient1D.png"
}
}
property TextureInput randomGradient2D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient2D.png"
}
}
property TextureInput randomGradient3D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient3D.png"
}
}
property TextureInput randomGradient4D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient4D.png"
}
}
Shader {
id: mainShader
stage: Shader.Fragment
shader: "shaders/frostedThinGlass.frag"
}
Shader {
id: noopShader
stage: Shader.Fragment
shader: "shaders/frostedThinGlassNoop.frag"
}
Shader {
id: preBlurShader
stage: Shader.Fragment
shader: "shaders/frostedThinGlassPreBlur.frag"
}
Shader {
id: blurXShader
stage: Shader.Fragment
shader: "shaders/frostedThinGlassBlurX.frag"
}
Shader {
id: blurYShader
stage: Shader.Fragment
shader: "shaders/frostedThinGlassBlurY.frag"
}
Buffer {
id: frameBuffer
name: "frameBuffer"
format: Buffer.Unknown
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
sizeMultiplier: 1.0
bufferFlags: Buffer.None // aka frame
}
Buffer {
id: dummyBuffer
name: "dummyBuffer"
format: Buffer.RGBA8
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
sizeMultiplier: 1.0
bufferFlags: Buffer.None // aka frame
}
Buffer {
id: tempBuffer
name: "tempBuffer"
format: Buffer.RGBA16F
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
sizeMultiplier: 0.5
bufferFlags: Buffer.None // aka frame
}
Buffer {
id: blurYBuffer
name: "tempBlurY"
format: Buffer.RGBA16F
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
sizeMultiplier: 0.5
bufferFlags: Buffer.None // aka frame
}
Buffer {
id: blurXBuffer
name: "tempBlurX"
format: Buffer.RGBA16F
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
sizeMultiplier: 0.5
bufferFlags: Buffer.None // aka frame
}
passes: [ Pass {
shaders: noopShader
output: dummyBuffer
commands: [ BufferBlit {
destination: frameBuffer
}
]
}, Pass {
shaders: preBlurShader
output: tempBuffer
commands: [ BufferInput {
buffer: frameBuffer
param: "OriginBuffer"
}
]
}, Pass {
shaders: blurXShader
output: blurXBuffer
commands: [ BufferInput {
buffer: tempBuffer
param: "BlurBuffer"
}
]
}, Pass {
shaders: blurYShader
output: blurYBuffer
commands: [ BufferInput {
buffer: blurXBuffer
param: "BlurBuffer"
}, BufferInput {
buffer: tempBuffer
param: "OriginBuffer"
}
]
}, Pass {
shaders: mainShader
commands: [BufferInput {
buffer: blurYBuffer
param: "refractiveTexture"
}, Blending {
srcBlending: Blending.SrcAlpha
destBlending: Blending.OneMinusSrcAlpha
}
]
}
]
}

View File

@@ -0,0 +1,129 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
property real roughness: 0.0
property real blur_size: 8.0
property bool uEnvironmentMappingEnabled: true
property bool uShadowMappingEnabled: false
property real uFresnelPower: 1.0
property real reflectivity_amount: 1.0
property real glass_ior: 1.5
property real bumpScale: 0.5
property real noiseScale: 2.0
property int bumpBands: 1
property vector3d noiseCoords: Qt.vector3d(1.0, 1.0, 1.0)
property vector3d bumpCoords: Qt.vector3d(1.0, 1.0, 1.0)
property vector3d glass_color: Qt.vector3d(0.9, 0.9, 0.9)
hasTransparency: true
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Refraction | ShaderInfo.Glossy
}
property TextureInput uEnvironmentTexture: TextureInput {
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
source: "maps/shadow.png"
}
}
property TextureInput randomGradient1D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient1D.png"
}
}
property TextureInput randomGradient2D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient2D.png"
}
}
property TextureInput randomGradient3D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient3D.png"
}
}
property TextureInput randomGradient4D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient4D.png"
}
}
Shader {
id: frostedGlassSpFragShader
stage: Shader.Fragment
shader: "shaders/frostedThinGlassSp.frag"
}
Buffer {
id: tempBuffer
name: "temp_buffer"
format: Buffer.Unknown
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
sizeMultiplier: 1.0
bufferFlags: Buffer.None // aka frame
}
passes: [ Pass {
shaders: frostedGlassSpFragShader
commands: [ BufferBlit {
destination: tempBuffer
}, BufferInput {
buffer: tempBuffer
param: "refractiveTexture"
}, Blending {
srcBlending: Blending.SrcAlpha
destBlending: Blending.OneMinusSrcAlpha
}
]
}
]
}

View File

@@ -0,0 +1,81 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
// These properties names need to match the ones in the shader code!
property bool uEnvironmentMappingEnabled: false
property bool uShadowMappingEnabled: false
property real uFresnelPower: 1.0
property real uMinOpacity: 0.5
property real reflectivity_amount: 0.5
property real glass_ior: 1.5
property vector3d glass_color: Qt.vector3d(0.6, 0.6, 0.6)
hasTransparency: true
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Transparent | ShaderInfo.Glossy
}
property TextureInput uEnvironmentTexture: TextureInput {
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
source: "maps/shadow.png"
}
}
Shader {
id: simpleGlassFragShader
stage: Shader.Fragment
shader: "shaders/simpleGlass.frag"
}
passes: [ Pass {
shaders: simpleGlassFragShader
commands: [ Blending {
srcBlending: Blending.SrcAlpha
destBlending: Blending.OneMinusSrcAlpha
}
]
}
]
}

View File

@@ -0,0 +1,96 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
// These properties names need to match the ones in the shader code!
property bool uEnvironmentMappingEnabled: true
property bool uShadowMappingEnabled: false
property real uFresnelPower: 1.0
property real reflectivity_amount: 1.0
property real glass_ior: 1.5
property real roughness: 0.0
property vector3d glass_color: Qt.vector3d(0.9, 0.9, 0.9)
hasTransparency: true
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Refraction | ShaderInfo.Glossy
}
property TextureInput uEnvironmentTexture: TextureInput {
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
source: "maps/shadow.png"
}
}
Shader {
id: simpleGlassRefractiveFragShader
stage: Shader.Fragment
shader: "shaders/simpleGlassRefractive.frag"
}
Buffer {
id: tempBuffer
name: "temp_buffer"
format: Buffer.Unknown
textureFilterOperation: Buffer.Linear
textureCoordOperation: Buffer.ClampToEdge
sizeMultiplier: 1.0
bufferFlags: Buffer.None // aka frame
}
passes: [ Pass {
shaders: simpleGlassRefractiveFragShader
commands: [ BufferBlit {
destination: tempBuffer
}, BufferInput {
buffer: tempBuffer
param: "refractiveTexture"
}, Blending {
srcBlending: Blending.SrcAlpha
destBlending: Blending.OneMinusSrcAlpha
}
]
}
]
}

View File

@@ -0,0 +1,101 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
// These properties names need to match the ones in the shader code!
property bool uEnvironmentMappingEnabled: false
property bool uShadowMappingEnabled: false
property real bump_amount: 0.5
property real uTranslucentFalloff: 0.0
property real uDiffuseLightWrap: 0.0
property real uOpacity: 100.0
property real transmission_weight: 0.2
property real reflection_weight: 0.8
property vector2d texture_tiling: Qt.vector2d(5.0, 5.0)
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Transmissive | ShaderInfo.Diffuse
}
property TextureInput uEnvironmentTexture: TextureInput {
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
source: "maps/shadow.png"
}
}
property TextureInput diffuse_texture: TextureInput {
enabled: true
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/paper_diffuse.png"
}
}
property TextureInput bump_texture: TextureInput {
enabled: true
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/art_paper_normal.png"
}
}
property TextureInput transmission_texture: TextureInput {
enabled: true
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/art_paper_trans.png"
}
}
Shader {
id: paperArtisticFragShader
stage: Shader.Fragment
shader: "shaders/paperArtistic.frag"
}
passes: [ Pass {
shaders: paperArtisticFragShader
}
]
}

View File

@@ -0,0 +1,94 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
// These properties names need to match the ones in the shader code!
property bool uShadowMappingEnabled: false
property real bump_amount: 0.5
property real uTranslucentFalloff: 0.0
property real uDiffuseLightWrap: 0.0
property real uOpacity: 100.0
property real transmission_weight: 0.2
property real reflection_weight: 0.8
property vector2d texture_tiling: Qt.vector2d(1.0, 1.0)
property vector3d paper_color: Qt.vector3d(0.531, 0.531, 0.531)
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Transmissive | ShaderInfo.Diffuse
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
source: "maps/shadow.png"
}
}
property TextureInput diffuse_texture: TextureInput {
enabled: true
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/paper_diffuse.png"
}
}
property TextureInput bump_texture: TextureInput {
enabled: true
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/paper_diffuse.png"
}
}
property TextureInput transmission_texture: TextureInput {
enabled: true
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/paper_trans.png"
}
}
Shader {
id: paperOfficeFragShader
stage: Shader.Fragment
shader: "shaders/paperOffice.frag"
}
passes: [ Pass {
shaders: paperOfficeFragShader
}
]
}

View File

@@ -0,0 +1,125 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
// These properties names need to match the ones in the shader code!
property bool uEnvironmentMappingEnabled: true
property bool uShadowMappingEnabled: false
property real roughness: 0.25
property real material_ior: 1.46
property real intensity: 1.0
property real texture_scaling: 0.1
property real bump_factor: 0.4
property vector3d diffuse_color: Qt.vector3d(0.451, 0.04, 0.035)
property vector3d emission_color: Qt.vector3d(0.0, 0.0, 0.0)
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Glossy | ShaderInfo.Diffuse
}
property TextureInput uEnvironmentTexture: TextureInput {
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
source: "maps/shadow.png"
}
}
property TextureInput emissive_texture: TextureInput {
id: emissiveTexture
enabled: true
texture: Texture {
id: emissiveImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/emissive.png"
}
}
property TextureInput emissive_mask_texture: TextureInput {
id: emissiveMaskTexture
enabled: true
texture: Texture {
id: emissiveMaskImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/emissive_mask.png"
}
}
property TextureInput randomGradient1D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient1D.png"
}
}
property TextureInput randomGradient2D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient2D.png"
}
}
property TextureInput randomGradient3D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient3D.png"
}
}
property TextureInput randomGradient4D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient4D.png"
}
}
Shader {
id: plasticStructuredRedEmissiveFragShader
stage: Shader.Fragment
shader: "shaders/plasticStructuredRedEmissive.frag"
}
passes: [ Pass {
shaders: plasticStructuredRedEmissiveFragShader
}
]
}

View File

@@ -0,0 +1,104 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
// These properties names need to match the ones in the shader code!
property bool uEnvironmentMappingEnabled: true
property bool uShadowMappingEnabled: false
property real roughness: 0.25
property real material_ior: 1.46
property real intensity: 1.0
property real texture_scaling: 0.1
property real bump_factor: 0.4
property vector3d diffuse_color: Qt.vector3d(0.451, 0.04, 0.035)
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Glossy | ShaderInfo.Diffuse
}
property TextureInput uEnvironmentTexture: TextureInput {
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
source: "maps/shadow.png"
}
}
property TextureInput randomGradient1D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient1D.png"
}
}
property TextureInput randomGradient2D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient2D.png"
}
}
property TextureInput randomGradient3D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient3D.png"
}
}
property TextureInput randomGradient4D: TextureInput {
texture: Texture {
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/randomGradient4D.png"
}
}
Shader {
id: plasticStructuredRedFragShader
stage: Shader.Fragment
shader: "shaders/plasticStructuredRed.frag"
}
passes: [ Pass {
shaders: plasticStructuredRedFragShader
}
]
}

View File

@@ -0,0 +1,96 @@
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick3D 1.15
import QtQuick3D.Materials 1.15
CustomMaterial {
property bool uEnvironmentMappingEnabled: true
property bool uShadowMappingEnabled: false
property real material_ior: 2.5
property real anisotropy: 0.8
property vector2d texture_tiling: Qt.vector2d(8, 5)
shaderInfo: ShaderInfo {
version: "330"
type: "GLSL"
shaderKey: ShaderInfo.Glossy
}
property TextureInput uEnvironmentTexture: TextureInput {
id: uEnvironmentTexture
enabled: uEnvironmentMappingEnabled
texture: Texture {
id: envImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/spherical_checker.png"
}
}
property TextureInput uBakedShadowTexture: TextureInput {
enabled: uShadowMappingEnabled
texture: Texture {
id: shadowImage
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/shadow.png"
}
}
property TextureInput diffuse_texture: TextureInput {
enabled: true
texture: Texture {
id: diffuseTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/concentric_milled_steel.png"
}
}
property TextureInput anisotropy_rot_texture: TextureInput {
enabled: true
texture: Texture {
id: anisoTexture
tilingModeHorizontal: Texture.Repeat
tilingModeVertical: Texture.Repeat
source: "maps/concentric_milled_steel_aniso.png"
}
}
Shader {
id: steelMilledConcentricFragShader
stage: Shader.Fragment
shader: "shaders/steelMilledConcentric.frag"
}
passes: [
Pass {
shaders: steelMilledConcentricFragShader
}
]
}

View File

@@ -0,0 +1,139 @@
/****************************************************************************
**
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Quick 3D.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.15
import QtQuick.Layouts 1.15
import HelperWidgets 2.0
import StudioTheme 1.0 as StudioTheme
Column {
width: parent.width
Section {
caption: qsTr("Emission")
width: parent.width
SectionLayout {
PropertyLabel {
text: qsTr("Intensity")
tooltip: qsTr("Set the emission intensity.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.intensity
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("Map Texture")
tooltip: qsTr("Defines a texture for emissive map.")
}
SecondColumnLayout {
IdComboBox {
typeFilter: "QtQuick3D.Texture"
backendValue: backendValues.emissive_texture_texture
defaultItem: qsTr("Default")
implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel {
text: qsTr("MaskTexture")
tooltip: qsTr("Defines a texture for emissive mask.")
}
SecondColumnLayout {
IdComboBox {
typeFilter: "QtQuick3D.Texture"
backendValue: backendValues.emissive_mask_texture_texture
defaultItem: qsTr("Default")
implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
PropertyLabel { text: qsTr("Emission Color") }
ColorEditor {
backendValue: backendValues.emission_color
supportGradient: false
isVector3D: true
}
}
}
Section {
caption: qsTr("General")
width: parent.width
SectionLayout {
PropertyLabel { text: qsTr("Base Color") }
ColorEditor {
backendValue: backendValues.base_color
supportGradient: false
isVector3D: true
}
PropertyLabel {
text: qsTr("Roughness")
tooltip: qsTr("Set the material roughness.")
}
SecondColumnLayout {
SpinBox {
maximumValue: 1
minimumValue: 0
decimals: 2
stepSize: 0.1
backendValue: backendValues.roughness
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
}
}
}
}

Some files were not shown because too many files have changed in this diff Show More