mirror of https://github.com/qt/qtdoc.git
1492 lines
45 KiB
QML
1492 lines
45 KiB
QML
// Copyright (C) 2023 The Qt Company Ltd.
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
|
|
|
|
import QtQuick
|
|
import QtQuick.Controls
|
|
import QtQuick3D
|
|
import QtQuick3D.Effects
|
|
import PocketDemo
|
|
import ComponentBundles.MaterialBundle
|
|
import "Figma_Assets"
|
|
import "Pocket_Demo_SkylightUI"
|
|
|
|
Rectangle {
|
|
id: rectangle1
|
|
width: Constants.width
|
|
height: Constants.height
|
|
color: "#000000"
|
|
border.width: 0
|
|
layer.format: ShaderEffectSource.RGB
|
|
property bool settingsopen: true
|
|
property string oldstate: "state_type_Materials"
|
|
property Material matChoice: silver
|
|
property string matselText: material_pop_up.matSelection
|
|
|
|
View3D {
|
|
id: view3D
|
|
anchors.left: parent.left
|
|
anchors.right: parent.right
|
|
anchors.top: parent.top
|
|
anchors.bottom: parent.bottom
|
|
camera: sceneCamera
|
|
anchors.leftMargin: 636 * menutransition_open.phase
|
|
layer.format: ShaderEffectSource.RGB
|
|
|
|
environment: layout.dotBtns.sceneState
|
|
=== 2 ? colorful : (layout.dotBtns.sceneState === 1 ? studio : bright)
|
|
|
|
Node {
|
|
id: scene
|
|
|
|
Node {
|
|
id: lightGroups
|
|
|
|
Node {
|
|
id: brightLights
|
|
visible: layout.dotBtns.sceneState === 0
|
|
DirectionalLight {
|
|
visible: true
|
|
shadowBias: 0.02
|
|
shadowMapQuality: Light.ShadowMapQualityHigh
|
|
shadowFilter: 5
|
|
shadowMapFar: 5000
|
|
shadowFactor: 100
|
|
eulerRotation.y: 0.20483
|
|
brightness: 0.5
|
|
castsShadow: true
|
|
eulerRotation.x: -40.00001
|
|
eulerRotation.z: 89.99592
|
|
}
|
|
|
|
DirectionalLight {
|
|
x: -6
|
|
y: -6
|
|
z: -6
|
|
shadowBias: 0.02
|
|
shadowFilter: 5
|
|
shadowMapFar: 5000
|
|
eulerRotation.y: 178.69228
|
|
brightness: 0.5
|
|
castsShadow: true
|
|
shadowFactor: 100
|
|
eulerRotation.x: -19.04617
|
|
eulerRotation.z: 89.4164
|
|
shadowMapQuality: Light.ShadowMapQualityHigh
|
|
}
|
|
}
|
|
|
|
Node {
|
|
id: colorfulLights
|
|
visible: layout.dotBtns.sceneState === 2
|
|
DirectionalLight {
|
|
shadowMapFar: 5000
|
|
shadowBias: 0.02
|
|
shadowMapQuality: Light.ShadowMapQualityHigh
|
|
eulerRotation.y: 25.32839
|
|
brightness: 0.5
|
|
castsShadow: true
|
|
shadowFactor: 100
|
|
eulerRotation.x: -40.00002
|
|
eulerRotation.z: 89.99591
|
|
}
|
|
}
|
|
}
|
|
|
|
FloorComponent {
|
|
id: floor
|
|
receivesReflections: true
|
|
aoState: material_pop_up.modelsL.selection
|
|
=== "None" ? 3 : (material_pop_up.modelsL.selection
|
|
=== "Dragon" ? 1 : (material_pop_up.modelsL.selection
|
|
=== "Rabbit" ? 2 : 0))
|
|
scale.x: 150
|
|
scale.y: 150
|
|
scale.z: 150
|
|
source: "file:content/Meshes/floor.mesh"
|
|
eulerRotation.z: 0
|
|
eulerRotation.y: 0
|
|
eulerRotation.x: 0
|
|
visible: true
|
|
y: 4
|
|
}
|
|
|
|
Model {
|
|
id: studioFloor
|
|
y: -1
|
|
visible: layout.dotBtns.sceneState === 1
|
|
opacity: 1
|
|
source: "#Rectangle"
|
|
eulerRotation.z: 0
|
|
eulerRotation.x: -90
|
|
materials: [floorMat]
|
|
eulerRotation.y: 0
|
|
scale.y: 35
|
|
scale.z: 35
|
|
|
|
Model {
|
|
id: areaLight
|
|
source: "#Rectangle"
|
|
materials: [lightMaterial]
|
|
eulerRotation.z: 0
|
|
eulerRotation.y: 0
|
|
scale.y: 0.05
|
|
scale.x: 0.25
|
|
eulerRotation.x: 180
|
|
z: 20
|
|
}
|
|
|
|
Model {
|
|
id: pillar
|
|
source: "#Cube"
|
|
materials: [asphalt]
|
|
x: 0
|
|
y: 38
|
|
receivesReflections: true
|
|
scale.z: 0.2
|
|
z: 10.02753
|
|
scale.y: 0.05
|
|
scale.x: 0.05
|
|
}
|
|
|
|
Model {
|
|
id: pillar1
|
|
source: "#Cube"
|
|
materials: [asphalt]
|
|
x: 38
|
|
y: 0
|
|
receivesReflections: true
|
|
z: 9.57775
|
|
scale.z: 0.2
|
|
scale.y: 0.05
|
|
scale.x: 0.05
|
|
}
|
|
|
|
Model {
|
|
id: pillar2
|
|
source: "#Cube"
|
|
materials: [asphalt]
|
|
x: -38
|
|
y: 0
|
|
z: 10.03454
|
|
receivesReflections: true
|
|
scale.z: 0.2
|
|
scale.y: 0.05
|
|
scale.x: 0.05
|
|
}
|
|
|
|
Model {
|
|
id: pillar3
|
|
source: "#Cube"
|
|
materials: [asphalt]
|
|
x: 0
|
|
y: -38
|
|
z: 9.60788
|
|
receivesReflections: true
|
|
scale.z: 0.2
|
|
scale.y: 0.05
|
|
scale.x: 0.05
|
|
}
|
|
|
|
Node {
|
|
id: groupLights
|
|
|
|
Model {
|
|
id: areaLight1
|
|
x: 0
|
|
y: 35
|
|
source: "#Rectangle"
|
|
eulerRotation.z: 0
|
|
materials: [lightMaterial]
|
|
eulerRotation.y: 0
|
|
z: 20
|
|
scale.x: 0.7
|
|
eulerRotation.x: 90
|
|
scale.y: 0.01
|
|
}
|
|
|
|
Model {
|
|
id: areaLight2
|
|
x: 35
|
|
y: 0
|
|
source: "#Rectangle"
|
|
eulerRotation.z: 90
|
|
materials: [lightMaterial]
|
|
eulerRotation.y: -90
|
|
z: 20
|
|
scale.x: 0.7
|
|
eulerRotation.x: 0
|
|
scale.y: 0.01
|
|
}
|
|
|
|
Model {
|
|
id: areaLight3
|
|
x: 0
|
|
y: -35
|
|
source: "#Rectangle"
|
|
eulerRotation.z: 0
|
|
materials: [lightMaterial]
|
|
eulerRotation.y: 0
|
|
z: 20
|
|
scale.x: 0.7
|
|
eulerRotation.x: -90
|
|
scale.y: 0.01
|
|
}
|
|
|
|
Model {
|
|
id: areaLight4
|
|
x: -35
|
|
y: 0
|
|
source: "#Rectangle"
|
|
eulerRotation.z: 90
|
|
materials: [lightMaterial]
|
|
eulerRotation.y: 90
|
|
z: 20
|
|
scale.x: 0.7
|
|
eulerRotation.x: 0
|
|
scale.y: 0.01
|
|
}
|
|
}
|
|
|
|
ReflectionProbe {
|
|
id: reflectionProbe
|
|
x: 0
|
|
y: 0
|
|
boxOffset.y: 990
|
|
debugView: false
|
|
z: 0
|
|
boxSize.z: 3000
|
|
timeSlicing: ReflectionProbe.None
|
|
clearColor: "#000000"
|
|
boxSize.x: 3000
|
|
refreshMode: ReflectionProbe.EveryFrame
|
|
parallaxCorrection: true
|
|
quality: ReflectionProbe.Low
|
|
boxSize.y: 2000
|
|
}
|
|
scale.x: 35
|
|
receivesReflections: true
|
|
}
|
|
|
|
Node {
|
|
id: cameraRoot
|
|
eulerRotation.z: 0
|
|
eulerRotation.y: 35.26906
|
|
eulerRotation.x: -24.99024
|
|
|
|
PerspectiveCamera {
|
|
id: sceneCamera
|
|
x: -0
|
|
y: 95.285
|
|
z: 530.90942
|
|
}
|
|
}
|
|
|
|
Node {
|
|
id: effects
|
|
|
|
HeatwaveEffect {
|
|
id: heatwave
|
|
visible: material_pop_up.effectsL.selection === "Heatwave"
|
|
}
|
|
|
|
RainEffect {
|
|
id: rain
|
|
sceneCamera: sceneCamera
|
|
visible: material_pop_up.effectsL.selection === "Rain"
|
|
}
|
|
|
|
SmokeEffect {
|
|
id: smoke
|
|
visible: material_pop_up.effectsL.selection === "Smoke"
|
|
}
|
|
|
|
SteamEffect {
|
|
id: steam
|
|
y: 100
|
|
visible: material_pop_up.effectsL.selection === "Steam"
|
|
z: 100
|
|
}
|
|
|
|
SnowEffect {
|
|
id: snow
|
|
visible: material_pop_up.effectsL.selection === "Snow"
|
|
}
|
|
|
|
FireEffect {
|
|
id: fire
|
|
sceneCamera: sceneCamera
|
|
visible: material_pop_up.effectsL.selection === "Flames"
|
|
}
|
|
|
|
Node {
|
|
id: group
|
|
eulerRotation.y: sparkrotation.phase
|
|
|
|
SparksEffect {
|
|
id: sparks
|
|
visible: material_pop_up.effectsL.selection === "Sparks"
|
|
y: 100
|
|
z: 250
|
|
}
|
|
}
|
|
|
|
ShockwaveEffect {
|
|
id: shockwave
|
|
visible: material_pop_up.effectsL.selection === "Shockwave"
|
|
}
|
|
|
|
DustEffect {
|
|
id: dust
|
|
sceneCamera: sceneCamera
|
|
visible: material_pop_up.effectsL.selection === "Dust"
|
|
}
|
|
|
|
FlashEffect {
|
|
id: flash
|
|
visible: material_pop_up.effectsL.selection === "Flash"
|
|
}
|
|
|
|
ExplosionEffect {
|
|
id: explosion
|
|
visible: material_pop_up.effectsL.selection === "Explosion"
|
|
}
|
|
|
|
BubblesEffect {
|
|
id: bubbles
|
|
sceneCamera: sceneCamera
|
|
x: 0
|
|
y: 125.976
|
|
visible: material_pop_up.effectsL.selection === "Bubbles"
|
|
z: 62.12978
|
|
}
|
|
|
|
CloudEffect {
|
|
id: cloud
|
|
sceneCamera: sceneCamera
|
|
y: 100
|
|
visible: material_pop_up.effectsL.selection === "Clouds"
|
|
time: 10000
|
|
startTime: 0
|
|
}
|
|
}
|
|
|
|
Model {
|
|
id: sphere
|
|
visible: false
|
|
materials: [skyboxMaterial]
|
|
source: "#Sphere"
|
|
receivesShadows: false
|
|
castsShadows: false
|
|
scale.z: 100
|
|
scale.y: 100
|
|
scale.x: 100
|
|
}
|
|
|
|
Model {
|
|
id: dragon1
|
|
x: 1
|
|
y: -9
|
|
visible: false
|
|
source: "file:content/Meshes/stanford_Dragon.mesh"
|
|
depthBias: 0
|
|
eulerRotation.x: -90
|
|
receivesReflections: true
|
|
z: 1
|
|
scale.y: 200
|
|
scale.x: 200
|
|
castsReflections: false
|
|
materials: [bubbleMat1]
|
|
scale.z: 200
|
|
}
|
|
|
|
Node {
|
|
id: models
|
|
visible: true
|
|
|
|
Model {
|
|
id: materialBall
|
|
y: 4
|
|
|
|
visible: material_pop_up.modelsL.selection === "Qt material ball"
|
|
source: "file:content/Meshes/materialBall.mesh"
|
|
castsReflections: false
|
|
receivesReflections: true
|
|
scale.z: 150
|
|
scale.y: 150
|
|
scale.x: 150
|
|
materials: [rectangle1.matChoice]
|
|
}
|
|
|
|
Model {
|
|
id: bunny
|
|
x: 50
|
|
y: -75
|
|
visible: material_pop_up.modelsL.selection === "Rabbit"
|
|
source: "file:content/Meshes/bunnyUV.mesh"
|
|
castsReflections: false
|
|
z: -50
|
|
eulerRotation.x: -90
|
|
receivesReflections: true
|
|
scale.z: 2000
|
|
scale.y: 2000
|
|
scale.x: 2000
|
|
materials: [rectangle1.matChoice]
|
|
}
|
|
|
|
Model {
|
|
id: dragon
|
|
y: -10
|
|
visible: material_pop_up.modelsL.selection === "Dragon"
|
|
source: "file:content/Meshes/stanford_Dragon.mesh"
|
|
eulerRotation.x: -90
|
|
castsReflections: false
|
|
receivesReflections: true
|
|
depthBias: 0
|
|
scale.z: 200
|
|
scale.y: 200
|
|
materials: [rectangle1.matChoice]
|
|
scale.x: 200
|
|
}
|
|
}
|
|
}
|
|
|
|
Node {
|
|
id: environments
|
|
|
|
View3D {
|
|
id: darkLoader
|
|
width: 0
|
|
height: 0
|
|
environment: dark
|
|
SceneEnvironment {
|
|
id: dark
|
|
//effects: [hDRBloomTonemap]
|
|
specularAAEnabled: true
|
|
tonemapMode: SceneEnvironment.TonemapModeLinear
|
|
probeExposure: 1
|
|
probeHorizon: 1
|
|
clearColor: "#000000"
|
|
antialiasingQuality: SceneEnvironment.VeryHigh
|
|
temporalAAEnabled: false
|
|
depthTestEnabled: true
|
|
backgroundMode: SceneEnvironment.Color
|
|
antialiasingMode: SceneEnvironment.MSAA
|
|
depthPrePassEnabled: false
|
|
}
|
|
}
|
|
|
|
View3D {
|
|
id: brightLoader
|
|
x: -8
|
|
y: -8
|
|
width: 400
|
|
height: 400
|
|
environment: bright
|
|
SceneEnvironment {
|
|
id: bright
|
|
fog: fog
|
|
tonemapMode: SceneEnvironment.TonemapModeLinear
|
|
skyboxBlurAmount: 0
|
|
probeHorizon: 0.5
|
|
clearColor: "#000000"
|
|
specularAAEnabled: true
|
|
backgroundMode: SceneEnvironment.SkyBox
|
|
lightProbe: dreamstime_xl_182890747
|
|
antialiasingQuality: SceneEnvironment.High
|
|
antialiasingMode: SceneEnvironment.MSAA
|
|
|
|
Texture {
|
|
id: dreamstime_xl_182890747
|
|
source: "file:content/images/HDR/dreamstime_xl_182890747.png"
|
|
}
|
|
|
|
Fog {
|
|
id: fog
|
|
color: "#608080"
|
|
transmitCurve: 10
|
|
transmitEnabled: false
|
|
heightEnabled: false
|
|
depthFar: 1000
|
|
depthNear: 0
|
|
density: 0
|
|
depthEnabled: true
|
|
enabled: false
|
|
}
|
|
}
|
|
}
|
|
|
|
View3D {
|
|
id: colorLoader
|
|
x: -14
|
|
y: -14
|
|
width: 400
|
|
height: 400
|
|
environment: colorful
|
|
SceneEnvironment {
|
|
id: colorful
|
|
fog: fog
|
|
tonemapMode: SceneEnvironment.TonemapModeLinear
|
|
probeHorizon: 0.5
|
|
clearColor: "#000000"
|
|
backgroundMode: SceneEnvironment.SkyBox
|
|
specularAAEnabled: true
|
|
lightProbe: dreamstime_xl_119184006
|
|
antialiasingQuality: SceneEnvironment.High
|
|
antialiasingMode: SceneEnvironment.MSAA
|
|
|
|
Texture {
|
|
id: dreamstime_xl_119184006
|
|
source: "file:content/images/HDR/dreamstime_xl_119184006.png"
|
|
}
|
|
}
|
|
}
|
|
|
|
View3D {
|
|
id: studioLoader
|
|
width: 400
|
|
height: 400
|
|
|
|
SceneEnvironment {
|
|
id: studio
|
|
fog: fog
|
|
specularAAEnabled: true
|
|
tonemapMode: SceneEnvironment.TonemapModeLinear
|
|
probeExposure: 1
|
|
probeHorizon: 1
|
|
effects: [hDRBloomTonemap9, colorMaster]
|
|
clearColor: "#000000"
|
|
antialiasingQuality: SceneEnvironment.VeryHigh
|
|
temporalAAEnabled: false
|
|
depthTestEnabled: true
|
|
HDRBloomTonemap {
|
|
id: hDRBloomTonemap9
|
|
blurFalloff: 1
|
|
channelThreshold: 1
|
|
bloomThreshold: 0
|
|
exposure: 0
|
|
gamma: 1
|
|
tonemappingLerp: 0
|
|
}
|
|
|
|
ColorMaster {
|
|
id: colorMaster
|
|
greenStrength: 1
|
|
}
|
|
backgroundMode: SceneEnvironment.Color
|
|
antialiasingMode: SceneEnvironment.MSAA
|
|
depthPrePassEnabled: false
|
|
}
|
|
}
|
|
}
|
|
|
|
DebugBox {
|
|
id: debugView
|
|
x: 1615
|
|
y: 840
|
|
color: "#99000000"
|
|
|
|
//scale: 1
|
|
radius: 8
|
|
width: 250
|
|
|
|
anchors.right: parent.right
|
|
anchors.bottom: parent.bottom
|
|
sView: view3D
|
|
fpsSize: 24
|
|
secondaryinfoSize: 18
|
|
visible: layoutFull.debugOn
|
|
anchors.bottomMargin: 121
|
|
anchors.rightMargin: 27
|
|
}
|
|
}
|
|
|
|
MouseRotatorAndWASD {
|
|
id: mouseRotatorAndWASD
|
|
controlledObject: cameraRoot
|
|
anchors.top: parent.top
|
|
anchors.fill: parent
|
|
anchors.leftMargin: 636 * menutransition_open.phase
|
|
anchors.topMargin: 0
|
|
}
|
|
|
|
MouseArea {
|
|
id: mouseArea
|
|
anchors.fill: parent
|
|
preventStealing: false
|
|
cursorShape: Qt.SizeAllCursor
|
|
anchors.leftMargin: 636 * menutransition_open.phase
|
|
drag.axis: Drag.YAxis
|
|
|
|
Connections {
|
|
target: mouseArea
|
|
|
|
function onWheel(wheel) {
|
|
sceneCamera.fieldOfView += wheel.angleDelta.y * 0.04
|
|
* (sceneCamera.fieldOfView + wheel.angleDelta.y * 0.04 > 0.0)
|
|
* (sceneCamera.fieldOfView + wheel.angleDelta.y * 0.04 < 60.0)
|
|
}
|
|
}
|
|
|
|
PinchArea {
|
|
id: pinchArea
|
|
anchors.fill: parent
|
|
|
|
Connections {
|
|
target: pinchArea
|
|
function onPinchUpdated(pinch) {
|
|
if (pinch.previousScale - pinch.scale > 0.008
|
|
|| pinch.previousScale - pinch.scale < -1 * 0.008) {
|
|
let velocity = (pinch.previousScale - pinch.scale) > 0 ? 1.25 : -1.25
|
|
sceneCamera.fieldOfView += velocity
|
|
* (sceneCamera.fieldOfView + velocity > 0.0)
|
|
* (sceneCamera.fieldOfView + velocity < 60.0)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
Rectangle {
|
|
id: rectangle
|
|
width: 904
|
|
height: 80
|
|
visible: false
|
|
color: "#ffffff"
|
|
anchors.top: parent.top
|
|
anchors.topMargin: 0
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
RoundButton {
|
|
id: rainBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Rain"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
anchors.leftMargin: 8
|
|
anchors.topMargin: 8
|
|
checkable: true
|
|
highlighted: true
|
|
}
|
|
|
|
RoundButton {
|
|
id: snowBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Snow"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
highlighted: true
|
|
checkable: true
|
|
anchors.topMargin: 8
|
|
anchors.leftMargin: 136
|
|
}
|
|
|
|
RoundButton {
|
|
id: smokeBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Smoke"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
checked: true
|
|
highlighted: true
|
|
checkable: true
|
|
anchors.topMargin: 8
|
|
anchors.leftMargin: 264
|
|
}
|
|
|
|
RoundButton {
|
|
id: heatwaveBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Heatwave"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
highlighted: true
|
|
checkable: true
|
|
anchors.topMargin: 8
|
|
anchors.leftMargin: 392
|
|
}
|
|
|
|
RoundButton {
|
|
id: fireBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Fire"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
highlighted: true
|
|
anchors.topMargin: 8
|
|
anchors.leftMargin: 520
|
|
checkable: true
|
|
}
|
|
|
|
RoundButton {
|
|
id: sparkBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Sparks"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
highlighted: true
|
|
anchors.topMargin: 8
|
|
anchors.leftMargin: 648
|
|
checkable: true
|
|
}
|
|
|
|
RoundButton {
|
|
id: dustBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Dust"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
highlighted: true
|
|
anchors.topMargin: 8
|
|
anchors.leftMargin: 776
|
|
checkable: true
|
|
}
|
|
}
|
|
|
|
Item {
|
|
id: __materialLibrary__
|
|
DefaultMaterial {
|
|
id: principledMaterial
|
|
opacity: 0.5
|
|
cullMode: Material.NoCulling
|
|
vertexColorsEnabled: true
|
|
objectName: "Default Material"
|
|
diffuseColor: "#ffffff"
|
|
}
|
|
|
|
CustomMaterial {
|
|
id: skyboxMaterial
|
|
property TextureInput skyboxTexture: skyboxTex
|
|
property color fogColor: fog.color
|
|
property real fogAmount: fog.density
|
|
|
|
cullMode: Material.FrontFaceCulling
|
|
vertexShader: "shaders/sky.vert"
|
|
fragmentShader: "shaders/sky.frag"
|
|
objectName: "Skybox Material"
|
|
|
|
TextureInput {
|
|
id: skyboxTex
|
|
texture: view3D.environment.lightProbe
|
|
enabled: true
|
|
}
|
|
}
|
|
|
|
GoldMaterial {
|
|
id: gold
|
|
objectName: "Gold"
|
|
}
|
|
|
|
AsphaltMaterial {
|
|
id: asphalt
|
|
objectName: "Asphalt"
|
|
}
|
|
|
|
PrincipledMaterial {
|
|
id: silver
|
|
cullMode: Material.NoCulling
|
|
specularAmount: 1
|
|
baseColor: "#fefefd"
|
|
objectName: "Silver"
|
|
metalness: 1
|
|
roughness: 0.05
|
|
clearcoatAmount: 0
|
|
}
|
|
|
|
PrincipledMaterial {
|
|
id: steelBrushed
|
|
normalMap: metal009_2K_NormalGL
|
|
cullMode: Material.NoCulling
|
|
baseColor: "#d9d7d2"
|
|
clearcoatAmount: 0
|
|
roughness: 1
|
|
objectName: "Brushed Steel"
|
|
metalness: 1
|
|
specularAmount: 1
|
|
roughnessMap: metal009_2K_Roughness
|
|
|
|
Texture {
|
|
id: metal009_2K_NormalGL
|
|
source: "file:content/images/Metal009_2K_NormalGL.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: metal009_2K_Roughness
|
|
source: "file:content/images/Metal009_2K_Roughness.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
}
|
|
|
|
PrincipledMaterial {
|
|
id: copper
|
|
cullMode: Material.NoCulling
|
|
baseColor: "#ffbd7f"
|
|
objectName: "Copper"
|
|
metalness: 1
|
|
roughness: 0.15
|
|
clearcoatAmount: 0
|
|
}
|
|
|
|
PrincipledMaterial {
|
|
id: wood
|
|
normalMap: wood048_2K_NormalGL
|
|
roughnessMap: wood048_2K_Roughness
|
|
baseColorMap: wood048_2K_Color
|
|
cullMode: Material.NoCulling
|
|
transmissionFactor: 0
|
|
roughnessChannel: Material.B
|
|
metalness: 0
|
|
specularAmount: 1
|
|
roughness: 1
|
|
clearcoatAmount: 0
|
|
objectName: "Wood"
|
|
baseColor: "#ffffff"
|
|
|
|
Texture {
|
|
id: wood048_2K_Color
|
|
source: "file:content/images/woodtextures/Wood048_2K-PNG/Wood048_2K_Color.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: wood048_2K_Roughness
|
|
source: "file:content/images/woodtextures/Wood048_2K-PNG/Wood048_2K_Roughness.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: wood048_2K_NormalGL
|
|
source: "file:content/images/woodtextures/Wood048_2K-PNG/Wood048_2K_NormalGL.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
}
|
|
|
|
PrincipledMaterial {
|
|
id: stone
|
|
roughnessMap: rock023_2K_Roughness
|
|
occlusionMap: rock023_2K_AmbientOcclusion
|
|
normalMap: rock023_2K_NormalGL
|
|
baseColorMap: rock023_2K_Color
|
|
normalStrength: 1
|
|
cullMode: Material.NoCulling
|
|
roughness: 1
|
|
objectName: "Stone"
|
|
baseColor: "#ffffff"
|
|
specularAmount: 1
|
|
clearcoatAmount: 0
|
|
metalness: 0
|
|
|
|
Texture {
|
|
id: rock023_2K_Color
|
|
source: "file:content/images/stonetextures/Rock023_2K_Color.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: rock023_2K_NormalGL
|
|
source: "file:content/images/stonetextures/Rock023_2K_NormalGL.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: rock023_2K_AmbientOcclusion
|
|
source: "file:content/images/stonetextures/Rock023_2K_AmbientOcclusion.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: rock023_2K_Roughness
|
|
source: "file:content/images/stonetextures/Rock023_2K_Roughness.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
}
|
|
|
|
PrincipledMaterial {
|
|
id: carbonFiber
|
|
cullMode: Material.NoCulling
|
|
normalMap: fabric004_2K_NormalGL
|
|
objectName: "CarbonFiber"
|
|
metalness: 0
|
|
baseColor: "#050505"
|
|
transmissionFactor: 0
|
|
roughnessChannel: Material.B
|
|
specularAmount: 1
|
|
clearcoatAmount: 1
|
|
roughness: 0
|
|
|
|
Texture {
|
|
id: fabric004_2K_NormalGL
|
|
source: "file:content/images/Fabric004_2K_NormalGL.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 30
|
|
scaleU: 30
|
|
}
|
|
}
|
|
|
|
PrincipledMaterial {
|
|
id: plasticTextured
|
|
normalStrength: 0.06125
|
|
normalMap: noisenormal
|
|
clearcoatAmount: 0
|
|
objectName: "Textured Plastic"
|
|
roughness: 0.3
|
|
specularAmount: 0.93
|
|
transmissionFactor: 0
|
|
metalness: 0
|
|
cullMode: Material.NoCulling
|
|
baseColor: "#ff0000"
|
|
roughnessChannel: Material.B
|
|
|
|
Texture {
|
|
id: noisenormal
|
|
source: "file:content/images/noisenormal.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 10
|
|
scaleU: 10
|
|
}
|
|
}
|
|
|
|
PrincipledMaterial {
|
|
id: fabric
|
|
baseColorMap: fabric031_2K_Color
|
|
normalStrength: 0.5
|
|
occlusionMap: fabric031_2K_Detail
|
|
roughnessMap: fabric031_2K_Roughness
|
|
normalMap: fabric031_2K_NormalGL
|
|
clearcoatAmount: 0
|
|
objectName: "Fabric"
|
|
roughness: 1
|
|
specularAmount: 1
|
|
cullMode: Material.NoCulling
|
|
metalness: 0
|
|
transmissionFactor: 0
|
|
alphaMode: PrincipledMaterial.Opaque
|
|
occlusionAmount: 0.75
|
|
baseColor: "#d7c9b5"
|
|
depthDrawMode: Material.AlwaysDepthDraw
|
|
roughnessChannel: Material.R
|
|
|
|
Texture {
|
|
id: fabric031_2K_NormalGL
|
|
source: "file:content/images/Fabric031_2K_NormalGL.png"
|
|
generateMipmaps: true
|
|
mipFilter: Texture.Linear
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: fabric031_2K_Roughness
|
|
source: "file:content/images/Fabric031_2K_Roughness.png"
|
|
generateMipmaps: true
|
|
mipFilter: Texture.Linear
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: fabric031_2K_Displacement
|
|
source: "file:content/images/Fabric031_2K_Displacement.png"
|
|
generateMipmaps: true
|
|
mipFilter: Texture.Linear
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: fabric031_2K_Detail
|
|
source: "file:content/images/Fabric031_2K_Detail.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: fabric031_2K_Color
|
|
source: "file:content/images/Fabric031_2K_Color.png"
|
|
scaleV: 3
|
|
scaleU: 3
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
}
|
|
}
|
|
|
|
PrincipledMaterial {
|
|
id: leather
|
|
roughnessMap: leather037_2K_Roughness
|
|
normalMap: leather037_2K_NormalGL
|
|
baseColorMap: leather037_2K_Color
|
|
cullMode: Material.NoCulling
|
|
roughness: 1
|
|
roughnessChannel: Material.R
|
|
baseColor: "#ffa983"
|
|
specularAmount: 1
|
|
metalness: 0
|
|
objectName: "Steel"
|
|
clearcoatAmount: 0
|
|
transmissionFactor: 0
|
|
|
|
Texture {
|
|
id: leather037_2K_Color
|
|
source: "file:content/images/leathertextures/Leather037_2K-PNG/Leather037_2K_Color.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: leather037_2K_NormalGL
|
|
source: "file:content/images/leathertextures/Leather037_2K-PNG/Leather037_2K_NormalGL.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
|
|
Texture {
|
|
id: leather037_2K_Roughness
|
|
source: "file:content/images/leathertextures/Leather037_2K-PNG/Leather037_2K_Roughness.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
scaleV: 3
|
|
scaleU: 3
|
|
}
|
|
}
|
|
|
|
CustomMaterial {
|
|
id: waxMat
|
|
fragmentShader: "shaders/SSS.frag"
|
|
destinationBlend: CustomMaterial.NoBlend
|
|
depthDrawMode: Material.OpaqueOnlyDepthDraw
|
|
vertexShader: "shaders/SSS.vert"
|
|
sourceBlend: CustomMaterial.NoBlend
|
|
cullMode: Material.BackFaceCulling
|
|
property color baseColor: "#ffffff"
|
|
property color subsurfaceColor: "#fcdfc8"
|
|
property real specular: 0.5
|
|
property real density: 0
|
|
property real opacity: 1
|
|
property real roughness: 0.25
|
|
property real clearcoat: 1
|
|
property real metalness: 0.0
|
|
property real sssDistortion: 0.0
|
|
property real sssPower: 10
|
|
property real sssScale: 2
|
|
shadingMode: CustomMaterial.Shaded
|
|
objectName: "New Material"
|
|
}
|
|
|
|
CustomMaterial {
|
|
id: floorMat
|
|
fragmentShader: "shaders/floor.frag"
|
|
destinationBlend: CustomMaterial.NoBlend
|
|
depthDrawMode: Material.OpaqueOnlyDepthDraw
|
|
vertexShader: "shaders/floor.vert"
|
|
sourceBlend: CustomMaterial.NoBlend
|
|
cullMode: Material.BackFaceCulling
|
|
property color baseColor: "#ffffff"
|
|
property color subsurfaceColor: "#fcdfc8"
|
|
property real specular: 0
|
|
property real density: 1
|
|
property real opacity: 1
|
|
property real roughness: 0.0
|
|
property real clearcoat: 1
|
|
property real metalness: 0.0
|
|
property real sssDistortion: 0.0
|
|
property real sssPower: 10
|
|
property real sssScale: 2
|
|
property vector2d aoMaskScale: Qt.vector2d(0.9, 0.9)
|
|
property vector2d aoMaskPos: Qt.vector2d(0.01, 0.01)
|
|
shadingMode: CustomMaterial.Shaded
|
|
objectName: "New Material"
|
|
|
|
property color aoMask: "#0000ff"
|
|
property TextureInput aoTexture: aoTexInput
|
|
TextureInput {
|
|
id: aoTexInput
|
|
texture: aoTex
|
|
enabled: true
|
|
}
|
|
|
|
Texture {
|
|
id: aoTex
|
|
source: "file:content/images/AOBake.png"
|
|
mipFilter: Texture.Linear
|
|
generateMipmaps: true
|
|
}
|
|
}
|
|
|
|
CustomMaterial {
|
|
id: bubbleMat1
|
|
objectName: "New Material"
|
|
destinationBlend: CustomMaterial.NoBlend
|
|
property color baseColor: "#ffffff"
|
|
property real stepSize: 0.01
|
|
property real densityFalloff: 0.01
|
|
fragmentShader: "shaders/smokerm.frag"
|
|
shadingMode: CustomMaterial.Shaded
|
|
depthDrawMode: Material.NeverDepthDraw
|
|
vertexShader: "shaders/smokerm.vert"
|
|
sourceBlend: CustomMaterial.NoBlend
|
|
cullMode: Material.BackFaceCulling
|
|
}
|
|
|
|
PrincipledMaterial {
|
|
id: lightMaterial
|
|
emissiveFactor.z: 1
|
|
emissiveFactor.y: 1
|
|
emissiveFactor.x: 1
|
|
objectName: "Default Material"
|
|
cullMode: Material.NoCulling
|
|
}
|
|
|
|
DefaultMaterial {
|
|
id: newMaterial
|
|
objectName: "New Material"
|
|
}
|
|
}
|
|
|
|
LayoutFull {
|
|
id: layoutFull
|
|
openmenuTransition: menutransition_open
|
|
openmenuTransitionPhase: menutransition_open.phase
|
|
}
|
|
|
|
Layout {
|
|
id: layout
|
|
}
|
|
|
|
Material_pop_up {
|
|
id: material_pop_up
|
|
openmenuTransitionPhase: menutransition_open.phase
|
|
closemenuTransition: menutransition_close
|
|
screen: rectangle1
|
|
}
|
|
|
|
Rectangle {
|
|
id: rectangle2
|
|
width: 776
|
|
height: 80
|
|
visible: false
|
|
color: "#ffffff"
|
|
anchors.bottom: parent.bottom
|
|
anchors.bottomMargin: 0
|
|
RoundButton {
|
|
id: flashBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Flash"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
anchors.topMargin: 8
|
|
checkable: true
|
|
anchors.leftMargin: 8
|
|
highlighted: true
|
|
}
|
|
|
|
RoundButton {
|
|
id: shockwaveBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Shockwave"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
anchors.topMargin: 8
|
|
checkable: true
|
|
anchors.leftMargin: 136
|
|
highlighted: true
|
|
}
|
|
|
|
RoundButton {
|
|
id: explosionBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Explosion"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
anchors.topMargin: 8
|
|
checkable: true
|
|
anchors.leftMargin: 264
|
|
highlighted: true
|
|
}
|
|
|
|
RoundButton {
|
|
id: bubblesBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Bubbles"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
anchors.topMargin: 8
|
|
checkable: true
|
|
anchors.leftMargin: 392
|
|
highlighted: true
|
|
}
|
|
|
|
RoundButton {
|
|
id: cloudBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Cloud"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
anchors.topMargin: 8
|
|
checkable: true
|
|
anchors.leftMargin: 520
|
|
highlighted: true
|
|
}
|
|
|
|
RoundButton {
|
|
id: steamBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Steam"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
anchors.leftMargin: 648
|
|
checkable: true
|
|
anchors.topMargin: 8
|
|
highlighted: true
|
|
}
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
}
|
|
|
|
NumberAnimation {
|
|
id: menutransition_open
|
|
target: menutransition_open
|
|
property: "phase"
|
|
easing.bezierCurve: [0.445, 0.05, 0.55, 0.95, 1, 1]
|
|
duration: 1000
|
|
to: 1
|
|
from: 0
|
|
property real phase: 0.0
|
|
}
|
|
|
|
NumberAnimation {
|
|
id: menutransition_close
|
|
target: menutransition_open
|
|
property: "phase"
|
|
easing.bezierCurve: [0.445, 0.05, 0.55, 0.95, 1, 1]
|
|
duration: 1000
|
|
to: 0
|
|
from: 1
|
|
}
|
|
|
|
Rectangle {
|
|
id: rectangle3
|
|
width: 136
|
|
height: 224
|
|
visible: false
|
|
color: "#ffffff"
|
|
anchors.verticalCenter: parent.verticalCenter
|
|
anchors.left: parent.left
|
|
anchors.leftMargin: 0
|
|
RoundButton {
|
|
id: bunnyBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Bunny"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
highlighted: true
|
|
checkable: true
|
|
anchors.topMargin: 8
|
|
anchors.leftMargin: 8
|
|
}
|
|
|
|
RoundButton {
|
|
id: bustBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Bust"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
checked: true
|
|
highlighted: true
|
|
checkable: true
|
|
anchors.topMargin: 80
|
|
anchors.leftMargin: 8
|
|
}
|
|
|
|
RoundButton {
|
|
id: dragonBtn
|
|
width: 120
|
|
height: 64
|
|
radius: checked ? 32 : 8
|
|
text: "Dragon"
|
|
anchors.left: parent.left
|
|
anchors.top: parent.top
|
|
highlighted: true
|
|
checkable: true
|
|
anchors.topMargin: 152
|
|
anchors.leftMargin: 8
|
|
}
|
|
}
|
|
|
|
Timer {
|
|
id: timer
|
|
}
|
|
|
|
NumberAnimation {
|
|
id: sparkrotation
|
|
target: sparkrotation
|
|
property: "phase"
|
|
running: material_pop_up.effectsL.selection === "Sparks"
|
|
loops: -1
|
|
easing.bezierCurve: [0.2, 0.2, 0.8, 0.8, 1, 1]
|
|
duration: 10000
|
|
property real phase: 0
|
|
to: 360
|
|
from: 0
|
|
}
|
|
|
|
NumberAnimation {
|
|
id: lineRotation
|
|
target: lineRotation
|
|
property: "phase"
|
|
running: true
|
|
loops: -1
|
|
easing.bezierCurve: [0.2, 0.2, 0.8, 0.8, 1, 1]
|
|
duration: 10000
|
|
property real phase: 0
|
|
to: 360
|
|
from: 0
|
|
}
|
|
|
|
states: [
|
|
State {
|
|
name: "silverState"
|
|
when: rectangle1.matselText === "Silver"
|
|
PropertyChanges {
|
|
target: rectangle1
|
|
matChoice: silver
|
|
}
|
|
},
|
|
State {
|
|
name: "steelState"
|
|
when: rectangle1.matselText === "Brushed Steel"
|
|
PropertyChanges {
|
|
target: rectangle1
|
|
matChoice: steelBrushed
|
|
}
|
|
},
|
|
State {
|
|
name: "copperState"
|
|
when: rectangle1.matselText === "Copper"
|
|
PropertyChanges {
|
|
target: rectangle1
|
|
matChoice: copper
|
|
}
|
|
},
|
|
State {
|
|
name: "glassState"
|
|
when: rectangle1.matselText === "Wax"
|
|
PropertyChanges {
|
|
target: rectangle1
|
|
matChoice: waxMat
|
|
}
|
|
},
|
|
State {
|
|
name: "woodState"
|
|
when: rectangle1.matselText === "Wood"
|
|
PropertyChanges {
|
|
target: rectangle1
|
|
matChoice: wood
|
|
}
|
|
},
|
|
State {
|
|
name: "stoneState"
|
|
when: rectangle1.matselText === "Stone"
|
|
PropertyChanges {
|
|
target: rectangle1
|
|
matChoice: stone
|
|
}
|
|
},
|
|
State {
|
|
name: "carbonfiberState"
|
|
when: rectangle1.matselText === "Carbon Fiber"
|
|
PropertyChanges {
|
|
target: rectangle1
|
|
matChoice: carbonFiber
|
|
}
|
|
},
|
|
State {
|
|
name: "plasticState"
|
|
when: rectangle1.matselText === "Plastic"
|
|
PropertyChanges {
|
|
target: rectangle1
|
|
matChoice: plasticTextured
|
|
}
|
|
},
|
|
State {
|
|
name: "fabricState"
|
|
when: rectangle1.matselText === "Fabric"
|
|
PropertyChanges {
|
|
target: rectangle1
|
|
matChoice: fabric
|
|
}
|
|
},
|
|
State {
|
|
name: "leatherState"
|
|
when: rectangle1.matselText === "Leather"
|
|
PropertyChanges {
|
|
target: rectangle1
|
|
matChoice: leather
|
|
}
|
|
}
|
|
]
|
|
}
|