diff --git a/src/imports/effectlib/designer/EffectSection.qml b/src/imports/effectlib/designer/EffectSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..fc71164c1d1455a58d5c88afdbeb94a60a2acf65 --- /dev/null +++ b/src/imports/effectlib/designer/EffectSection.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Section { + caption: qsTr("Effect") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Passes") + tooltip: qsTr("Render passes of the effect.") + } + 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) } + } + } + } +} diff --git a/src/imports/effectlib/designer/EffectSpecifics.qml b/src/imports/effectlib/designer/EffectSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..f337d42ffe3cf7a0eb64c976d37efc2a2b376115 --- /dev/null +++ b/src/imports/effectlib/designer/EffectSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + EffectSection { + width: parent.width + } +} diff --git a/src/imports/effectlib/designer/designer.pri b/src/imports/effectlib/designer/designer.pri index fbb22802f1fb1dfc7d013bed84a1b71866dfb745..91beef1938af85cf9c6fe77949f971f55f9cb3e2 100644 --- a/src/imports/effectlib/designer/designer.pri +++ b/src/imports/effectlib/designer/designer.pri @@ -44,7 +44,9 @@ AUX_QML_FILES += \ $$PWD/TiltShiftSection.qml \ $$PWD/TiltShiftSpecifics.qml \ $$PWD/VignetteSection.qml \ - $$PWD/VignetteSpecifics.qml + $$PWD/VignetteSpecifics.qml \ + $$PWD/EffectSection.qml \ + $$PWD/EffectSpecifics.qml AUX_QML_FILES += \ $$PWD/images/effect.png \ diff --git a/src/imports/effectlib/designer/effectlib.metainfo b/src/imports/effectlib/designer/effectlib.metainfo index b649487145b6486a147c2b92089d52bb86572b19..dadd9d887b80890eb3d8cb827ab5988ac34a243d 100644 --- a/src/imports/effectlib/designer/effectlib.metainfo +++ b/src/imports/effectlib/designer/effectlib.metainfo @@ -398,4 +398,22 @@ MetaInfo { 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" + } + } } diff --git a/src/imports/effectlib/designer/images/effect.png b/src/imports/effectlib/designer/images/effect.png index a3b6c7f6f243d86dd4ada0db8f709a0a5adeaa9c..8f9f2880e48d78c15e4189ee17c5f695bd9ea4ba 100644 Binary files a/src/imports/effectlib/designer/images/effect.png and b/src/imports/effectlib/designer/images/effect.png differ diff --git a/src/imports/effectlib/designer/images/effect16.png b/src/imports/effectlib/designer/images/effect16.png index de8906a724d67a95b221c5d11f2d20cd5bd42a0c..93fbc032a899e54b8f171951e4c24d6eef3ffc70 100644 Binary files a/src/imports/effectlib/designer/images/effect16.png and b/src/imports/effectlib/designer/images/effect16.png differ diff --git a/src/imports/effectlib/designer/images/effect@2x.png b/src/imports/effectlib/designer/images/effect@2x.png index 7ca04a01eaa5a247ee96d385f0ad7b188af6cd71..204f50ecab0678f81c312694a0163b2c4692c9b9 100644 Binary files a/src/imports/effectlib/designer/images/effect@2x.png and b/src/imports/effectlib/designer/images/effect@2x.png differ diff --git a/src/imports/materiallib/designer/CustomMaterialSection.qml b/src/imports/materiallib/designer/CustomMaterialSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..bf540c5e4e5f109ba89a70e74778ae6b4162bda8 --- /dev/null +++ b/src/imports/materiallib/designer/CustomMaterialSection.qml @@ -0,0 +1,160 @@ +/**************************************************************************** +** +** 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 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Custom Material") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Transparency") + tooltip: qsTr("Specifies if the material has transparency.") + } + SecondColumnLayout { + CheckBox { + text: backendValues.hasTransparency.valueToString + backendValue: backendValues.hasTransparency + Layout.fillWidth: true + } + } + Label { + text: qsTr("Refraction") + tooltip: qsTr("Specifies if the material has refraction.") + } + SecondColumnLayout { + CheckBox { + text: backendValues.hasRefraction.valueToString + backendValue: backendValues.hasRefraction + Layout.fillWidth: true + } + } + Label { + text: qsTr("Always Dirty") + tooltip: qsTr("Specifies if the material needs to be refreshed every time it is used.") + } + SecondColumnLayout { + CheckBox { + text: backendValues.alwaysDirty.valueToString + backendValue: backendValues.alwaysDirty + Layout.fillWidth: true + } + } + Label { + text: qsTr("Shader Info") + tooltip: qsTr("Shader info for the material.") + } + SecondColumnLayout { + IdComboBox { + typeFilter: "QtQuick3D.ShaderInfo" + Layout.fillWidth: true + backendValue: backendValues.shaderInfo + } + } + Label { + text: qsTr("Passes") + tooltip: qsTr("Render passes of the material.") + } + 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) } + } + } + } + } + + Section { + // Copied from quick3d's MaterialSection.qml + caption: qsTr("Material") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Light Probe") + tooltip: qsTr("Defines a texture for overriding or setting an image based lighting texture for use with this material.") + } + SecondColumnLayout { + IdComboBox { + typeFilter: "QtQuick3D.Texture" + Layout.fillWidth: true + backendValue: backendValues.lightProbe + } + } + Label { + text: qsTr("Displacement Map") + tooltip: qsTr("Defines a grayscale image used to offset the vertices of geometry across the surface of the material.") + } + SecondColumnLayout { + IdComboBox { + typeFilter: "QtQuick3D.Texture" + Layout.fillWidth: true + backendValue: backendValues.displacementMap + } + } + Label { + text: qsTr("Displacement Amount") + tooltip: qsTr("Controls the offset amount for the displacement map.") + } + SecondColumnLayout { + SpinBox { + maximumValue: 9999999 + minimumValue: -9999999 + realDragRange: 5000 + decimals: 0 + backendValue: backendValues.displacementAmount + Layout.fillWidth: true + } + } + Label { + text: qsTr("Culling Mode") + tooltip: qsTr("Defines whether culling is enabled and which mode is actually enabled.") + } + ComboBox { + scope: "Material" + model: ["BackFaceCulling", "FrontFaceCulling", "NoCulling"] + backendValue: backendValues.cullMode + Layout.fillWidth: true + } + } + } +} + diff --git a/src/imports/quick3d/designer/CustomMaterialSpecifics.qml b/src/imports/materiallib/designer/CustomMaterialSpecifics.qml similarity index 93% rename from src/imports/quick3d/designer/CustomMaterialSpecifics.qml rename to src/imports/materiallib/designer/CustomMaterialSpecifics.qml index 1f64b91d5128c4fa64068bc6cde898d09ef3b972..ada7454593daafbb4c8eb7f01dba8aa15e030166 100644 --- a/src/imports/quick3d/designer/CustomMaterialSpecifics.qml +++ b/src/imports/materiallib/designer/CustomMaterialSpecifics.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2019 The Qt Company Ltd. +** Copyright (C) 2020 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of Qt Quick 3D. @@ -37,8 +37,4 @@ Column { CustomMaterialSection { width: parent.width } - - MaterialSection { - width: parent.width - } } diff --git a/src/imports/materiallib/designer/designer.pri b/src/imports/materiallib/designer/designer.pri index f7a188c62768b4e34b1a292228602a9d28092d1a..a9c944215817aeddaedc1075de6ecea54726d404 100644 --- a/src/imports/materiallib/designer/designer.pri +++ b/src/imports/materiallib/designer/designer.pri @@ -32,7 +32,9 @@ AUX_QML_FILES += \ $$PWD/PlasticStructuredRedMaterialSection.qml \ $$PWD/PlasticStructuredRedMaterialSpecifics.qml \ $$PWD/SteelMilledConcentricMaterialSection.qml \ - $$PWD/SteelMilledConcentricMaterialSpecifics.qml + $$PWD/SteelMilledConcentricMaterialSpecifics.qml \ + $$PWD/CustomMaterialSection.qml \ + $$PWD/CustomMaterialSpecifics.qml AUX_QML_FILES += \ $$PWD/images/custommaterial.png \ diff --git a/src/imports/materiallib/designer/images/custommaterial.png b/src/imports/materiallib/designer/images/custommaterial.png index a3b6c7f6f243d86dd4ada0db8f709a0a5adeaa9c..1b540da5be40a773755b8e76e7a69bd62a96e44e 100644 Binary files a/src/imports/materiallib/designer/images/custommaterial.png and b/src/imports/materiallib/designer/images/custommaterial.png differ diff --git a/src/imports/materiallib/designer/images/custommaterial16.png b/src/imports/materiallib/designer/images/custommaterial16.png index de8906a724d67a95b221c5d11f2d20cd5bd42a0c..72847922d57ca34d538b2358ceac1abbbccf8328 100644 Binary files a/src/imports/materiallib/designer/images/custommaterial16.png and b/src/imports/materiallib/designer/images/custommaterial16.png differ diff --git a/src/imports/materiallib/designer/images/custommaterial@2x.png b/src/imports/materiallib/designer/images/custommaterial@2x.png index 7ca04a01eaa5a247ee96d385f0ad7b188af6cd71..3dbcf7320fbfc289795375dc88c32787462f39d3 100644 Binary files a/src/imports/materiallib/designer/images/custommaterial@2x.png and b/src/imports/materiallib/designer/images/custommaterial@2x.png differ diff --git a/src/imports/materiallib/designer/materiallib.metainfo b/src/imports/materiallib/designer/materiallib.metainfo index 9fdb973344ccad8ee2c1fcc18539dcf706e5b476..c24882cbae5421ecd77e428164742e1121eb5909 100644 --- a/src/imports/materiallib/designer/materiallib.metainfo +++ b/src/imports/materiallib/designer/materiallib.metainfo @@ -284,4 +284,22 @@ MetaInfo { requiredImport: "QtQuick3D.Materials" } } + Type { + name: "QtQuick3D.Materials.CustomMaterial" + icon: "images/custommaterial16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Custom Material" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/custommaterial.png" + version: "1.14" + requiredImport: "QtQuick3D.Materials" + } + } } diff --git a/src/imports/quick3d/designer/BlendingSection.qml b/src/imports/quick3d/designer/BlendingSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..2f29301baa338a82ebfbc3a4e586afe990b4efec --- /dev/null +++ b/src/imports/quick3d/designer/BlendingSection.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Blending") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Source") + tooltip: qsTr("Source blending for a pass.") + } + ComboBox { + scope: "Blending" + model: ["Unknown", "Zero", "One", "SrcColor", "OneMinusSrcColor", "DstColor", "OneMinusDstColor", "SrcAlpha", "OneMinusSrcAlpha", "DstAlpha", "OneMinusDstAlpha", "ConstantColor", "OneMinusConstantColor", "ConstantAlpha", "OneMinusConstantAlpha", "SrcAlphaSaturate"] + backendValue: backendValues.srcBlending + Layout.fillWidth: true + } + Label { + text: qsTr("Destination") + tooltip: qsTr("Destination blending for a pass.") + } + ComboBox { + scope: "Blending" + model: ["Unknown", "Zero", "One", "SrcColor", "OneMinusSrcColor", "DstColor", "OneMinusDstColor", "SrcAlpha", "OneMinusSrcAlpha", "DstAlpha", "OneMinusDstAlpha", "ConstantColor", "OneMinusConstantColor", "ConstantAlpha", "OneMinusConstantAlpha"] + backendValue: backendValues.destBlending + Layout.fillWidth: true + } + } + } +} diff --git a/src/imports/quick3d/designer/BlendingSpecifics.qml b/src/imports/quick3d/designer/BlendingSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..6e1567f61f0c8c7e5f12c0610c92caf8c0a3f9a2 --- /dev/null +++ b/src/imports/quick3d/designer/BlendingSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + BlendingSection { + width: parent.width + } +} diff --git a/src/imports/quick3d/designer/BufferBlitSection.qml b/src/imports/quick3d/designer/BufferBlitSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..b5d2683153d528be88c794723f75c4e03a5e82df --- /dev/null +++ b/src/imports/quick3d/designer/BufferBlitSection.qml @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** 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 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Buffer Blit") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Source") + tooltip: qsTr("Source buffer for the buffer blit.") + } + SecondColumnLayout { + IdComboBox { + typeFilter: "QtQuick3D.Buffer" + Layout.fillWidth: true + backendValue: backendValues.source + } + } + Label { + text: qsTr("Destination") + tooltip: qsTr("Destination buffer for the buffer blit.") + } + SecondColumnLayout { + IdComboBox { + typeFilter: "QtQuick3D.Buffer" + Layout.fillWidth: true + backendValue: backendValues.destination + } + } + } + } +} diff --git a/src/imports/quick3d/designer/BufferBlitSpecifics.qml b/src/imports/quick3d/designer/BufferBlitSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..289c12f07582ae9083403b619c054a60cb930e35 --- /dev/null +++ b/src/imports/quick3d/designer/BufferBlitSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + BufferBlitSection { + width: parent.width + } +} diff --git a/src/imports/quick3d/designer/BufferInputSection.qml b/src/imports/quick3d/designer/BufferInputSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..421c312ddde1405659ecc56dc926195c6ef050dc --- /dev/null +++ b/src/imports/quick3d/designer/BufferInputSection.qml @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** 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 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Buffer Input") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Buffer") + tooltip: qsTr("Input buffer for a pass.") + } + SecondColumnLayout { + IdComboBox { + typeFilter: "QtQuick3D.Buffer" + Layout.fillWidth: true + backendValue: backendValues.buffer + } + } + Label { + text: qsTr("Parameter") + tooltip: qsTr("Buffer input buffer name in the shader.") + } + SecondColumnLayout { + LineEdit { + backendValue: backendValues.param + Layout.fillWidth: true + showTranslateCheckBox: false + } + } + } + } +} diff --git a/src/imports/quick3d/designer/BufferInputSpecifics.qml b/src/imports/quick3d/designer/BufferInputSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..7be284617534d5a7e6f12565017d8db7c32185d1 --- /dev/null +++ b/src/imports/quick3d/designer/BufferInputSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + BufferInputSection { + width: parent.width + } +} diff --git a/src/imports/quick3d/designer/BufferSection.qml b/src/imports/quick3d/designer/BufferSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..7bd7d534f6bebc92e6cc320a51c3daa9956c50c3 --- /dev/null +++ b/src/imports/quick3d/designer/BufferSection.qml @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** 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 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Buffer") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Name") + tooltip: qsTr("Buffer name.") + } + SecondColumnLayout { + LineEdit { + backendValue: backendValues.name + Layout.fillWidth: true + showTranslateCheckBox: false + } + } + + Label { + text: qsTr("Format") + tooltip: qsTr("Format of the buffer.") + } + ComboBox { + scope: "Buffer" + model: ["Unknown", "R8", "R16", "R16F", "R32I", "R32UI", "R32F", "RG8", "RGBA8", "RGB8", "SRGB8", "SRGB8A8", "RGB565", "RGBA16F", "RG16F", "RG32F", "RGB32F", "RGBA32F", "R11G11B10", "RGB9E5", "Depth16", "Depth24", "Depth32", "Depth24Stencil8"] + backendValue: backendValues.format + Layout.fillWidth: true + } + + Label { + text: qsTr("Filter") + tooltip: qsTr("Texture filter for the buffer.") + } + ComboBox { + scope: "Buffer" + model: ["Unknown", "Nearest", "Linear"] + backendValue: backendValues.textureFilterOperation + Layout.fillWidth: true + } + + Label { + text: qsTr("Coordinate Operation") + tooltip: qsTr("Texture coordinate operation for the buffer.") + } + ComboBox { + scope: "Buffer" + model: ["Unknown", "ClampToEdge", "MirroredRepeat", "Repeat"] + backendValue: backendValues.textureCoordOperation + Layout.fillWidth: true + } + + Label { + text: qsTr("Allocation Flags") + tooltip: qsTr("Allocation flags for the buffer.") + } + ComboBox { + scope: "Buffer" + model: ["None", "SceneLifetime"] + backendValue: backendValues.bufferFlags + Layout.fillWidth: true + } + + Label { + text: qsTr("Size Multiplier") + tooltip: qsTr("Defines the size multiplier for the buffer.") + } + SecondColumnLayout { + SpinBox { + maximumValue: 10000 + minimumValue: 0 + decimals: 2 + realDragRange: 30 + backendValue: backendValues.sizeMultiplier + Layout.fillWidth: true + } + } + } + } +} diff --git a/src/imports/quick3d/designer/BufferSpecifics.qml b/src/imports/quick3d/designer/BufferSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..be0b16b2ddb456f08a07b1da6d1cc6d604f7d6dd --- /dev/null +++ b/src/imports/quick3d/designer/BufferSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + BufferSection { + width: parent.width + } +} diff --git a/src/imports/quick3d/designer/CullModeSection.qml b/src/imports/quick3d/designer/CullModeSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..e3de29ca9e8f2c5addcbc1a25f837bd7ee1f334e --- /dev/null +++ b/src/imports/quick3d/designer/CullModeSection.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Cull Mode") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Mode") + tooltip: qsTr("Cull mode for a pass.") + } + ComboBox { + scope: "Material" + model: ["BackFaceCulling", "FrontFaceCulling", "NoCulling"] + backendValue: backendValues.cullMode + Layout.fillWidth: true + } + } + } +} diff --git a/src/imports/quick3d/designer/CullModeSpecifics.qml b/src/imports/quick3d/designer/CullModeSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..6a22c0d1f1117675b2ee4f8f651acf10e93c5bcb --- /dev/null +++ b/src/imports/quick3d/designer/CullModeSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + CullModeSection { + width: parent.width + } +} diff --git a/src/imports/quick3d/designer/DepthInputSection.qml b/src/imports/quick3d/designer/DepthInputSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..3811eae715131d1b82b3354b13b2dd13d47e359c --- /dev/null +++ b/src/imports/quick3d/designer/DepthInputSection.qml @@ -0,0 +1,55 @@ +/**************************************************************************** +** +** 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 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Depth Input") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Parameter") + tooltip: qsTr("Depth input texture name in the shader.") + } + SecondColumnLayout { + LineEdit { + backendValue: backendValues.param + Layout.fillWidth: true + showTranslateCheckBox: false + } + } + } + } +} diff --git a/src/imports/quick3d/designer/DepthInputSpecifics.qml b/src/imports/quick3d/designer/DepthInputSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..1cdcb4dfd4b04f08e4684de444ba178b53cc77fc --- /dev/null +++ b/src/imports/quick3d/designer/DepthInputSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + DepthInputSection { + width: parent.width + } +} diff --git a/src/imports/quick3d/designer/PassSection.qml b/src/imports/quick3d/designer/PassSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..da4109b9922a6e8e99e034ab6d11df8942e08205 --- /dev/null +++ b/src/imports/quick3d/designer/PassSection.qml @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** 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 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Pass") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Commands") + tooltip: qsTr("Render commands of the pass.") + } + SecondColumnLayout { + EditableListView { + backendValue: backendValues.commands + model: backendValues.commands.expressionAsList + Layout.fillWidth: true + typeFilter: "QtQuick3D.Command" + + onAdd: function(value) { backendValues.commands.idListAdd(value) } + onRemove: function(idx) { backendValues.commands.idListRemove(idx) } + onReplace: function (idx, value) { backendValues.commands.idListReplace(idx, value) } + } + } + Label { + text: qsTr("Buffer") + tooltip: qsTr("Output buffer for the pass.") + } + SecondColumnLayout { + IdComboBox { + typeFilter: "QtQuick3D.Buffer" + Layout.fillWidth: true + backendValue: backendValues.output + } + } + Label { + text: qsTr("Shaders") + tooltip: qsTr("Shaders for the pass.") + } + SecondColumnLayout { + EditableListView { + backendValue: backendValues.shaders + model: backendValues.shaders.expressionAsList + Layout.fillWidth: true + typeFilter: "QtQuick3D.Shader" + + onAdd: function(value) { backendValues.shaders.idListAdd(value) } + onRemove: function(idx) { backendValues.shaders.idListRemove(idx) } + onReplace: function (idx, value) { backendValues.shaders.idListReplace(idx, value) } + } + } + } + } +} diff --git a/src/imports/quick3d/designer/CustomMaterialSection.qml b/src/imports/quick3d/designer/PassSpecifics.qml similarity index 91% rename from src/imports/quick3d/designer/CustomMaterialSection.qml rename to src/imports/quick3d/designer/PassSpecifics.qml index 0bc32da4ec375c3e35457aeffda8886bf49450fa..2a59fb0bd9b8305e19c1373ff0c1250f1e057f14 100644 --- a/src/imports/quick3d/designer/CustomMaterialSection.qml +++ b/src/imports/quick3d/designer/PassSpecifics.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2019 The Qt Company Ltd. +** Copyright (C) 2020 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of Qt Quick 3D. @@ -31,6 +31,10 @@ import QtQuick 2.15 import HelperWidgets 2.0 import QtQuick.Layouts 1.12 -Section { - caption: qsTr("Custom Material") +Column { + width: parent.width + + PassSection { + width: parent.width + } } diff --git a/src/imports/quick3d/designer/RenderStateSection.qml b/src/imports/quick3d/designer/RenderStateSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..2d8f28ce67afd469819002e7d408f500d31ce534 --- /dev/null +++ b/src/imports/quick3d/designer/RenderStateSection.qml @@ -0,0 +1,65 @@ +/**************************************************************************** +** +** 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 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Render State") + width: parent.width + + SectionLayout { + Label { + text: qsTr("State") + tooltip: qsTr("Render state to set for a pass.") + } + ComboBox { + scope: "RenderState" + model: ["Unknown", "Blend", "CullFace", "DepthTest", "StencilTest", "ScissorTest", "DepthWrite", "Multisample"] + backendValue: backendValues.renderState + Layout.fillWidth: true + } + Label { + text: qsTr("Enabled") + tooltip: qsTr("Render state enable state.") + } + SecondColumnLayout { + CheckBox { + text: backendValues.enabled.valueToString + backendValue: backendValues.enabled + Layout.fillWidth: true + } + } + } + } +} diff --git a/src/imports/quick3d/designer/RenderStateSpecifics.qml b/src/imports/quick3d/designer/RenderStateSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..23ce2c1394efb99db5d39dc7a2f59d5fa7245db0 --- /dev/null +++ b/src/imports/quick3d/designer/RenderStateSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + RenderStateSection { + width: parent.width + } +} diff --git a/src/imports/quick3d/designer/SetUniformValueSection.qml b/src/imports/quick3d/designer/SetUniformValueSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..760627799e1744f6b5d366a80951433d26cf47a0 --- /dev/null +++ b/src/imports/quick3d/designer/SetUniformValueSection.qml @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** 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 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Set Uniform Value") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Target") + tooltip: qsTr("The name of the uniform to change value for a pass.") + } + SecondColumnLayout { + LineEdit { + backendValue: backendValues.target + Layout.fillWidth: true + showTranslateCheckBox: false + } + } + Label { + text: qsTr("Value") + tooltip: qsTr("The value of the uniform.") + } + SecondColumnLayout { + LineEdit { + backendValue: backendValues.value + Layout.fillWidth: true + showTranslateCheckBox: false + writeAsExpression: true + } + } + } + } +} diff --git a/src/imports/quick3d/designer/SetUniformValueSpecifics.qml b/src/imports/quick3d/designer/SetUniformValueSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..96982ef9bbcbcecc587d40012d824433e3ac372c --- /dev/null +++ b/src/imports/quick3d/designer/SetUniformValueSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + SetUniformValueSection { + width: parent.width + } +} diff --git a/src/imports/quick3d/designer/ShaderInfoSection.qml b/src/imports/quick3d/designer/ShaderInfoSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..c678b3a594fb8171fd981a04fcd09b623cd00f75 --- /dev/null +++ b/src/imports/quick3d/designer/ShaderInfoSection.qml @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** 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 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Shader Info") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Version") + tooltip: qsTr("Shader code version to use.") + } + SecondColumnLayout { + LineEdit { + backendValue: backendValues.version + Layout.fillWidth: true + showTranslateCheckBox: false + } + } + Label { + text: qsTr("Type") + tooltip: qsTr("Shader type.") + } + SecondColumnLayout { + LineEdit { + backendValue: backendValues.type + Layout.fillWidth: true + showTranslateCheckBox: false + } + } + Label { + text: qsTr("Key") + tooltip: qsTr("Shader key.") + } + ComboBox { + scope: "ShaderInfo" + model: ["Diffuse", "Specular", "Cutout", "Refraction", "Transparent", "Displace", "Transmissive", "Glossy"] + backendValue: backendValues.shaderKey + Layout.fillWidth: true + } + } + } +} diff --git a/src/imports/quick3d/designer/ShaderInfoSpecifics.qml b/src/imports/quick3d/designer/ShaderInfoSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..488076c33312d19dbf879c6fbdc5b4da7ff68042 --- /dev/null +++ b/src/imports/quick3d/designer/ShaderInfoSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + ShaderInfoSection { + width: parent.width + } +} diff --git a/src/imports/quick3d/designer/ShaderSection.qml b/src/imports/quick3d/designer/ShaderSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..cc52cd180a5ed323c6300fb208300784e2589300 --- /dev/null +++ b/src/imports/quick3d/designer/ShaderSection.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Shader") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Source") + tooltip: qsTr("Shader source code.") + } + SecondColumnLayout { + UrlChooser { + backendValue: backendValues.shader + filter: "*.*" + } + } + Label { + text: qsTr("Stage") + tooltip: qsTr("Shader stage.") + } + ComboBox { + scope: "Shader" + model: ["Shared", "Vertex", "Fragment", "Geometry", "Compute"] + backendValue: backendValues.stage + Layout.fillWidth: true + } + } + } +} diff --git a/src/imports/quick3d/designer/ShaderSpecifics.qml b/src/imports/quick3d/designer/ShaderSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..3de46b66656905798c3dcd96b36d3a13b30ed447 --- /dev/null +++ b/src/imports/quick3d/designer/ShaderSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + ShaderSection { + width: parent.width + } +} diff --git a/src/imports/quick3d/designer/TextureInputSection.qml b/src/imports/quick3d/designer/TextureInputSection.qml new file mode 100644 index 0000000000000000000000000000000000000000..560b1df1c321e4ef3fdca26b41b3cb0cf8d4abbb --- /dev/null +++ b/src/imports/quick3d/designer/TextureInputSection.qml @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** 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 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + Section { + caption: qsTr("Texture Input") + width: parent.width + + SectionLayout { + Label { + text: qsTr("Texture") + tooltip: qsTr("Input texture.") + } + SecondColumnLayout { + IdComboBox { + typeFilter: "QtQuick3D.Texture" + Layout.fillWidth: true + backendValue: backendValues.texture + } + } + Label { + text: qsTr("Enabled") + tooltip: qsTr("Texture enable state.") + } + SecondColumnLayout { + CheckBox { + text: backendValues.enabled.valueToString + backendValue: backendValues.enabled + Layout.fillWidth: true + } + } + } + } +} diff --git a/src/imports/quick3d/designer/TextureInputSpecifics.qml b/src/imports/quick3d/designer/TextureInputSpecifics.qml new file mode 100644 index 0000000000000000000000000000000000000000..32e714e6525777ec048221b0cd831b5e29e93c4d --- /dev/null +++ b/src/imports/quick3d/designer/TextureInputSpecifics.qml @@ -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 HelperWidgets 2.0 +import QtQuick.Layouts 1.12 + +Column { + width: parent.width + + TextureInputSection { + width: parent.width + } +} diff --git a/src/imports/quick3d/designer/designer.pri b/src/imports/quick3d/designer/designer.pri index 7cbe84ae410998660be64b1585ff1f2c3d5fedce..844d4101d1718b94f656ba9027364967afa31365 100644 --- a/src/imports/quick3d/designer/designer.pri +++ b/src/imports/quick3d/designer/designer.pri @@ -9,8 +9,6 @@ AUX_QML_FILES += \ $$PWD/FrustumCameraSpecifics.qml \ $$PWD/CustomCameraSection.qml \ $$PWD/CustomCameraSpecifics.qml \ - $$PWD/CustomMaterialSection.qml \ - $$PWD/CustomMaterialSpecifics.qml \ $$PWD/DefaultMaterialSection.qml \ $$PWD/DefaultMaterialSpecifics.qml \ $$PWD/TextureSection.qml \ @@ -37,6 +35,30 @@ AUX_QML_FILES += \ $$PWD/ShadowSection.qml \ $$PWD/View3DSection.qml \ $$PWD/View3DSpecifics.qml \ + $$PWD/ShaderSection.qml \ + $$PWD/ShaderSpecifics.qml \ + $$PWD/ShaderInfoSection.qml \ + $$PWD/ShaderInfoSpecifics.qml \ + $$PWD/TextureInputSection.qml \ + $$PWD/TextureInputSpecifics.qml \ + $$PWD/PassSection.qml \ + $$PWD/PassSpecifics.qml \ + $$PWD/BufferInputSection.qml \ + $$PWD/BufferInputSpecifics.qml \ + $$PWD/BufferBlitSection.qml \ + $$PWD/BufferBlitSpecifics.qml \ + $$PWD/BufferSection.qml \ + $$PWD/BufferSpecifics.qml \ + $$PWD/BlendingSection.qml \ + $$PWD/BlendingSpecifics.qml \ + $$PWD/RenderStateSection.qml \ + $$PWD/RenderStateSpecifics.qml \ + $$PWD/CullModeSection.qml \ + $$PWD/CullModeSpecifics.qml \ + $$PWD/DepthInputSection.qml \ + $$PWD/DepthInputSpecifics.qml \ + $$PWD/SetUniformValueSection.qml \ + $$PWD/SetUniformValueSpecifics.qml \ $$PWD/source/view3D_template.qml \ $$PWD/source/cube_model_template.qml \ $$PWD/source/sphere_model_template.qml \ @@ -69,12 +91,19 @@ AUX_QML_FILES += \ $$PWD/images/material.png \ $$PWD/images/material@2x.png \ $$PWD/images/material16.png \ + $$PWD/images/model16.png \ $$PWD/images/plane.png \ $$PWD/images/plane@2x.png \ $$PWD/images/plane16.png \ $$PWD/images/scene.png \ $$PWD/images/scene@2x.png \ $$PWD/images/scene16.png \ + $$PWD/images/shadercommand.png \ + $$PWD/images/shadercommand@2x.png \ + $$PWD/images/shadercommand16.png \ + $$PWD/images/shaderutil.png \ + $$PWD/images/shaderutil@2x.png \ + $$PWD/images/shaderutil16.png \ $$PWD/images/sphere.png \ $$PWD/images/sphere@2x.png \ $$PWD/images/sphere16.png \ diff --git a/src/imports/quick3d/designer/images/cube16.png b/src/imports/quick3d/designer/images/cube16.png index 37d683d971b454a2221d35acf0d4a4ebf1a34d17..759f073dd5110d93404397746e17692bd0908779 100644 Binary files a/src/imports/quick3d/designer/images/cube16.png and b/src/imports/quick3d/designer/images/cube16.png differ diff --git a/src/imports/quick3d/designer/images/model16.png b/src/imports/quick3d/designer/images/model16.png new file mode 100644 index 0000000000000000000000000000000000000000..759f073dd5110d93404397746e17692bd0908779 Binary files /dev/null and b/src/imports/quick3d/designer/images/model16.png differ diff --git a/src/imports/quick3d/designer/images/shadercommand.png b/src/imports/quick3d/designer/images/shadercommand.png new file mode 100644 index 0000000000000000000000000000000000000000..86aa50b3089eda32b6efdbd9859b4b5bb18bc0a6 Binary files /dev/null and b/src/imports/quick3d/designer/images/shadercommand.png differ diff --git a/src/imports/quick3d/designer/images/shadercommand16.png b/src/imports/quick3d/designer/images/shadercommand16.png new file mode 100644 index 0000000000000000000000000000000000000000..62a9160ea4e3e20007a671fc62f7e338425cbb86 Binary files /dev/null and b/src/imports/quick3d/designer/images/shadercommand16.png differ diff --git a/src/imports/quick3d/designer/images/shadercommand@2x.png b/src/imports/quick3d/designer/images/shadercommand@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..6fc3793e048699206bb081ef7f0ce91d604e84f6 Binary files /dev/null and b/src/imports/quick3d/designer/images/shadercommand@2x.png differ diff --git a/src/imports/quick3d/designer/images/shaderutil.png b/src/imports/quick3d/designer/images/shaderutil.png new file mode 100644 index 0000000000000000000000000000000000000000..948752c39f2afd845ab74d706e63647c7c0f5192 Binary files /dev/null and b/src/imports/quick3d/designer/images/shaderutil.png differ diff --git a/src/imports/quick3d/designer/images/shaderutil16.png b/src/imports/quick3d/designer/images/shaderutil16.png new file mode 100644 index 0000000000000000000000000000000000000000..a33401e094ca0c7c6605d6e10a779d80e56b73d9 Binary files /dev/null and b/src/imports/quick3d/designer/images/shaderutil16.png differ diff --git a/src/imports/quick3d/designer/images/shaderutil@2x.png b/src/imports/quick3d/designer/images/shaderutil@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..a54511ed5fe384792f6b706a9498b52e092cc02d Binary files /dev/null and b/src/imports/quick3d/designer/images/shaderutil@2x.png differ diff --git a/src/imports/quick3d/designer/quick3d.metainfo b/src/imports/quick3d/designer/quick3d.metainfo index 50cd60220739f9dc25e4da470b5fc8f758f2c46f..e16e6dc2ffc2cca9a578be9a3b5507a44c087118 100644 --- a/src/imports/quick3d/designer/quick3d.metainfo +++ b/src/imports/quick3d/designer/quick3d.metainfo @@ -79,25 +79,6 @@ MetaInfo { Property { name: "z"; type: "int"; value: 500; } } } - Type { - name: "QtQuick3D.CustomMaterial" - icon: "images/material16.png" - - Hints { - visibleInNavigator: true - canBeDroppedInNavigator: true - canBeDroppedInFormEditor: false - canBeContainer: false - } - - ItemLibraryEntry { - name: "Custom Material" - category: "Qt Quick 3D" - libraryIcon: "images/material.png" - version: "1.0" - requiredImport: "QtQuick3D" - } - } Type { name: "QtQuick3D.DefaultMaterial" icon: "images/material16.png" @@ -106,7 +87,6 @@ MetaInfo { visibleInNavigator: true canBeDroppedInNavigator: true canBeDroppedInFormEditor: false - canBeContainer: false } ItemLibraryEntry { @@ -126,7 +106,6 @@ MetaInfo { visibleInNavigator: true canBeDroppedInNavigator: true canBeDroppedInFormEditor: false - canBeContainer: false } ItemLibraryEntry { @@ -237,7 +216,7 @@ MetaInfo { } Type { name: "QtQuick3D.Model" - icon: "images/cube16.png" + icon: "images/model16.png" Hints { visibleInNavigator: true @@ -258,7 +237,7 @@ MetaInfo { } Type { name: "QtQuick3D.Model" - icon: "images/sphere16.png" + icon: "images/model16.png" Hints { visibleInNavigator: true @@ -279,7 +258,7 @@ MetaInfo { } Type { name: "QtQuick3D.Model" - icon: "images/cylinder16.png" + icon: "images/model16.png" Hints { visibleInNavigator: true @@ -300,7 +279,7 @@ MetaInfo { } Type { name: "QtQuick3D.Model" - icon: "images/plane16.png" + icon: "images/model16.png" Hints { visibleInNavigator: true @@ -321,7 +300,7 @@ MetaInfo { } Type { name: "QtQuick3D.Model" - icon: "images/cone16.png" + icon: "images/model16.png" Hints { visibleInNavigator: true @@ -367,7 +346,6 @@ MetaInfo { visibleInNavigator: true canBeDroppedInNavigator: true canBeDroppedInFormEditor: false - canBeContainer: false } ItemLibraryEntry { @@ -391,4 +369,220 @@ MetaInfo { QmlSource { source: "./source/view3D_template.qml" } } } + Type { + name: "QtQuick3D.Shader" + icon: "images/shaderutil16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Shader" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shaderutil.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } + Type { + name: "QtQuick3D.ShaderInfo" + icon: "images/shaderutil16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Shader Info" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shaderutil.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } + Type { + name: "QtQuick3D.TextureInput" + icon: "images/shaderutil16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Texture Input" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shaderutil.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } + Type { + name: "QtQuick3D.Pass" + icon: "images/shaderutil16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Pass" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shaderutil.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } + Type { + name: "QtQuick3D.BufferInput" + icon: "images/shadercommand16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Buffer Input" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shadercommand.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } + Type { + name: "QtQuick3D.BufferBlit" + icon: "images/shadercommand16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Buffer Blit" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shadercommand.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } + Type { + name: "QtQuick3D.Blending" + icon: "images/shadercommand16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Blending" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shadercommand.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } + Type { + name: "QtQuick3D.Buffer" + icon: "images/shaderutil16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Buffer" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shaderutil.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } + Type { + name: "QtQuick3D.RenderState" + icon: "images/shadercommand16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Render State" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shadercommand.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } + Type { + name: "QtQuick3D.CullMode" + icon: "images/shadercommand16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Cull Mode" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shadercommand.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } + Type { + name: "QtQuick3D.DepthInput" + icon: "images/shadercommand16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Depth Input" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shadercommand.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } + Type { + name: "QtQuick3D.SetUniformValue" + icon: "images/shadercommand16.png" + + Hints { + visibleInNavigator: true + canBeDroppedInNavigator: true + canBeDroppedInFormEditor: false + } + + ItemLibraryEntry { + name: "Set Uniform Value" + category: "Qt Quick 3D Custom Shader Utils" + libraryIcon: "images/shadercommand.png" + version: "1.15" + requiredImport: "QtQuick3D" + } + } }