aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--share/qtcreator/qmldesigner/aiAssistantQmlSources/ResponseStatePopup.qml12
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/CascadesSection.qml121
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/CustomMaterialSection.qml34
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/DebugSettingsSection.qml99
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/DirectionalLightSpecifics.qml4
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/AxisHelperSection.qml8
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/InfiniteGridSection.qml2
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/WasdControllerSection.qml8
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/HeightFieldShapeSection.qml16
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/PhysicsNodeSection.qml36
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/PhysicsWorldSection.qml50
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/PrincipledMaterialSection.qml466
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/ShadowSection.qml42
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/SpecularGlossyMaterialSection.qml447
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/TextureSection.qml25
-rw-r--r--share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/View3DSection.qml36
16 files changed, 1378 insertions, 28 deletions
diff --git a/share/qtcreator/qmldesigner/aiAssistantQmlSources/ResponseStatePopup.qml b/share/qtcreator/qmldesigner/aiAssistantQmlSources/ResponseStatePopup.qml
index 7d8b063c910..11dd565e9b2 100644
--- a/share/qtcreator/qmldesigner/aiAssistantQmlSources/ResponseStatePopup.qml
+++ b/share/qtcreator/qmldesigner/aiAssistantQmlSources/ResponseStatePopup.qml
@@ -94,9 +94,19 @@ Rectangle {
id: messageText
color: StudioTheme.Values.themeTextColor
- wrapMode: Text.WordWrap
+ wrapMode: Text.NoWrap
+ elide: Text.ElideRight
Layout.fillWidth: true
+
+ HelperWidgets.ToolTipArea {
+ id: messageTextTooltip
+
+ anchors.fill: parent
+ acceptedButtons: Qt.NoButton
+ enabled: messageText.truncated
+ tooltip: messageText.text
+ }
}
Row {
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/CascadesSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/CascadesSection.qml
new file mode 100644
index 00000000000..1031950bed7
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/CascadesSection.qml
@@ -0,0 +1,121 @@
+// Copyright (C) 2025 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+import QtQuick
+import QtQuick.Layouts
+import HelperWidgets
+import StudioTheme as StudioTheme
+
+Section {
+ caption: qsTr("Cascades")
+ width: parent.width
+
+ SectionLayout {
+
+ PropertyLabel {
+ text: qsTr("No. Splits")
+ tooltip: qsTr("Sets the number of cascade splits for this light.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ id: numSplitsComboBox
+ valueType: ComboBox.ValueType.Integer
+ model: [0, 1, 2, 3]
+ backendValue: backendValues.csmNumSplits
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ visible: numSplitsComboBox.currentIndex > 0
+ text: qsTr("Blend ratio")
+ tooltip: qsTr("Sets how much of the shadow of any cascade should be blended together with the previous one.")
+ }
+
+ SecondColumnLayout {
+ visible: numSplitsComboBox.currentIndex > 0
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 1
+ decimals: 2
+ stepSize: 0.01
+ backendValue: backendValues.csmBlendRatio
+ sliderIndicatorVisible: true
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ visible: numSplitsComboBox.currentIndex > 0
+ text: qsTr("Split 1")
+ tooltip: qsTr("Sets where the first cascade of the shadow map split occurs.")
+ }
+
+ SecondColumnLayout {
+ visible: numSplitsComboBox.currentIndex > 0
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 1
+ decimals: 2
+ stepSize: 0.01
+ backendValue: backendValues.csmSplit1
+ sliderIndicatorVisible: true
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ visible: numSplitsComboBox.currentIndex > 1
+ text: qsTr("Split 2")
+ tooltip: qsTr("Sets where the second cascade of the shadow map split occurs.")
+ }
+
+ SecondColumnLayout {
+ visible: numSplitsComboBox.currentIndex > 1
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 1
+ decimals: 2
+ stepSize: 0.01
+ backendValue: backendValues.csmSplit2
+ sliderIndicatorVisible: true
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ visible: numSplitsComboBox.currentIndex > 2
+ text: qsTr("Split 3")
+ tooltip: qsTr("Sets where the third cascade of the shadow map split occurs.")
+ }
+
+ SecondColumnLayout {
+ visible: numSplitsComboBox.currentIndex > 2
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 1
+ decimals: 2
+ stepSize: 0.01
+ backendValue: backendValues.csmSplit3
+ sliderIndicatorVisible: true
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/CustomMaterialSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/CustomMaterialSection.qml
index 07c59ec7c94..6aa37ff68de 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/CustomMaterialSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/CustomMaterialSection.qml
@@ -91,6 +91,40 @@ Section {
}
PropertyLabel {
+ text: qsTr("Source Alpha Blend")
+ tooltip: qsTr("Sets the source alpha blend factor.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ scope: "CustomMaterial"
+ model: ["NoBlend", "Zero", "One", "SrcColor", "OneMinusSrcColor", "DstColor", "OneMinusDstColor", "SrcAlpha", "OneMinusSrcAlpha", "DstAlpha", "OneMinusDstAlpha", "ConstantColor", "OneMinusConstantColor", "ConstantAlpha", "OneMinusConstantAlpha", "SrcAlphaSaturate"]
+ backendValue: backendValues.sourceAlphaBlend
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Destination Alpha Blend")
+ tooltip: qsTr("Sets the destination alpha blend factor.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ scope: "CustomMaterial"
+ model: ["NoBlend", "Zero", "One", "SrcColor", "OneMinusSrcColor", "DstColor", "OneMinusDstColor", "SrcAlpha", "OneMinusSrcAlpha", "DstAlpha", "OneMinusDstAlpha", "ConstantColor", "OneMinusConstantColor", "ConstantAlpha", "OneMinusConstantAlpha", "SrcAlphaSaturate"]
+ backendValue: backendValues.destinationAlphaBlend
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
text: qsTr("Always Dirty")
tooltip: qsTr("Sets the material to refresh every time it is used by QtQuick3D.")
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/DebugSettingsSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/DebugSettingsSection.qml
index 4805272aa22..65211a96fbf 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/DebugSettingsSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/DebugSettingsSection.qml
@@ -27,14 +27,13 @@ Section {
ExpandingSpacer {}
}
- PropertyLabel {
+ PropertyLabel {
text: qsTr("Override Mode")
tooltip: qsTr("Changes how all materials are rendered to only reflect a particular aspect of the overall rendering process")
}
SecondColumnLayout {
ComboBox {
- id: backgroundModeComboBox
scope: "DebugSettings"
model: ["None", "BaseColor", "Roughness", "Metalness", "Diffuse", "Specular", "ShadowOcclusion", "Emission", "AmbientOcclusion", "Normals", "Tangents", "Binormals", "FO"]
backendValue: backendValues.materialOverride
@@ -44,5 +43,101 @@ Section {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Shadow Boxes")
+ tooltip: qsTr("A bounding box is drawn for every directional light's shadowmap.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.drawDirectionalLightShadowBoxes.valueToString
+ backendValue: backendValues.drawDirectionalLightShadowBoxes
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Shadow Cast Bounds")
+ tooltip: qsTr("A bounding box is drawn for the shadow casting objects.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.drawShadowCastingBounds.valueToString
+ backendValue: backendValues.drawShadowCastingBounds
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Shadow Receive Bounds")
+ tooltip: qsTr("A bounding box is drawn for the shadow receiving objects.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.drawShadowReceivingBounds.valueToString
+ backendValue: backendValues.drawShadowReceivingBounds
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Cascades")
+ tooltip: qsTr("A frustum is drawn with splits indicating where the shadowmap cascades begin and end.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.drawCascades.valueToString
+ backendValue: backendValues.drawCascades
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Cascade Intersection")
+ tooltip: qsTr("The intersection of the shadowmap cascades and the casting and receiving objects of the scene is drawn.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.drawSceneCascadeIntersection.valueToString
+ backendValue: backendValues.drawSceneCascadeIntersection
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Disable Shadow Camera")
+ tooltip: qsTr("The camera update is disabled for the shadowmap.\nThis means that the view frustum will be locked in space just for the shadowmap calculations.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.disableShadowCameraUpdate.valueToString
+ backendValue: backendValues.disableShadowCameraUpdate
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/DirectionalLightSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/DirectionalLightSpecifics.qml
index 0f12f8239f0..c20ece86e38 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/DirectionalLightSpecifics.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/DirectionalLightSpecifics.qml
@@ -11,4 +11,8 @@ Column {
AbstractLightSection {
width: parent.width
}
+
+ CascadesSection {
+ width: parent.width
+ }
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/AxisHelperSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/AxisHelperSection.qml
index 8dcd4627053..15df9f56fbe 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/AxisHelperSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/AxisHelperSection.qml
@@ -21,7 +21,7 @@ Column {
SecondColumnLayout {
CheckBox {
- text: qsTr("Enabled")
+ text: backendValues.enableAxisLines.valueToString
backendValue: backendValues.enableAxisLines
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
@@ -37,7 +37,7 @@ Column {
SecondColumnLayout {
CheckBox {
- text: qsTr("Enabled")
+ text: backendValues.enableXYGrid.valueToString
backendValue: backendValues.enableXYGrid
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
@@ -53,7 +53,7 @@ Column {
SecondColumnLayout {
CheckBox {
- text: qsTr("Enabled")
+ text: backendValues.enableXZGrid.valueToString
backendValue: backendValues.enableXZGrid
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
@@ -70,7 +70,7 @@ Column {
SecondColumnLayout {
CheckBox {
- text: qsTr("Enabled")
+ text: backendValues.enableYZGrid.valueToString
backendValue: backendValues.enableYZGrid
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/InfiniteGridSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/InfiniteGridSection.qml
index cc0703712ea..d10660c6fbc 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/InfiniteGridSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/InfiniteGridSection.qml
@@ -32,7 +32,7 @@ Column {
}
CheckBox {
- text: backendValues.gridAxes ? qsTr("On") : qsTr("Off")
+ text: backendValues.gridAxes.valueToString
backendValue: backendValues.gridAxes
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/WasdControllerSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/WasdControllerSection.qml
index c00ff721adb..083b58407a3 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/WasdControllerSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Helpers/WasdControllerSection.qml
@@ -37,7 +37,7 @@ Column {
SecondColumnLayout {
CheckBox {
- text: qsTr("Enabled")
+ text: backendValues.xInvert.valueToString
backendValue: backendValues.xInvert
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
@@ -53,7 +53,7 @@ Column {
SecondColumnLayout {
CheckBox {
- text: qsTr("Enabled")
+ text: backendValues.yInvert.valueToString
backendValue: backendValues.yInvert
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
@@ -69,7 +69,7 @@ Column {
SecondColumnLayout {
CheckBox {
- text: qsTr("Enabled")
+ text: backendValues.mouseEnabled.valueToString
backendValue: backendValues.mouseEnabled
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
@@ -85,7 +85,7 @@ Column {
SecondColumnLayout {
CheckBox {
- text: qsTr("Enabled")
+ text: backendValues.keysEnabled.valueToString
backendValue: backendValues.keysEnabled
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/HeightFieldShapeSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/HeightFieldShapeSection.qml
index 80c6f428e97..ba577e9e54a 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/HeightFieldShapeSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/HeightFieldShapeSection.qml
@@ -94,5 +94,21 @@ Section {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Image")
+ tooltip: qsTr("Sets the image holding the heightMap.")
+ }
+
+ SecondColumnLayout {
+ ItemFilterComboBox {
+ typeFilter: "QtQuick.Image"
+ backendValue: backendValues.image
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/PhysicsNodeSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/PhysicsNodeSection.qml
index 26fdf0e4d87..d382639e512 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/PhysicsNodeSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/PhysicsNodeSection.qml
@@ -98,6 +98,42 @@ Column {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Filter Group")
+ tooltip: qsTr("Sets the filter group this body is part of.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 32
+ decimals: 0
+ backendValue: backendValues.filterGroup
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Filter Ignore Groups")
+ tooltip: qsTr("Sets the filter groups this body should filter out collisions with. This number is interpreted as a bitmask.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 2147483647
+ decimals: 0
+ backendValue: backendValues.filterIgnoreGroups
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/PhysicsWorldSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/PhysicsWorldSection.qml
index 3299e984bec..10647800327 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/PhysicsWorldSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/Physics/PhysicsWorldSection.qml
@@ -262,5 +262,55 @@ Section {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Threads")
+ tooltip: qsTr("Sets the number of threads used for the physical simulation.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: -1
+ maximumValue: 999999
+ decimals: 0
+ backendValue: backendValues.numThreads
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Report Kinematic Collisions")
+ tooltip: qsTr("Sets if collisions between pairs of kinematic dynamic rigid bodies triggers a contact report.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.reportKinematicKinematicCollisions.valueToString
+ backendValue: backendValues.reportKinematicKinematicCollisions
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Report Static Collisions")
+ tooltip: qsTr("Sets if collisions between a static rigid body and a kinematic dynamic rigid body triggers a contact report.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.reportStaticKinematicCollisions.valueToString
+ backendValue: backendValues.reportStaticKinematicCollisions
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/PrincipledMaterialSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/PrincipledMaterialSection.qml
index 8e70e920401..3dc8ce78c6e 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/PrincipledMaterialSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/PrincipledMaterialSection.qml
@@ -121,6 +121,41 @@ Column {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Use Single Channel")
+ tooltip: qsTr("Use only a single channel from baseColorMap.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ id: baseColorSingleChannelCheckBox
+ text: backendValues.baseColorSingleChannelEnabled.valueToString
+ backendValue: backendValues.baseColorSingleChannelEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Channel")
+ tooltip: qsTr("Sets the texture channel used to read the base color value from baseColorMap.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ enabled: baseColorSingleChannelCheckBox.checked
+ scope: "Material"
+ model: ["R", "G", "B", "A"]
+ backendValue: backendValues.baseColorChannel
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
@@ -404,6 +439,22 @@ Column {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Invert Channel")
+ tooltip: qsTr("Invert the values of the opacity map.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.invertOpacityMapValue.valueToString
+ backendValue: backendValues.invertOpacityMapValue
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
@@ -502,6 +553,41 @@ Column {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Use Single Channel")
+ tooltip: qsTr("Use only a single channel from emissiveMap.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ id: emissiveSingleChannelCheckBox
+ text: backendValues.emissiveSingleChannelEnabled.valueToString
+ backendValue: backendValues.emissiveSingleChannelEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Channel")
+ tooltip: qsTr("Sets the texture channel used to read the emissive value from emissiveMap.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ enabled: emissiveSingleChannelCheckBox.checked
+ scope: "Material"
+ model: ["R", "G", "B", "A"]
+ backendValue: backendValues.emissiveChannel
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
@@ -730,6 +816,102 @@ Column {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Normal Strength")
+ tooltip: qsTr("Sets the normal strength of the clearcoat layer.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 1
+ decimals: 2
+ stepSize: 0.1
+ sliderIndicatorVisible: true
+ backendValue: backendValues.clearcoatNormalStrength
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Fresnel Power")
+ tooltip: qsTr("Sets the fresnel power.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 1000
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.clearcoatFresnelPower
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Enable scale and bias")
+ tooltip: qsTr("Sets whether fresnel scale and bias are enabled.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.clearcoatFresnelScaleBiasEnabled.valueToString
+ backendValue: backendValues.clearcoatFresnelScaleBiasEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Fresnel Scale")
+ tooltip: qsTr("Sets the fresnel scale.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 5
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.clearcoatFresnelScale
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Fresnel Bias")
+ tooltip: qsTr("Sets the fresnel bias.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: -1
+ maximumValue: 1
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.clearcoatFresnelBias
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
@@ -894,18 +1076,101 @@ Column {
}
Section {
- caption: qsTr("Advanced")
+ caption: qsTr("Fresnel")
+ width: parent.width
+
+ SectionLayout {
+ PropertyLabel {
+ text: qsTr("Fresnel Power")
+ tooltip: qsTr("Sets the fresnel power.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 1000
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.fresnelPower
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Enable scale and bias")
+ tooltip: qsTr("Sets whether fresnel scale and bias are enabled.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.fresnelScaleBiasEnabled.valueToString
+ backendValue: backendValues.fresnelScaleBiasEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Fresnel Scale")
+ tooltip: qsTr("Sets the fresnel scale.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 5
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.fresnelScale
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Fresnel Bias")
+ tooltip: qsTr("Sets the fresnel bias.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: -1
+ maximumValue: 1
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.fresnelBias
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+ }
+ }
+
+ Section {
+ caption: qsTr("Vertex Color")
width: parent.width
SectionLayout {
PropertyLabel {
- text: qsTr("Vertex Colors")
+ text: qsTr("Show Colors")
tooltip: qsTr("Sets whether vertex colors are used to modulate the base color.")
}
SecondColumnLayout {
CheckBox {
- text: backendValues.vertexColorsEnabled ? qsTr("Enabled") : qsTr("Disabled")
+ text: backendValues.vertexColorsEnabled.valueToString
backendValue: backendValues.vertexColorsEnabled
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
@@ -915,6 +1180,154 @@ Column {
}
PropertyLabel {
+ text: qsTr("Enable Masks")
+ tooltip: qsTr("Sets whether vertex colors mask are used.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.vertexColorsMaskEnabled.valueToString
+ backendValue: backendValues.vertexColorsMaskEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ ListModel {
+ id: colorMaskModel
+
+ ListElement {
+ name: qsTr("Roughness")
+ flag: "RoughnessMask"
+ }
+ ListElement {
+ name: qsTr("Normal Strength")
+ flag: "NormalStrengthMask"
+ }
+ ListElement {
+ name: qsTr("Specular Amount")
+ flag: "SpecularAmountMask"
+ }
+ ListElement {
+ name: qsTr("Clearcoat Amount")
+ flag: "ClearcoatAmountMask"
+ }
+ ListElement {
+ name: qsTr("Clearcoat Roughness Amount")
+ flag: "ClearcoatRoughnessAmountMask"
+ }
+ ListElement {
+ name: qsTr("Clearcoat Normal Strength")
+ flag: "ClearcoatNormalStrengthMask"
+ }
+ ListElement {
+ name: qsTr("Height Amount")
+ flag: "HeightAmountMask"
+ }
+ ListElement {
+ name: qsTr("Metalness")
+ flag: "MetalnessMask"
+ }
+ ListElement {
+ name: qsTr("Occlusion Amount")
+ flag: "OcclusionAmountMask"
+ }
+ ListElement {
+ name: qsTr("Thickness Factor")
+ flag: "ThicknessFactorMask"
+ }
+ ListElement {
+ name: qsTr("Transmission Factor")
+ flag: "TransmissionFactorMask"
+ }
+ }
+
+ PropertyLabel {
+ text: qsTr("Mask R")
+ tooltip: qsTr("Sets the properties masked by the vertex color red channel.")
+ }
+
+ SecondColumnLayout {
+ FlagsComboBox {
+ backendValue: backendValues.vertexColorRedMask
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+
+ itemsModel: colorMaskModel
+ scope: "PrincipledMaterial"
+ zeroFlag: "NoMask"
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Mask G")
+ tooltip: qsTr("Sets the properties masked by the vertex color green channel.")
+ }
+
+ SecondColumnLayout {
+ FlagsComboBox {
+ backendValue: backendValues.vertexColorGreenMask
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+
+ itemsModel: colorMaskModel
+ scope: "PrincipledMaterial"
+ zeroFlag: "NoMask"
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Mask B")
+ tooltip: qsTr("Sets the properties masked by the vertex color blue channel.")
+ }
+
+ SecondColumnLayout {
+ FlagsComboBox {
+ backendValue: backendValues.vertexColorBlueMask
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+
+ itemsModel: colorMaskModel
+ scope: "PrincipledMaterial"
+ zeroFlag: "NoMask"
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Mask A")
+ tooltip: qsTr("Sets the properties masked by the vertex color alpha channel.")
+ }
+
+ SecondColumnLayout {
+ FlagsComboBox {
+ backendValue: backendValues.vertexColorAlphaMask
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+
+ itemsModel: colorMaskModel
+ scope: "PrincipledMaterial"
+ zeroFlag: "NoMask"
+ }
+
+ ExpandingSpacer {}
+ }
+ }
+ }
+
+ Section {
+ caption: qsTr("Advanced")
+ width: parent.width
+
+ SectionLayout {
+ PropertyLabel {
text: qsTr("Point Size")
tooltip: qsTr("Sets the size of the points rendered, when the geometry is using a primitive type of points.")
}
@@ -993,16 +1406,35 @@ Column {
}
PropertyLabel {
- text: qsTr("Reflection Map")
- tooltip: qsTr("Sets a texture used for specular highlights on the material.")
+ text: qsTr("Use Single Channel")
+ tooltip: qsTr("Use only a single channel from specularMap.")
}
SecondColumnLayout {
- ItemFilterComboBox {
- typeFilter: "QtQuick3D.Texture"
- backendValue: backendValues.specularReflectionMap
+ CheckBox {
+ id: specularSingleChannelCheckBox
+ text: backendValues.specularSingleChannelEnabled.valueToString
+ backendValue: backendValues.specularSingleChannelEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Channel")
+ tooltip: qsTr("Sets the texture channel used to read the specular value from specularMap.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ enabled: specularSingleChannelCheckBox.checked
+ scope: "Material"
+ model: ["R", "G", "B", "A"]
+ backendValue: backendValues.specularChannel
implicitWidth: StudioTheme.Values.singleControlColumnWidth
- + StudioTheme.Values.actionIndicatorWidth
+ + StudioTheme.Values.actionIndicatorWidth
}
ExpandingSpacer {}
@@ -1027,6 +1459,22 @@ Column {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Reflection Map")
+ tooltip: qsTr("Sets a texture used for specular highlights on the material.")
+ }
+
+ SecondColumnLayout {
+ ItemFilterComboBox {
+ typeFilter: "QtQuick3D.Texture"
+ backendValue: backendValues.specularReflectionMap
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/ShadowSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/ShadowSection.qml
index 96c01c13724..11d74289872 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/ShadowSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/ShadowSection.qml
@@ -119,6 +119,48 @@ Section {
PropertyLabel {
visible: shadowCheckBox.checked
+ text: qsTr("Soft Shadow Quality")
+ tooltip: qsTr("Sets the quality of the soft shadows.")
+ }
+
+ SecondColumnLayout {
+ visible: shadowCheckBox.checked
+ ComboBox {
+ scope: "Light"
+ model: ["Hard", "PCF4", "PCF8", "PCF16", "PCF32", "PCF64"]
+ backendValue: backendValues.softShadowQuality
+ enabled: shadowCheckBox.backendValue.value === true
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ visible: shadowCheckBox.checked
+ text: qsTr("PCF Factor")
+ tooltip: qsTr("Sets the PCF (percentage-closer filtering) factor.")
+ }
+
+ SecondColumnLayout {
+ visible: shadowCheckBox.checked
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 9999999
+ decimals: 1
+ stepSize: 0.1
+ backendValue: backendValues.pcfFactor
+ enabled: shadowCheckBox.backendValue.value === true
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ visible: shadowCheckBox.checked
text: qsTr("Far Distance")
tooltip: qsTr("Sets the maximum distance for the shadow map.")
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/SpecularGlossyMaterialSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/SpecularGlossyMaterialSection.qml
index 17ef2c272af..04e7216932f 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/SpecularGlossyMaterialSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/SpecularGlossyMaterialSection.qml
@@ -122,6 +122,41 @@ Column {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Use Single Channel")
+ tooltip: qsTr("Use only a single channel from albedoMap.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ id: albedoSingleChannelCheckBox
+ text: backendValues.albedoSingleChannelEnabled.valueToString
+ backendValue: backendValues.albedoSingleChannelEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Channel")
+ tooltip: qsTr("Sets the texture channel used to read the albedo value from albedoMap.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ enabled: albedoSingleChannelCheckBox.checked
+ scope: "Material"
+ model: ["R", "G", "B", "A"]
+ backendValue: backendValues.albedoChannel
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
@@ -155,6 +190,41 @@ Column {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Use Single Channel")
+ tooltip: qsTr("Use only a single channel from specularMap.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ id: specularSingleChannelCheckBox
+ text: backendValues.specularSingleChannelEnabled.valueToString
+ backendValue: backendValues.specularSingleChannelEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Channel")
+ tooltip: qsTr("Sets the texture channel used to read the specular value from specularMap.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ enabled: specularSingleChannelCheckBox.checked
+ scope: "Material"
+ model: ["R", "G", "B", "A"]
+ backendValue: backendValues.specularChannel
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
@@ -378,6 +448,22 @@ Column {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Invert Channel")
+ tooltip: qsTr("Invert the values of the opacity map.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.invertOpacityMapValue.valueToString
+ backendValue: backendValues.invertOpacityMapValue
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
@@ -476,6 +562,41 @@ Column {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Use Single Channel")
+ tooltip: qsTr("Use only a single channel from emissiveMap.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ id: emissiveSingleChannelCheckBox
+ text: backendValues.emissiveSingleChannelEnabled.valueToString
+ backendValue: backendValues.emissiveSingleChannelEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Channel")
+ tooltip: qsTr("Sets the texture channel used to read the emissive value from emissiveMap.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ enabled: emissiveSingleChannelCheckBox.checked
+ scope: "Material"
+ model: ["R", "G", "B", "A"]
+ backendValue: backendValues.emissiveChannel
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
@@ -704,6 +825,102 @@ Column {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Normal Strength")
+ tooltip: qsTr("Sets the normal strength of the clearcoat layer.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 1
+ decimals: 2
+ stepSize: 0.1
+ sliderIndicatorVisible: true
+ backendValue: backendValues.clearcoatNormalStrength
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Fresnel Power")
+ tooltip: qsTr("Sets the fresnel power.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 1000
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.clearcoatFresnelPower
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Enable scale and bias")
+ tooltip: qsTr("Sets whether fresnel scale and bias are enabled.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.clearcoatFresnelScaleBiasEnabled.valueToString
+ backendValue: backendValues.clearcoatFresnelScaleBiasEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Fresnel Scale")
+ tooltip: qsTr("Sets the fresnel scale.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 5
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.clearcoatFresnelScale
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Fresnel Bias")
+ tooltip: qsTr("Sets the fresnel bias.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: -1
+ maximumValue: 1
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.clearcoatFresnelBias
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}
@@ -848,18 +1065,101 @@ Column {
}
Section {
- caption: qsTr("Advanced")
+ caption: qsTr("Fresnel")
+ width: parent.width
+
+ SectionLayout {
+ PropertyLabel {
+ text: qsTr("Fresnel Power")
+ tooltip: qsTr("Sets the fresnel power.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 1000
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.fresnelPower
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Enable scale and bias")
+ tooltip: qsTr("Sets whether fresnel scale and bias are enabled.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.fresnelScaleBiasEnabled.valueToString
+ backendValue: backendValues.fresnelScaleBiasEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Fresnel Scale")
+ tooltip: qsTr("Sets the fresnel scale.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 5
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.fresnelScale
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Fresnel Bias")
+ tooltip: qsTr("Sets the fresnel bias.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: -1
+ maximumValue: 1
+ stepSize: 0.1
+ decimals: 2
+
+ backendValue: backendValues.fresnelBias
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+ }
+ }
+
+ Section {
+ caption: qsTr("Vertex Color")
width: parent.width
SectionLayout {
PropertyLabel {
- text: qsTr("Vertex Colors")
+ text: qsTr("Show Colors")
tooltip: qsTr("Sets whether vertex colors are used to modulate the base color.")
}
SecondColumnLayout {
CheckBox {
- text: backendValues.vertexColorsEnabled ? qsTr("Enabled") : qsTr("Disabled")
+ text: backendValues.vertexColorsEnabled.valueToString
backendValue: backendValues.vertexColorsEnabled
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
@@ -869,6 +1169,147 @@ Column {
}
PropertyLabel {
+ text: qsTr("Enable Masks")
+ tooltip: qsTr("Sets whether vertex colors mask are used.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ text: backendValues.vertexColorsMaskEnabled.valueToString
+ backendValue: backendValues.vertexColorsMaskEnabled
+ implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ ListModel {
+ id: colorMaskModel
+
+ ListElement {
+ name: qsTr("Glossiness")
+ flag: "GlossinessMask"
+ }
+ ListElement {
+ name: qsTr("Normal Strength")
+ flag: "NormalStrengthMask"
+ }
+ ListElement {
+ name: qsTr("Clearcoat Amount")
+ flag: "ClearcoatAmountMask"
+ }
+ ListElement {
+ name: qsTr("Clearcoat Roughness Amount")
+ flag: "ClearcoatRoughnessAmountMask"
+ }
+ ListElement {
+ name: qsTr("Clearcoat Normal Strength")
+ flag: "ClearcoatNormalStrengthMask"
+ }
+ ListElement {
+ name: qsTr("Height Amount")
+ flag: "HeightAmountMask"
+ }
+ ListElement {
+ name: qsTr("Occlusion Amount")
+ flag: "OcclusionAmountMask"
+ }
+ ListElement {
+ name: qsTr("Thickness Factor")
+ flag: "ThicknessFactorMask"
+ }
+ ListElement {
+ name: qsTr("Transmission Factor")
+ flag: "TransmissionFactorMask"
+ }
+ }
+
+ PropertyLabel {
+ text: qsTr("Mask R")
+ tooltip: qsTr("Sets the properties masked by the vertex color red channel.")
+ }
+
+ SecondColumnLayout {
+ FlagsComboBox {
+ backendValue: backendValues.vertexColorRedMask
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+
+ itemsModel: colorMaskModel
+ scope: "SpecularGlossyMaterial"
+ zeroFlag: "NoMask"
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Mask G")
+ tooltip: qsTr("Sets the properties masked by the vertex color green channel.")
+ }
+
+ SecondColumnLayout {
+ FlagsComboBox {
+ backendValue: backendValues.vertexColorGreenMask
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+
+ itemsModel: colorMaskModel
+ scope: "SpecularGlossyMaterial"
+ zeroFlag: "NoMask"
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Mask B")
+ tooltip: qsTr("Sets the properties masked by the vertex color blue channel.")
+ }
+
+ SecondColumnLayout {
+ FlagsComboBox {
+ backendValue: backendValues.vertexColorBlueMask
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+
+ itemsModel: colorMaskModel
+ scope: "SpecularGlossyMaterial"
+ zeroFlag: "NoMask"
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Mask A")
+ tooltip: qsTr("Sets the properties masked by the vertex color alpha channel.")
+ }
+
+ SecondColumnLayout {
+ FlagsComboBox {
+ backendValue: backendValues.vertexColorAlphaMask
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+
+ itemsModel: colorMaskModel
+ scope: "SpecularGlossyMaterial"
+ zeroFlag: "NoMask"
+ }
+
+ ExpandingSpacer {}
+ }
+ }
+ }
+
+ Section {
+ caption: qsTr("Advanced")
+ width: parent.width
+
+ SectionLayout {
+
+ PropertyLabel {
text: qsTr("Point Size")
tooltip: qsTr("Sets the size of the points rendered, when the geometry is using a primitive type of points.")
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/TextureSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/TextureSection.qml
index 9ae63653bb6..673da3cb92f 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/TextureSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/TextureSection.qml
@@ -105,7 +105,7 @@ Section {
SecondColumnLayout {
CheckBox {
id: flipVcheckBox
- text: backendValues.flipV ? backendValues.flipV.valueToString : ""
+ text: backendValues.flipV.valueToString
backendValue: backendValues.flipV
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
@@ -122,7 +122,7 @@ Section {
SecondColumnLayout {
CheckBox {
id: flipUCheckBox
- text: backendValues.flipU ? backendValues.flipU.valueToString : ""
+ text: backendValues.flipU.valueToString
backendValue: backendValues.flipU
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
@@ -139,7 +139,7 @@ Section {
SecondColumnLayout {
CheckBox {
id: autoOrientationCheckBox
- text: backendValues.autoOrientation ? backendValues.autoOrientation.valueToString : ""
+ text: backendValues.autoOrientation.valueToString
backendValue: backendValues.autoOrientation
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
@@ -198,6 +198,23 @@ Section {
}
PropertyLabel {
+ text: qsTr("Depth Tiling")
+ tooltip: qsTr("Sets how the texture is mapped when the Z scaling value is greater than 1.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ scope: "Texture"
+ model: ["ClampToEdge", "MirroredRepeat", "Repeat"]
+ backendValue: backendValues.tilingModeDepth
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
text: qsTr("UV Index")
tooltip: qsTr("Sets the UV coordinate index used by this texture.")
}
@@ -329,7 +346,7 @@ Section {
SecondColumnLayout {
CheckBox {
id: generateMipmapscheckBox
- text: backendValues.generateMipmaps ? backendValues.generateMipmaps.valueToString : ""
+ text: backendValues.generateMipmaps.valueToString
backendValue: backendValues.generateMipmaps
implicitWidth: StudioTheme.Values.twoControlColumnWidth
+ StudioTheme.Values.actionIndicatorWidth
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/View3DSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/View3DSection.qml
index bdd9a012706..1cc70c2c13e 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/View3DSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick3D/View3DSection.qml
@@ -75,5 +75,41 @@ Section {
ExpandingSpacer {}
}
+
+ PropertyLabel {
+ text: qsTr("Texture Width")
+ tooltip: qsTr("Sets the explicit width of the backing texture in pixels.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 999999
+ decimals: 0
+ backendValue: backendValues.explicitTextureWidth
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
+
+ PropertyLabel {
+ text: qsTr("Texture Height")
+ tooltip: qsTr("Sets the explicit height of the backing texture in pixels.")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ minimumValue: 0
+ maximumValue: 999999
+ decimals: 0
+ backendValue: backendValues.explicitTextureHeight
+ implicitWidth: StudioTheme.Values.singleControlColumnWidth
+ + StudioTheme.Values.actionIndicatorWidth
+ }
+
+ ExpandingSpacer {}
+ }
}
}